declare class Observable { private promise; constructor(promise: Promise); toPromise(): Promise; pipe(callback: (value: T) => S | Promise): Observable; } declare class IsomorphicFetchHttpLibrary implements HttpLibrary { send(request: RequestContext): Observable; } /** * Represents an HTTP method. */ declare enum HttpMethod { GET = "GET", HEAD = "HEAD", POST = "POST", PUT = "PUT", DELETE = "DELETE", CONNECT = "CONNECT", OPTIONS = "OPTIONS", TRACE = "TRACE", PATCH = "PATCH" } /** * Represents an HTTP file which will be transferred from or to a server. */ type HttpFile = Blob & { readonly name: string; }; declare class HttpException extends Error { constructor(msg: string); } /** * Represents the body of an outgoing HTTP request. */ type RequestBody = undefined | string | FormData | URLSearchParams; type Headers = Record; /** * Represents an HTTP request context */ declare class RequestContext { private httpMethod; private headers; private body; private url; private signal; /** * Creates the request context using a http method and request resource url * * @param url url of the requested resource * @param httpMethod http method */ constructor(url: string, httpMethod: HttpMethod); getUrl(): string; /** * Replaces the url set in the constructor with this url. * */ setUrl(url: string): void; /** * Sets the body of the http request either as a string or FormData * * Note that setting a body on a HTTP GET, HEAD, DELETE, CONNECT or TRACE * request is discouraged. * https://httpwg.org/http-core/draft-ietf-httpbis-semantics-latest.html#rfc.section.7.3.1 * * @param body the body of the request */ setBody(body: RequestBody): void; getHttpMethod(): HttpMethod; getHeaders(): Headers; getBody(): RequestBody; setQueryParam(name: string, value: string): void; appendQueryParam(name: string, value: string): void; /** * Sets a cookie with the name and value. NO check for duplicate cookies is performed * */ addCookie(name: string, value: string): void; setHeaderParam(key: string, value: string): void; setSignal(signal: AbortSignal): void; getSignal(): AbortSignal | undefined; } interface ResponseBody { text(): Promise; binary(): Promise; } /** * Helper class to generate a `ResponseBody` from binary data */ declare class SelfDecodingBody implements ResponseBody { private dataSource; constructor(dataSource: Promise); binary(): Promise; text(): Promise; } declare class ResponseContext { httpStatusCode: number; headers: Headers; body: ResponseBody; constructor(httpStatusCode: number, headers: Headers, body: ResponseBody); /** * Parse header value in the form `value; param1="value1"` * * E.g. for Content-Type or Content-Disposition * Parameter names are converted to lower case * The first parameter is returned with the key `""` */ getParsedHeader(headerName: string): Headers; getBodyAsFile(): Promise; /** * Use a heuristic to get a body of unknown data structure. * Return as string if possible, otherwise as binary. */ getBodyAsAny(): Promise; } interface HttpLibrary { send(request: RequestContext): Observable; } interface PromiseHttpLibrary { send(request: RequestContext): Promise; } declare function wrapHttpLibrary(promiseHttpLibrary: PromiseHttpLibrary): HttpLibrary; declare class HttpInfo extends ResponseContext { data: T; constructor(httpStatusCode: number, headers: Headers, body: ResponseBody, data: T); } /** * Interface authentication schemes. */ interface SecurityAuthentication { getName(): string; /** * Applies the authentication scheme to the request context * * @params context the request context which should use this authentication scheme */ applySecurityAuthentication(context: RequestContext): void | Promise; } interface TokenProvider { getToken(): Promise | string; } /** * Applies http authentication to the request context. */ declare class BearerAuthAuthentication implements SecurityAuthentication { private tokenProvider; /** * Configures the http authentication with the required details. * * @param tokenProvider service that can provide the up-to-date token when needed */ constructor(tokenProvider: TokenProvider); getName(): string; applySecurityAuthentication(context: RequestContext): Promise; } type AuthMethods = { "default"?: SecurityAuthentication; "bearerAuth"?: SecurityAuthentication; }; type ApiKeyConfiguration = string; type HttpBasicConfiguration = { "username": string; "password": string; }; type HttpBearerConfiguration = { tokenProvider: TokenProvider; }; type OAuth2Configuration = { accessToken: string; }; type HttpSignatureConfiguration = unknown; type AuthMethodsConfiguration = { "default"?: SecurityAuthentication; "bearerAuth"?: HttpBearerConfiguration; }; /** * Creates the authentication methods from a swagger description. * */ declare function configureAuthMethods(config: AuthMethodsConfiguration | undefined): AuthMethods; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ACState { /** * Unique identifier of the transaction. */ 'transaction_identifier'?: string | null; /** * Generation number of the transaction. */ 'generation_number'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AIContext { /** * User specific text instructions sent to AI system for processing the query. */ 'instructions'?: Array | null; /** * User provided content like text data, csv data as a string message to provide context & potentially improve the quality of the response. */ 'content'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * With API key auth, you send a key-value pair to the API either in the request headers or query parameters. */ declare class APIKey { /** * Enter your key name */ 'key'?: string | null; /** * Enter you key value */ 'value'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * With API key auth, you send a key-value pair to the API either in the request headers or query parameters. */ declare class APIKeyInput { /** * Enter your key name */ 'key'?: string | null; /** * Enter you key value */ 'value'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class OrgInfo { /** * Id. */ 'id': number; /** * Name. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The set of Orgs a token is authorized to operate in, recorded at issuance. Used for token types (e.g. AccessToken) that have no other {@code scope} field of their own. */ declare class AccessTokenScope { /** * Org scope the token is authorized for: SPECIFIC_ORGS or ALL_MEMBER_ORGS. */ 'org_scope': AccessTokenScopeOrgScopeEnum; /** * Orgs the token is authorized for when org_scope is SPECIFIC_ORGS. */ 'org_ids'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AccessTokenScopeOrgScopeEnum = "SPECIFIC_ORGS" | "ALL_MEMBER_ORGS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UserInfo { /** * Id. */ 'id': string; /** * Name. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AccessToken { /** * GUID of the auth token. */ 'id'?: string | null; /** * Bearer auth token. */ 'token': string; 'org': OrgInfo; 'user': UserInfo; /** * Token creation time in milliseconds. */ 'creation_time_in_millis': number; /** * Token expiration time in milliseconds. */ 'expiration_time_in_millis': number; 'scope'?: AccessTokenScope; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Specify that the association is enabled for the metadata object */ declare class ActionConfig { /** * Position of the Custom action on the Metadata object. Earlier naming convention: context. */ 'position'?: string | null; /** * Visibility of the metadata association with custom action. Earlier naming convention: enabled */ 'visibility'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Specify that the association is enabled for the metadata object Default */ declare class ActionConfigInput { /** * Position of the Custom action on the Metadata object. Earlier naming convention: context. */ 'position'?: ActionConfigInputPositionEnum | null; /** * Visibility of the metadata association with custom action. Earlier naming convention: enabled */ 'visibility'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ActionConfigInputPositionEnum = "MENU" | "PRIMARY" | "CONTEXT_MENU"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Specify that the association is enabled for the metadata object Default */ declare class ActionConfigInputCreate { /** * Position of the Custom action on the Metadata object. Earlier naming convention: context. */ 'position'?: ActionConfigInputCreatePositionEnum | null; /** * Visibility of the metadata association with custom action. Earlier naming convention: enabled */ 'visibility'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ActionConfigInputCreatePositionEnum = "MENU" | "PRIMARY" | "CONTEXT_MENU"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * CALLBACK Custom Action Type */ declare class CALLBACK { /** * Reference name of the SDK. By default, the value will be set to action name. */ 'reference'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Basic Auth: Basic authentication involves sending a verified username and password with your request. */ declare class BasicAuth { /** * Password for the basic authentication */ 'password'?: string | null; /** * Username for the basic authentication */ 'username'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Authorization type for the custom action. */ declare class Authentication { 'API_Key'?: APIKey; 'Basic_Auth'?: BasicAuth; /** * Bearer tokens enable requests to authenticate using an access key. */ 'Bearer_Token'?: string | null; /** * No authorization. If your request doesn\'t require authorization. */ 'No_Auth'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ParametersListItem { /** * Key for the url query parameter */ 'key'?: string | null; /** * Value for the url query parameter */ 'value'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * URL Custom Action Type */ declare class URL { 'authentication'?: Authentication; /** * Query parameters for url. */ 'parameters'?: Array | null; /** * Request Url for the Custom action. */ 'url': string; /** * Reference name of the SDK. By default, the value will be set to action name. */ 'reference'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Type and Configuration for Custom Actions */ declare class ActionDetails { 'CALLBACK'?: CALLBACK; 'URL'?: URL; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * CALLBACK Custom Action Type */ declare class CALLBACKInput { /** * Reference name. By default, the value will be set to action name. */ 'reference'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Basic Auth: Basic authentication involves sending a verified username and password with your request. */ declare class BasicAuthInput { /** * Password for the basic authentication */ 'password'?: string | null; /** * Username for the basic authentication */ 'username'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Authorization type for the custom action. */ declare class AuthenticationInput { 'API_Key'?: APIKeyInput; 'Basic_Auth'?: BasicAuthInput; /** * Bearer tokens enable requests to authenticate using an access key. */ 'Bearer_Token'?: string | null; /** * No authorization. If your request doesn\'t require authorization. */ 'No_Auth'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ParametersListItemInput { /** * Key for the url query parameter */ 'key'?: string | null; /** * Value for the url query parameter */ 'value'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * URL Custom Action Type */ declare class URLInput { 'authentication'?: AuthenticationInput; /** * Query parameters for url. */ 'parameters'?: Array | null; /** * Request Url for the Custom action. */ 'url'?: string | null; /** * Reference name. By default the value will be set to action name */ 'reference'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Action details includes `Type` and configuration details of Custom Actions. Either Callback or URL is required. */ declare class ActionDetailsInput { 'CALLBACK'?: CALLBACKInput; 'URL'?: URLInput; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * CALLBACK Custom Action Type */ declare class CALLBACKInputMandatory { /** * Reference name. By default, the value will be set to action name. */ 'reference'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * URL Custom Action Type */ declare class URLInputMandatory { 'authentication'?: AuthenticationInput; /** * Query parameters for url. */ 'parameters'?: Array | null; /** * Request Url for the Custom action. */ 'url': string; /** * Reference name. By default the value will be set to action name */ 'reference'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Action details includes Type and Configuration for Custom Actions, either Callback or URL is required. When both callback and url are provided, callback would be considered */ declare class ActionDetailsInputCreate { 'CALLBACK'?: CALLBACKInputMandatory; 'URL'?: URLInputMandatory; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ActivateUserRequest { /** * Unique ID or name of the user. */ 'user_identifier': string; /** * Auth token for the user. */ 'auth_token': string; /** * New password for the user to access the account. */ 'password': string; /** * Properties of the user. */ 'properties'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Font assignment for a single advanced chart visualization area. */ declare class AdvancedChartFontAssignmentInput { /** * Advanced chart visualization area to assign the font to. Version: 26.7.0.cl or later */ 'visualization_area': AdvancedChartFontAssignmentInputVisualizationAreaEnum; /** * UUID or name of the font to assign to this area. Version: 26.7.0.cl or later */ 'font_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AdvancedChartFontAssignmentInputVisualizationAreaEnum = "ADVANCED_CHART_LABELS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Font assignment for an advanced chart visualization area in the response. */ declare class AdvancedChartVisualizationFontRecord { /** * Advanced chart visualization area. */ 'visualization_area'?: AdvancedChartVisualizationFontRecordVisualizationAreaEnum | null; /** * UUID of the font assigned to this area. Null when the system default font is active. */ 'font_id'?: string | null; /** * Display name of the font assigned to this area. Null when the system default font is active. */ 'font_name'?: string | null; /** * True if explicitly set at this scope, overriding any inherited value. */ 'is_overridden'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AdvancedChartVisualizationFontRecordVisualizationAreaEnum = "ADVANCED_CHART_LABELS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AgentConversation { /** * Unique identifier of the conversation. */ 'conversation_id': string; /** * Unique identifier of the conversation. Version: 26.5.0.cl or later */ 'conversation_identifier': string; /** * Unique identifier of the Spotter Analyst the conversation was started from. Null when the conversation was not started from an analyst. Version: 26.10.0.cl or later */ 'analyst_id'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A data source associated with a conversation, returned as a typed entry. */ declare class DataSourceEntry { /** * Unique identifier of the data source. */ 'id': string; /** * Display name of the data source. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A saved agent conversation item returned in list responses. */ declare class AgentConversationList { /** * Unique identifier of the conversation. */ 'conversation_identifier': string; /** * Display title of the conversation. */ 'conversation_title'?: string | null; /** * ISO 8601 timestamp when the conversation was created. */ 'created_at'?: string | null; /** * ISO 8601 timestamp when the conversation was last updated. */ 'updated_at'?: string | null; /** * Unique identifiers of the data sources associated with the conversation. */ 'data_source_identifiers'?: Array | null; /** * Data sources associated with the conversation, each with an `id` and `name`. */ 'data_source_names'?: Array | null; /** * Whether the current user has pinned this conversation. Pinned conversations are surfaced first in the list. Version: 26.10.0.cl or later */ 'is_pinned'?: boolean | null; /** * Unique identifier of the Spotter Analyst the conversation is associated with. Null when the conversation is not associated with an analyst. Version: 26.10.0.cl or later */ 'analyst_id'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response returned by getConversationList. */ declare class AgentConversationHistoryResponse { /** * List of saved agent conversations for the current user. */ 'conversations'?: Array | null; /** * Whether additional conversations exist beyond this page. `true` when one or more conversations remain after the current page; `false` when the current page is the last. Use `offset` to fetch the next page. */ 'has_more'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Admin instructions configured for the AI agent. */ declare class AgentInstructions { /** * Unique identifier of the record. */ 'id'?: string | null; /** * The admin instructions text for the agent. */ 'instructions': string; /** * ISO timestamp when the instructions were created. */ 'created_at'?: string | null; /** * ISO timestamp when the instructions were last updated. */ 'updated_at'?: string | null; /** * User ID of the admin who last updated the instructions. */ 'last_updated_by'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A data source attached to a Spotter Analyst. */ declare class AnalystSource { /** * Unique identifier of the data source. */ 'id': string; /** * Type of the data source. */ 'type': AnalystSourceTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AnalystSourceTypeEnum = "MODEL" | "ANSWER" | "LIVEBOARD" | "CONVERSATION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A user-defined starter prompt shown on the Analyst landing page. */ declare class AnalystStarterPrompt { /** * Short display label shown in the UI. */ 'label': string; /** * Full prompt text sent to the agent. */ 'text': string; /** * Display order within the list. */ 'order': number; /** * Whether this prompt was AI-generated. */ 'is_ai_generated': boolean; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A Spotter Analyst: a configured agent with a name, description, agent instructions, data sources, MCP connectors, and starter prompts. */ declare class Analyst { /** * Unique identifier of the analyst. */ 'id': string; /** * Display name of the analyst. */ 'name'?: string | null; /** * Description of the analyst. */ 'description'?: string | null; /** * Natural-language instructions that guide the agent\'s behavior for this analyst. */ 'instructions'?: string | null; /** * Data sources the analyst can query. */ 'sources': Array; /** * IDs of MCP connectors linked to this analyst. */ 'mcp_connectors': Array; /** * User-defined starter prompts, in display order. */ 'starter_prompts': Array; /** * Epoch milliseconds of the last update. */ 'updated_time_in_millis'?: any | null; /** * ID of the user who created the analyst. */ 'created_by'?: string | null; /** * ID of the user who last updated the analyst. */ 'updated_by'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response returned after deleting a Spotter Analyst. */ declare class AnalystDeleteResponse { /** * Unique identifier of the deleted analyst. */ 'id': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A data source returned in analyst search results. */ declare class AnalystItemSource { /** * Unique identifier of the data source. */ 'id': string; /** * Type of the data source. */ 'type': AnalystItemSourceTypeEnum; /** * Display name of the data source. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AnalystItemSourceTypeEnum = "MODEL" | "ANSWER" | "LIVEBOARD" | "CONVERSATION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A starter prompt returned in analyst search results. Includes the server-managed fixed prompt (`is_fixed: true`, order 0). */ declare class AnalystItemStarterPrompt { /** * Short display label shown in the UI. */ 'label': string; /** * Full prompt text sent to the agent. */ 'text': string; /** * Display order within the list. */ 'order': number; /** * Whether this is the server-managed fixed prompt. */ 'is_fixed': boolean; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * An MCP connector returned in analyst search results. */ declare class AnalystMcpConnector { /** * Unique identifier of the MCP connector. */ 'id': string; /** * Name of the MCP connector. */ 'name'?: string | null; /** * Icon URL of the MCP connector. */ 'icon_url'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A user reference returned in analyst search results. */ declare class AnalystUser { /** * Unique identifier of the user. */ 'id': string; /** * Username of the user. */ 'name': string; /** * Display name of the user. */ 'display_name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A Spotter Analyst as returned in search results. */ declare class AnalystItem { /** * Unique identifier of the analyst. */ 'id': string; /** * Display name of the analyst. */ 'name'?: string | null; /** * Description of the analyst. */ 'description'?: string | null; /** * Natural-language instructions that guide the agent\'s behavior for this analyst. */ 'instructions'?: string | null; /** * Data sources the analyst can query. */ 'sources': Array; /** * MCP connectors linked to this analyst. */ 'mcp_connectors': Array; /** * Icon identifier. Empty string means the default icon. */ 'icon_id': string; /** * Starter prompts in display order, including the fixed prompt. */ 'starter_prompts': Array; /** * Epoch milliseconds of the last update. */ 'updated_time_in_millis'?: any | null; /** * Epoch milliseconds of the caller\'s last interaction with the analyst. */ 'last_accessed_time_in_millis'?: any | null; 'created_by'?: AnalystUser; 'updated_by'?: AnalystUser; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response returned by analyst search. */ declare class AnalystSearchResponse { /** * Page of analysts matching the request. */ 'analysts': Array; /** * Total number of matches before pagination. */ 'total_size': number; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A data source to attach to a Spotter Analyst. */ declare class AnalystSourceInput { /** * Unique identifier of the data source. */ 'identifier': string; /** * Display name of the data source. */ 'name'?: string | null; /** * Type of the data source. */ 'type': AnalystSourceInputTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AnalystSourceInputTypeEnum = "MODEL" | "ANSWER" | "LIVEBOARD" | "CONVERSATION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AnswerContent { /** * Total available data row count. */ 'available_data_row_count': number; /** * Name of the columns. */ 'column_names': Array; /** * Rows of data set. */ 'data_rows': Array; /** * The starting record number from where the records should be included. */ 'record_offset': number; /** * The number of records that should be included. */ 'record_size': number; /** * Total returned data row count. */ 'returned_data_row_count': number; /** * Sampling ratio (0 to 1). If the query was sampled, it is the ratio of keys returned in the data set to the total number of keys expected in the query. If the value is 1.0, this means that the complete result is returned. */ 'sampling_ratio': number; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response format associated with fetch data api */ declare class AnswerDataResponse { /** * The unique identifier of the object */ 'metadata_id': string; /** * Name of the metadata object */ 'metadata_name': string; /** * Data content of metadata objects */ 'contents': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AnswerDetails { /** * Display title of the answer. */ 'title'?: string | null; /** * Description of the answer. */ 'description'?: string | null; /** * Unique identifier of the session. */ 'session_identifier'?: string | null; /** * Generation number of the answer. */ 'generation_number'?: number | null; /** * Ordered list of TML token strings that make up the answer query. */ 'tokens'?: Array | null; /** * Visualization type for the answer. */ 'visualization_type'?: AnswerDetailsVisualizationTypeEnum | null; /** * List of formulas used in the answer. */ 'formulas'?: Array | null; /** * List of parameters used in the answer. */ 'parameters'?: Array | null; /** * List of sub-queries used in the answer. */ 'sub_queries'?: Array | null; 'ac_state'?: ACState; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AnswerDetailsVisualizationTypeEnum = "Chart" | "CHART" | "Table" | "TABLE" | "Undefined" | "UNDEFINED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AnswerPngOptionsInput { /** * Desired width of the answer image in pixels. Ex. 1920 for Full HD image Version: 26.6.0.cl or later */ 'x_resolution'?: number | null; /** * Desired height of the answer image in pixels. Ex. 1080 for Full HD image Version: 26.6.0.cl or later */ 'y_resolution'?: number | null; /** * The scale of the image in percentage. Ex. 100 for 100% scale. Version: 26.6.0.cl or later */ 'scaling'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Slim reference to a saved answer produced by the agent. Full answer payload (visualization spec, formulas, session info) is not embedded — fetch separately via `loadAnswer` using `answer_id`. */ declare class AnswerResponseItem { /** * Variant discriminator. Always `\"answer\"`. */ 'type': string; /** * Milliseconds since Unix epoch when this item was produced. */ 'timestamp_in_millis': any | null; /** * True when the item represents internal agent reasoning rather than user-facing output. */ 'is_thinking'?: boolean | null; /** * Human-readable label for the agent step producing this item. */ 'step_title'?: string | null; /** * Identifier used to fetch the full answer payload separately. */ 'answer_id': string; /** * Links to the originating tool_call, when applicable. */ 'tool_call_id'?: string | null; /** * Tool that produced the answer, when applicable. */ 'tool_name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * MetadataType InputType used in Author API\'s */ declare class AuthorMetadataTypeInput { /** * Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: AuthorMetadataTypeInputTypeEnum | null; /** * Unique ID or name of the metadata object. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AuthorMetadataTypeInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "CONNECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AssignChangeAuthorRequest { /** * GUID or name of the metadata object. */ 'metadata': Array; /** * GUID or name of the user who you want to assign as the author. */ 'user_identifier': string; /** * GUID or name of the current author. When defined, the metadata objects authored by the specified owner are filtered for the API operation. */ 'current_owner_identifier'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class TagMetadataTypeInput { /** * Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. 1. LIVEBOARD 2. ANSWERS 3. LOGICAL_TABLE for any data object such as table, worksheet or view. 4. LOGICAL_COLUMN for a column of any data object such as tables, worksheets or views. */ 'type'?: TagMetadataTypeInputTypeEnum | null; /** * Unique ID or name of the metadata. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type TagMetadataTypeInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "COLLECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AssignTagRequest { /** * Metadata objects. */ 'metadata': Array; /** * GUID or name of the tag. */ 'tag_identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AssociateMetadataInput { 'action_config'?: ActionConfigInput; /** * Unique ID or name of the metadata. */ 'identifier'?: string | null; /** * Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: AssociateMetadataInputTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AssociateMetadataInputTypeEnum = "VISUALIZATION" | "ANSWER" | "WORKSHEET"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AssociateMetadataInputCreate { 'action_config'?: ActionConfigInputCreate; /** * Unique ID or name of the metadata. */ 'identifier': string; /** * Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: AssociateMetadataInputCreateTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AssociateMetadataInputCreateTypeEnum = "VISUALIZATION" | "ANSWER" | "WORKSHEET"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * An auth settings access token. */ declare class AuthSettingsAccessToken { /** * The plaintext token key value. */ 'key': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Cluster-level authentication preferences. */ declare class AuthClusterPreferences { /** * Whether authentication is enabled or disabled at the cluster level. */ 'auth_status'?: AuthClusterPreferencesAuthStatusEnum | null; /** * Cluster-level access tokens. Absent when no token is configured. */ 'access_tokens'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AuthClusterPreferencesAuthStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for cluster-level auth configuration. */ declare class AuthClusterPreferencesInput { /** * Enable or disable authentication at the cluster level. When enabled, a new token is generated if one does not exist. When disabled, the existing token is revoked. */ 'auth_status'?: AuthClusterPreferencesInputAuthStatusEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AuthClusterPreferencesInputAuthStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Org identifier returned in auth settings search results. */ declare class AuthOrgInfo { /** * Unique identifier of the org. */ 'id': number; /** * Name of the org. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Org-level authentication preferences for a single org. */ declare class AuthOrgPreference { 'org'?: AuthOrgInfo; /** * Whether authentication is enabled or disabled for this org. */ 'auth_status'?: AuthOrgPreferenceAuthStatusEnum | null; /** * Org-level access tokens. Absent when no token is configured or the feature flag is off. */ 'access_tokens'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AuthOrgPreferenceAuthStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for org-level auth configuration. */ declare class AuthOrgPreferenceInput { /** * Unique ID or name of the org to configure. */ 'org_identifier': string; /** * Enable or disable authentication for this org. When enabled, a new token is generated if one does not exist. When disabled, the existing token is revoked. */ 'auth_status'?: AuthOrgPreferenceInputAuthStatusEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type AuthOrgPreferenceInputAuthStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Author of the schedule. */ declare class Author { /** * The unique identifier of the object. */ 'id': string; /** * Name of the object. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class AuthorType { /** * Email id of the committer */ 'email'?: string | null; /** * Username of the committer */ 'username'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * AWS S3 storage configuration details. */ declare class AwsS3Config { /** * Name of the S3 bucket where webhook payloads are stored. */ 'bucket_name': string; /** * AWS region where the S3 bucket is located. */ 'region': string; /** * ARN of the IAM role used for S3 access. */ 'role_arn': string; /** * External ID for secure cross-account role assumption. */ 'external_id'?: string | null; /** * Path prefix for organizing objects within the bucket. */ 'path_prefix'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input type for AWS S3 storage configuration. */ declare class AwsS3ConfigInput { /** * Name of the S3 bucket where webhook payloads will be stored. Example: \"my-webhook-files\" */ 'bucket_name': string; /** * AWS region where the S3 bucket is located. Example: \"us-west-2\" */ 'region': string; /** * ARN of the IAM role to assume for S3 access. Example: \"arn:aws:iam::123456789012:role/WebhookDeliveryRole\" */ 'role_arn': string; /** * External ID for secure cross-account role assumption. Example: \"ts-webhook-a1b2c3d4-7890\" */ 'external_id'?: string | null; /** * Optional path prefix for organizing objects within the bucket. Example: \"webhook-deliveries/\" */ 'path_prefix'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CalendarResponse { /** * Name of the calendar */ 'calendar_name'?: string | null; /** * Name of the connection */ 'connection_name'?: string | null; /** * Type of data warehouse */ 'data_warehouse_type'?: string | null; /** * Last modification time in milliseconds */ 'modification_time_in_millis'?: string | null; /** * Name of the author who created the calendar */ 'author_name'?: string | null; /** * Unique ID of the connection */ 'connection_id'?: string | null; /** * Unique ID of the calendar */ 'calendar_id'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ChangeUserPasswordRequest { /** * Current password of the user. */ 'current_password': string; /** * New password for the user. */ 'new_password': string; /** * GUID or name of the user. */ 'user_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Event metadata for the triggering event associated with a job. */ declare class ChannelHistoryEventInfo { /** * Type of the event. */ 'type': ChannelHistoryEventInfoTypeEnum; /** * Unique ID of the event. */ 'id': string; /** * Name of the event. */ 'name'?: string | null; /** * Unique run ID for this event execution. */ 'run_id'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ChannelHistoryEventInfoTypeEnum = "LIVEBOARD_SCHEDULE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Event specification for channel history search. */ declare class ChannelHistoryEventInput { /** * Type of the event. */ 'type': ChannelHistoryEventInputTypeEnum; /** * Unique ID or name of the event. */ 'identifier'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ChannelHistoryEventInputTypeEnum = "LIVEBOARD_SCHEDULE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A recipient (user, group, or external) for a job execution. */ declare class JobRecipient { /** * Type of the recipient. */ 'type': JobRecipientTypeEnum; /** * Unique ID of the recipient. */ 'id'?: string | null; /** * Name of the recipient. */ 'name'?: string | null; /** * Email of the recipient. */ 'email'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type JobRecipientTypeEnum = "USER" | "EXTERNAL"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A single job execution record for a channel. */ declare class ChannelHistoryJob { /** * Unique identifier for this job. */ 'id': string; /** * Delivery status of this job. */ 'status': ChannelHistoryJobStatusEnum; /** * Timestamp when this job was created (epoch milliseconds). */ 'creation_time_in_millis': number; 'event'?: ChannelHistoryEventInfo; /** * The users, groups or external recipients for this job. */ 'recipients'?: Array | null; /** * Additional delivery details such as HTTP response code or error message. */ 'detail'?: string | null; /** * Number of attempts made. 1 indicates first attempt. */ 'try_count'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ChannelHistoryJobStatusEnum = "PENDING" | "RETRY" | "SUCCESS" | "FAILED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * AWS S3 storage information returned from a validation step. */ declare class ChannelValidationAwsS3Info { /** * Name of the S3 bucket. */ 'bucket_name'?: string | null; /** * Name of the uploaded file. */ 'file_name'?: string | null; /** * Key of the object in S3 storage. */ 'object_key'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * GCP GCS storage information returned from a validation step. */ declare class ChannelValidationGcpGcsInfo { /** * Name of the GCS bucket. */ 'bucket_name'?: string | null; /** * Name of the uploaded file. */ 'file_name'?: string | null; /** * Key (path) of the object within the GCS bucket. */ 'object_key'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Validation detail result for a sub-step. */ declare class ChannelValidationDetail { /** * The validation step that was performed. */ 'validation_step': ChannelValidationDetailValidationStepEnum; /** * Status of this validation step. */ 'status': ChannelValidationDetailStatusEnum; /** * HTTP status code returned by the channel (if applicable). */ 'http_status'?: number | null; /** * Error message from the channel or validation process. */ 'error_message'?: string | null; 'aws_s3_info'?: ChannelValidationAwsS3Info; 'gcp_gcs_info'?: ChannelValidationGcpGcsInfo; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ChannelValidationDetailValidationStepEnum = "HTTP_CONNECTION_CHECK" | "STORAGE_FILE_UPLOAD_CHECK"; type ChannelValidationDetailStatusEnum = "SUCCESS" | "FAILED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Font assignment for a single chart visualization area. */ declare class ChartFontAssignmentInput { /** * Chart visualization area to assign the font to. */ 'visualization_area': ChartFontAssignmentInputVisualizationAreaEnum; /** * UUID or name of the font to assign to this area. */ 'font_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ChartFontAssignmentInputVisualizationAreaEnum = "CHART_X_AXIS_LABELS" | "CHART_X_AXIS_TITLE" | "CHART_Y_AXIS_LABELS" | "CHART_Y_AXIS_TITLE" | "CHART_TOOLTIP" | "CHART_SCATTER_DATA_LABELS" | "CHART_DONUT_DATA_LABELS" | "CHART_LINE_DATA_LABELS" | "CHART_COLUMN_DATA_LABELS" | "CHART_BAR_DATA_LABELS" | "CHART_AREA_DATA_LABELS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Font assignment for a chart visualization area in the response. */ declare class ChartVisualizationFontRecord { /** * Chart visualization area. */ 'visualization_area'?: ChartVisualizationFontRecordVisualizationAreaEnum | null; /** * UUID of the font assigned to this area. Null when the system default font is active. */ 'font_id'?: string | null; /** * Display name of the font assigned to this area. Null when the system default font is active. */ 'font_name'?: string | null; /** * True if explicitly set at this scope, overriding any inherited value. */ 'is_overridden'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ChartVisualizationFontRecordVisualizationAreaEnum = "CHART_X_AXIS_LABELS" | "CHART_X_AXIS_TITLE" | "CHART_Y_AXIS_LABELS" | "CHART_Y_AXIS_TITLE" | "CHART_TOOLTIP" | "CHART_SCATTER_DATA_LABELS" | "CHART_DONUT_DATA_LABELS" | "CHART_LINE_DATA_LABELS" | "CHART_COLUMN_DATA_LABELS" | "CHART_BAR_DATA_LABELS" | "CHART_AREA_DATA_LABELS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Group information for non-embed access. */ declare class GroupInfo { /** * Unique identifier of the group. */ 'id'?: string | null; /** * Name of the group. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Cluster-level non-embed access configuration. */ declare class ClusterNonEmbedAccess { /** * Block full application access for non-embedded usage. */ 'block_full_app_access'?: boolean | null; /** * Groups that have non-embed full app access. Only applicable when orgs feature is disabled. Use org_preferences when org feature is enabled. */ 'groups_with_access'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for cluster-level non-embed access configuration. */ declare class ClusterNonEmbedAccessInput { /** * Block full application access for non-embedded usage. */ 'block_full_app_access'?: boolean | null; /** * Group identifiers that are allowed non-embed full app access. Can only be set when orgs feature is disabled and block_full_app_access is true. */ 'groups_identifiers_with_access'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Sanitized public metadata for a code-execution-generated file. Internal storage identifiers (e.g. Azure blob ids) are deliberately not exposed. */ declare class CodeExecutionFileMetadata { /** * Unique identifier of the code-execution-generated file. Stable across conversation turns. */ 'file_id': string; /** * Human-readable file name. */ 'display_name'?: string | null; /** * File type hint. Either a MIME string (e.g. `text/csv`) or an extension (e.g. `csv`). */ 'file_type'?: string | null; /** * Milliseconds since Unix epoch when the file was created. */ 'created_time_in_millis'?: any | null; /** * True when the file is no longer downloadable (storage expired or evicted). */ 'expired': boolean; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Entity identifier with name. */ declare class CollectionEntityIdentifier { /** * Unique identifier of the entity. */ 'identifier'?: string | null; /** * Name of the entity. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Metadata item in a collection response. */ declare class CollectionMetadataItem { /** * Type of the metadata object. */ 'type'?: string | null; /** * List of identifiers for this metadata type. */ 'identifiers'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response object for a collection. */ declare class Collection { /** * Unique identifier of the collection. */ 'id': string; /** * Name of the collection. */ 'name': string; /** * Custom object ID (obj_id) of the collection, if one is set. Version: 26.9.0.cl or later */ 'obj_id'?: string | null; /** * Description of the collection. */ 'description'?: string | null; /** * Metadata objects in the collection. */ 'metadata'?: Array | null; /** * Creation timestamp in milliseconds. */ 'created_at'?: string | null; /** * Last updated timestamp in milliseconds. */ 'updated_at'?: string | null; /** * Name of the author who created the collection. */ 'author_name'?: string | null; /** * Unique identifier of the author. */ 'author_id'?: string | null; 'org'?: CollectionEntityIdentifier; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GenericInfo { 'id'?: string | null; 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Group of metadata objects identified by type. */ declare class CollectionDeleteTypeIdentifiers { /** * Type of the metadata object (e.g., Collection, Worksheet, Table). */ 'type'?: string | null; /** * List of metadata identifiers belonging to the given type. */ 'identifiers'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response object for delete collection operation. */ declare class CollectionDeleteResponse { /** * List of metadata objects that were successfully deleted. */ 'metadata_deleted'?: Array | null; /** * List of metadata objects that were skipped during deletion. Objects may be skipped due to lack of permissions, dependencies, or other constraints. */ 'metadata_skipped'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input type for metadata to be added to a collection. */ declare class CollectionMetadataInput { /** * Type of metadata object. */ 'type': CollectionMetadataInputTypeEnum; /** * List of unique IDs or names of metadata objects. */ 'identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CollectionMetadataInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "COLLECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response object for search collections operation. */ declare class CollectionSearchResponse { /** * List of collections matching the search criteria. */ 'collections': Array; /** * The starting record number from where the records are included. */ 'record_offset'?: number | null; /** * The number of records returned. */ 'record_size'?: number | null; /** * Indicates if this is the last batch of results. */ 'is_last_batch'?: boolean | null; /** * Total count of records returned. */ 'count'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class Column { /** * Name of the column */ 'name': string; /** * Data type of the column */ 'data_type': string; /** * Determines if the column schema is an aggregate */ 'is_aggregate'?: string | null; /** * Determines if the column schema can be imported */ 'can_import'?: boolean | null; /** * Determines if the table is selected */ 'selected'?: boolean | null; /** * Determines if the table is linked */ 'is_linked_active'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ColumnSecurityRuleColumn { /** * The unique identifier of the column */ 'id': string; /** * The name of the column */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ColumnSecurityRuleGroup { /** * The unique identifier of the group */ 'id': string; /** * The name of the group */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ColumnSecurityRuleSourceTable { /** * The unique identifier of the source table */ 'id': string; /** * The name of the source table */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ColumnSecurityRule { 'column': ColumnSecurityRuleColumn; /** * Array of groups that have access to this column */ 'groups'?: Array | null; 'source_table_details'?: ColumnSecurityRuleSourceTable; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ColumnSecurityRuleGroupOperation { /** * Type of operation to be performed on the groups */ 'operation': ColumnSecurityRuleGroupOperationOperationEnum; /** * Array of group identifiers (name or GUID) on which the operation will be performed */ 'group_identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ColumnSecurityRuleGroupOperationOperationEnum = "ADD" | "REMOVE" | "REPLACE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ColumnSecurityRuleResponse { /** * GUID of the table for which the column security rules are fetched */ 'table_guid'?: string | null; /** * Object ID of the table for which the column security rules are fetched */ 'obj_id'?: string | null; /** * Array containing column security rule objects */ 'column_security_rules'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ColumnSecurityRuleTableInput { /** * Name or GUID of the table */ 'identifier'?: string | null; /** * Object ID of the table */ 'obj_identifier'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ColumnSecurityRuleUpdate { /** * Column identifier (col_id or name) */ 'column_identifier': string; /** * If true, the column will be marked as unprotected and all groups associated with it will be removed */ 'is_unsecured'?: boolean | null; /** * Array of group operation objects that specifies the actions for groups to be associated with a column */ 'group_access'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class MetadataObject { /** * Unique ID or name of the metadata */ 'identifier': string; /** * Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: MetadataObjectTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type MetadataObjectTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "CUSTOM_ACTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CommitBranchRequest { /** * Metadata objects. */ 'metadata': Array; /** * Delete the tml files from version control repo if it does not exist in the ThoughSpot instance */ 'delete_aware'?: boolean | null; /** * Name of the remote branch where object should be pushed Note: If no branch_name is specified, then the commit_branch_name will be considered. */ 'branch_name'?: string; /** * Comment to be added to the commit */ 'comment': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CommitFileType { /** * Name of the file deployed */ 'file_name': string; /** * Indicates the status of deployment for the file */ 'status_code': string; /** * Any error or warning with the deployment */ 'status_message'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CommiterType { /** * Email id of the committer */ 'email'?: string | null; /** * Username of the committer */ 'username'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CommitHistoryResponse { 'committer': CommiterType; 'author': AuthorType; /** * Comments associated with the commit */ 'comment': string; /** * Time at which the changes were committed. */ 'commit_time': string; /** * SHA id associated with the commit */ 'commit_id': string; /** * Branch where changes were committed */ 'branch': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CommitResponse { 'committer'?: CommiterType; 'author'?: AuthorType; /** * Comments associated with the commit */ 'comment'?: string | null; /** * Time at which the changes were committed. */ 'commit_time'?: string | null; /** * SHA id associated with the commit */ 'commit_id'?: string | null; /** * Branch where changes were committed */ 'branch'?: string | null; /** * Files that were pushed as part of this commit */ 'committed_files'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EventChannelConfig { /** * Type of event for which communication channels are configured */ 'event_type': EventChannelConfigEventTypeEnum; /** * Communication channels enabled for this event type. Empty array indicates no channels are enabled. */ 'channels': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type EventChannelConfigEventTypeEnum = "LIVEBOARD_SCHEDULE"; type EventChannelConfigChannelsEnum = "EMAIL" | "WEBHOOK"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class OrgDetails { /** * Unique id of the org */ 'id': string; /** * Name of the org */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class OrgChannelConfigResponse { 'org': OrgDetails; /** * Event-specific communication channel configurations for this org */ 'preferences': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CommunicationChannelPreferencesResponse { /** * Cluster-level default configurations. */ 'cluster_preferences'?: Array | null; /** * Org-specific configurations. */ 'org_preferences'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response containing validation results for communication channel configuration. */ declare class CommunicationChannelValidateResponse { /** * Type of communication channel that was validated. */ 'channel_type': CommunicationChannelValidateResponseChannelTypeEnum; /** * ID of the communication channel (e.g., webhook_id). */ 'channel_id': string; /** * Name of the communication channel (e.g., webhook name). */ 'channel_name'?: string | null; /** * Event type that was validated. */ 'event_type': CommunicationChannelValidateResponseEventTypeEnum; /** * Unique Job Id of the validation. */ 'job_id': string; /** * Overall result of the validation. */ 'result_code': CommunicationChannelValidateResponseResultCodeEnum; /** * Detailed results of various validation sub-steps. */ 'details'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CommunicationChannelValidateResponseChannelTypeEnum = "WEBHOOK"; type CommunicationChannelValidateResponseEventTypeEnum = "LIVEBOARD_SCHEDULE"; type CommunicationChannelValidateResponseResultCodeEnum = "SUCCESS" | "FAILED" | "PARTIAL_SUCCESS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ConfigureAuthSettingsRequest { /** * Type of authentication mechanism to configure. Currently supports TRUSTED_AUTH. */ 'auth_type': ConfigureAuthSettingsRequestAuthTypeEnum; /** * Cluster-level authentication preferences. Omit to leave the existing cluster setting unchanged. */ 'cluster_preferences'?: AuthClusterPreferencesInput; /** * Org-level authentication preferences. Each entry identifies an org and the desired status. Omit to leave existing org settings unchanged. */ 'org_preferences'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ConfigureAuthSettingsRequestAuthTypeEnum = "TRUSTED_AUTH"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EventChannelConfigInput { /** * Type of event for which communication channels are configured */ 'event_type': EventChannelConfigInputEventTypeEnum; /** * Communication channels enabled for this event type. Empty array disables all channels for this event. */ 'channels': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type EventChannelConfigInputEventTypeEnum = "LIVEBOARD_SCHEDULE"; type EventChannelConfigInputChannelsEnum = "EMAIL" | "WEBHOOK"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class OrgChannelConfigInput { /** * Unique identifier or name of the org */ 'org_identifier': string; /** * Operation to perform. REPLACE: Update preferences (default). RESET: Remove org-specific configurations, causing fallback to cluster-level preferences. */ 'operation'?: OrgChannelConfigInputOperationEnum | null; /** * Event-specific configurations. Required for REPLACE operation. */ 'preferences'?: Array | null; /** * Event types to reset. Required for RESET operation. Org-specific configurations for these events will be removed, causing fallback to cluster-level preferences. */ 'reset_events'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type OrgChannelConfigInputOperationEnum = "REPLACE" | "RESET"; type OrgChannelConfigInputResetEventsEnum = "LIVEBOARD_SCHEDULE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ConfigureCommunicationChannelPreferencesRequest { /** * Cluster-level default configurations. */ 'cluster_preferences'?: Array; /** * Org-specific configurations. */ 'org_preferences'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for script-src CSP settings. */ declare class ScriptSrcUrlsInput { /** * Whether script-src customization is enabled. */ 'enabled'?: boolean | null; /** * Allowed URLs for script-src directive. Can only be set if enabled is true. */ 'urls'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for CSP (Content Security Policy) settings. */ declare class CspSettingsInput { /** * Allowed URLs for connect-src directive. */ 'connect_src_urls'?: Array | null; /** * Allowed URLs for font-src directive. */ 'font_src_urls'?: Array | null; /** * Allowed hosts for visual embed (frame-ancestors directive). */ 'visual_embed_hosts'?: Array | null; /** * Allowed URLs for frame-src directive. */ 'iframe_src_urls'?: Array | null; /** * Allowed URLs for img-src directive. */ 'img_src_urls'?: Array | null; 'script_src_urls'?: ScriptSrcUrlsInput; /** * Allowed URLs for style-src directive. */ 'style_src_urls'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for cluster-level security preferences configuration. */ declare class SecuritySettingsClusterPreferencesInput { /** * Support embedded access when third-party cookies are blocked. */ 'enable_partitioned_cookies'?: boolean | null; /** * Allowed origins for CORS. */ 'cors_whitelisted_urls'?: Array | null; 'csp_settings'?: CspSettingsInput; /** * Allowed redirect hosts for SAML login. */ 'saml_redirect_urls'?: Array | null; 'non_embed_access'?: ClusterNonEmbedAccessInput; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for org-level non-embed access configuration. */ declare class OrgNonEmbedAccessInput { /** * Block full application access for non-embedded usage. */ 'block_full_app_access'?: boolean | null; /** * Group identifiers that are allowed non-embed full app access. Can only be set if block_full_app_access is true. */ 'groups_identifiers_with_access'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for org-level security preferences configuration. Note: cross-org operations are not supported currently. */ declare class SecuritySettingsOrgPreferencesInput { /** * Unique identifier or name of the org */ 'org_identifier': string; /** * Allowed origins for CORS for this org. */ 'cors_whitelisted_urls'?: Array | null; 'non_embed_access'?: OrgNonEmbedAccessInput; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ConfigureSecuritySettingsRequest { /** * Cluster-level security preferences. */ 'cluster_preferences'?: SecuritySettingsClusterPreferencesInput; /** * Org-level security preferences for the current org. */ 'org_preferences'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PolicyProcessOptions { 'impersonate_user'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UserPrincipal { 'id'?: string | null; 'name'?: string | null; 'type'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ConnectionConfigurationResponse { 'configuration_identifier'?: string | null; 'name'?: string | null; 'description'?: string | null; 'configuration'?: any | null; 'policy_principals'?: Array | null; 'policy_processes'?: Array | null; 'disabled'?: boolean | null; 'data_warehouse_type'?: ConnectionConfigurationResponseDataWarehouseTypeEnum | null; 'policy_type'?: ConnectionConfigurationResponsePolicyTypeEnum | null; 'same_as_parent'?: boolean | null; 'policy_process_options'?: PolicyProcessOptions; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ConnectionConfigurationResponsePolicyProcessesEnum = "SAGE_INDEXING" | "ROW_COUNT_STATS" | "SCHEDULED_LIVEBOARDS"; type ConnectionConfigurationResponseDataWarehouseTypeEnum = "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"; type ConnectionConfigurationResponsePolicyTypeEnum = "NO_POLICY" | "PRINCIPALS" | "PROCESSES"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ConnectionConfigurationSearchRequest { /** * Unique ID or name of the connection. */ 'connection_identifier': string; /** * Unique ID or name of the configuration. */ 'configuration_identifier'?: string; /** * Type of policy. */ 'policy_type'?: ConnectionConfigurationSearchRequestPolicyTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ConnectionConfigurationSearchRequestPolicyTypeEnum = "NO_POLICY" | "PRINCIPALS" | "PROCESSES"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DataWarehouseObjectInput { /** * Name of the database. */ 'database'?: string | null; /** * Name of the schema within the database. */ 'schema'?: string | null; /** * Name of the table within the schema. */ 'table'?: string | null; /** * Name of the column within the table. */ 'column'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ConnectionInput { /** * Unique ID or name of the connection. */ 'identifier'?: string | null; /** * A pattern to match case-insensitive name of the connection object. User `%` for a wildcard match. */ 'name_pattern'?: string | null; /** * Filter options for databases, schemas, tables and columns. */ 'data_warehouse_objects'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DataSourceContextInput { /** * Unique identifier of the data source. Required when context type is DATA_SOURCE and `data_source_identifiers` is not provided. At least one of `data_source_identifier` or `data_source_identifiers` must be supplied for DATA_SOURCE context; omit only when context type is AUTO_MODE. Version: 26.5.0.cl or later */ 'data_source_identifier'?: string | null; /** * Unique identifiers of data sources for multi-data-source context. Required when context type is DATA_SOURCE and `data_source_identifier` is not provided. Version: 26.5.0.cl or later */ 'data_source_identifiers'?: Array | null; /** * Deprecated. Use `data_source_identifier` instead. Previously required when neither `data_source_identifier` nor `data_source_identifiers` was provided for DATA_SOURCE context. Version: 26.2.0.cl or later */ 'guid'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ContextPayloadV2Input { /** * Type of the context. */ 'type'?: ContextPayloadV2InputTypeEnum | null; 'data_source_context'?: DataSourceContextInput; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ContextPayloadV2InputTypeEnum = "data_source" | "DATA_SOURCE" | "AUTO_MODE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class Conversation { /** * Unique identifier of the conversation. */ 'conversation_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * User-authored text message that begins a conversation turn. Null when the turn is a synthetic liveboard-started first turn. */ declare class UserMessage { /** * Unique identifier of the user message. */ 'message_id': string; /** * Text body of the user query. */ 'content': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * User-authored prompt for a conversation turn: the user\'s text message and any files or connector resources attached to it. */ declare class UserPrompt { 'message'?: UserMessage; /** * Files or connector resources attached to the user message. Empty array when there are no attachments. */ 'attachments'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * One conversational exchange: an optional user prompt (message and attachments), followed by the agent\'s response items for that turn. */ declare class ConversationMessage { /** * Stable identifier for the turn. For liveboard-started synthetic first turns, this is the root node identifier. */ 'message_id': string; /** * Milliseconds since Unix epoch for the turn. */ 'timestamp_in_millis': any | null; 'user_prompt'?: UserPrompt; /** * Agent-side output produced in response to this turn. Empty array for in-progress turns where the agent has not yet produced output. */ 'response_items'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response body of getConversation. `messages` is ordered oldest to newest. `code_execution_files` is a list of sanitized code-execution file metadata entries, keyed in upstream by `file_id`. */ declare class ConversationMessageResponse { /** * Ordered conversation messages. Empty array when the conversation has no messages. */ 'messages'?: Array | null; /** * Sanitized code-execution file metadata for files referenced by this conversation. Empty array when the conversation has no code-execution files. */ 'code_execution_files'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A principal that has been granted access to a shared conversation. */ declare class ConversationPrincipalInfo { /** * Unique identifier of the user or group. */ 'id': string; /** * Whether the principal is an individual user or a group. */ 'type': ConversationPrincipalInfoTypeEnum; /** * Display name of the principal as shown in the UI. */ 'display_name': string; /** * Internal name of the principal. */ 'name': string; /** * Access level granted to the principal. Always `READ_ONLY` for shared conversations. */ 'permission': ConversationPrincipalInfoPermissionEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ConversationPrincipalInfoTypeEnum = "USER" | "USER_GROUP"; type ConversationPrincipalInfoPermissionEnum = "READ_ONLY" | "MODIFY" | "NO_ACCESS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ConversationSettingsInput { /** * Enable contextual change analysis. Default changed from `false` to `true` in 26.2.0.cl. Ignored on versions >= 26.2.0.cl where it is always enabled. Version: 10.4.0.cl or later */ 'enable_contextual_change_analysis'?: boolean | null; /** * Enable natural language to answer generation. Default changed from `false` to `true` in 26.2.0.cl. Ignored on versions >= 26.2.0.cl where it is always enabled. Version: 10.4.0.cl or later */ 'enable_natural_language_answer_generation'?: boolean | null; /** * Enable reasoning. Default changed from `false` to `true` in 26.2.0.cl. Ignored on versions >= 26.2.0.cl where it is always enabled. Version: 10.4.0.cl or later */ 'enable_reasoning'?: boolean | null; /** * Enable save conversation. When `true`, the conversation is persisted and can be retrieved later via conversation history. Version: 26.5.0.cl or later */ 'enable_save_chat'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response returned by getShareInfo. */ declare class ConversationShareStatusResponse { /** * Unique identifier of the source conversation. */ 'conversation_id': string; /** * `true` when the shared view was generated before the last edit to the conversation and does not reflect the latest content. `null` when the conversation has never been shared. */ 'is_shared_content_outdated'?: boolean | null; /** * List of principals that currently have access to this shared conversation. Empty when no principals have been granted access. */ 'principals': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ConvertWorksheetToModelRequest { /** * List of Worksheet IDs. */ 'worksheet_ids'?: Array; /** * List of Worksheet IDs to be excluded. */ 'exclude_worksheet_ids'?: Array; /** * Indicates whether all the worksheet needs to be converted to models. */ 'convert_all'?: boolean | null; /** * Indicates whether the changes should be applied to database. */ 'apply_changes'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CopyObjectRequest { /** * Description of the new object */ 'description'?: string; /** * GUID of metadata object to be copied (answer id or liveboard id) */ 'identifier': string; /** * Type of metadata object */ 'type'?: CopyObjectRequestTypeEnum; /** * Title of the new object */ 'title'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CopyObjectRequestTypeEnum = "LIVEBOARD" | "ANSWER"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateAgentConversationRequest { /** * Context for the conversation. Required unless `analyst_identifier` is provided; do not pass both. */ 'metadata_context'?: ContextPayloadV2Input; /** * Conversation settings. */ 'conversation_settings': ConversationSettingsInput; /** * Unique identifier of the Spotter Analyst to start the conversation from. When provided, the conversation uses the analyst\'s configuration (data sources, agent instructions, and connectors), and `metadata_context` must be omitted. Version: 26.10.0.cl or later */ 'analyst_identifier'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateAnalystRequest { /** * Display name of the analyst. */ 'name': string; /** * Description of the analyst. Maximum 200 characters. */ 'description': string; /** * Natural-language instructions that guide the agent\'s behavior for this analyst. */ 'instructions'?: string; /** * Data sources the analyst can query. At least one is required, and the caller must have view access to every referenced source. */ 'sources': Array; /** * Identifiers of MCP connectors to link to this analyst. */ 'mcp_connector_identifiers'?: Array; /** * Plain-text starter prompts shown on the analyst landing page. Maximum 4, each between 10 and 250 characters; display order follows list position. */ 'starter_prompts'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExternalTableInput { /** * Unique ID or name of the connection. */ 'connection_identifier': string; /** * Name of the database. */ 'database_name'?: string | null; /** * Name of the schema. */ 'schema_name'?: string | null; /** * Name of the table. Table names may be case-sensitive depending on the database system. */ 'table_name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateCalendarRequest { /** * Name of the custom calendar. */ 'name': string; /** * Type of create operation. */ 'creation_method': CreateCalendarRequestCreationMethodEnum; /** * 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`. */ 'table_reference': ExternalTableInput; /** * Start date for the calendar in `MM/dd/yyyy` format. This parameter is mandatory if `creation_method` is set as `FROM_INPUT_PARAMS`. */ 'start_date'?: string; /** * End date for the calendar in `MM/dd/yyyy` format. This parameter is mandatory if `creation_method` is set as `FROM_INPUT_PARAMS`. */ 'end_date'?: string; /** * Type of the calendar. */ 'calendar_type'?: CreateCalendarRequestCalendarTypeEnum; /** * 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). */ 'month_offset'?: CreateCalendarRequestMonthOffsetEnum; /** * Specify the starting day of the week. */ 'start_day_of_week'?: CreateCalendarRequestStartDayOfWeekEnum; /** * Prefix to add before the quarter. */ 'quarter_name_prefix'?: string; /** * Prefix to add before the year. */ 'year_name_prefix'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateCalendarRequestCreationMethodEnum = "FROM_INPUT_PARAMS" | "FROM_EXISTING_TABLE"; type CreateCalendarRequestCalendarTypeEnum = "MONTH_OFFSET" | "FOUR_FOUR_FIVE" | "FOUR_FIVE_FOUR" | "FIVE_FOUR_FOUR"; type CreateCalendarRequestMonthOffsetEnum = "January" | "February" | "March" | "April" | "May" | "June" | "July" | "August" | "September" | "October" | "November" | "December"; type CreateCalendarRequestStartDayOfWeekEnum = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateCollectionRequest { /** * Name of the collection. */ 'name': string; /** * Description of the collection. */ 'description'?: string; /** * Metadata objects to add to the collection. */ 'metadata'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateConfigRequest { /** * URL for connecting to remote repository */ 'repository_url': string; /** * Username to authenticate connection to remote repository */ 'username': string; /** * Access token corresponding to the user to authenticate connection to remote repository */ 'access_token': string; /** * Applicable when Orgs is enabled in the cluster List of Org ids or name. Provide value -1 for cluster level. Example : [\"OrgID1-or-Name1\", \"OrgID2-or-Name2\"] Note: If no value is specified, then the configurations will be returned for all orgs the user has access to Version: 9.5.0.cl or later */ 'org_identifier'?: string; /** * List the remote branches to configure. Example:[development, production] */ 'branch_names'?: Array; /** * Name of the remote branch where objects from this Thoughtspot instance will be versioned. Version: 9.7.0.cl or later */ 'commit_branch_name'?: string; /** * Maintain mapping of guid for the deployment to an instance Version: 9.4.0.cl or later */ 'enable_guid_mapping'?: boolean | null; /** * Name of the branch where the configuration files related to operations between Thoughtspot and version control repo should be maintained. Note: If no branch name is specified, then by default, ts_config_files branch is considered. Ensure this branch exists before configuration. Version: 9.7.0.cl or later */ 'configuration_branch_name'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PolicyProcessOptionsInput { 'impersonate_user'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateConnectionConfigurationRequest { /** * Unique name for the configuration. */ 'name': string; /** * Description of the configuration. */ 'description'?: string; /** * Unique ID or name of the connection. */ 'connection_identifier': string; /** * 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 */ 'same_as_parent'?: boolean | null; /** * 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 */ 'policy_process_options'?: PolicyProcessOptionsInput; /** * Type of authentication used for the connection. */ 'authentication_type'?: CreateConnectionConfigurationRequestAuthenticationTypeEnum; /** * Configuration properties in JSON. */ 'configuration': any | null; /** * Type of policy. */ 'policy_type'?: CreateConnectionConfigurationRequestPolicyTypeEnum; /** * Unique ID or name of the User and User Groups. */ 'policy_principals'?: Array; /** * Action that the query performed on the data warehouse, such as SAGE_INDEXING, ROW_COUNT_STATS, and SCHEDULED_LIVEBOARDS. */ 'policy_processes'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateConnectionConfigurationRequestAuthenticationTypeEnum = "SERVICE_ACCOUNT" | "KEY_PAIR" | "PERSONAL_ACCESS_TOKEN" | "OAUTH_WITH_SERVICE_PRINCIPAL" | "OAUTH_CLIENT_CREDENTIALS" | "OAUTH_CLIENT_CREDENTIALS_WITH_X509"; type CreateConnectionConfigurationRequestPolicyTypeEnum = "NO_POLICY" | "PRINCIPALS" | "PROCESSES"; type CreateConnectionConfigurationRequestPolicyProcessesEnum = "SAGE_INDEXING" | "ROW_COUNT_STATS" | "SCHEDULED_LIVEBOARDS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateConnectionRequest { /** * Unique name for the connection. */ 'name': string; /** * Description of the connection. */ 'description'?: string; /** * Type of the data warehouse. */ 'data_warehouse_type': CreateConnectionRequestDataWarehouseTypeEnum; /** * Connection configuration attributes in JSON format. To create a connection with tables, include table attributes. See the documentation above for sample JSON. */ 'data_warehouse_config': any | null; /** * Validates the connection metadata if tables are included. If you are creating a connection without tables, specify `false`. */ 'validate'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateConnectionRequestDataWarehouseTypeEnum = "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"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateConnectionResponse { /** * ID of the connection created. */ 'id': string; /** * Name of the connection. */ 'name': string; /** * Type of data warehouse. */ 'data_warehouse_type': CreateConnectionResponseDataWarehouseTypeEnum; /** * Details of the connection. */ 'details'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateConnectionResponseDataWarehouseTypeEnum = "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"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateConversationRequest { /** * ID of the metadata object, such as a Worksheet or Model, to use as a data source for the conversation. */ 'metadata_identifier': string; /** * Token string to set the context for the conversation. For example,`[sales],[item type],[state]`. */ 'tokens'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Default Custom action configuration. This includes the custom action\'s visibility across all visualizations and Answers. By default, a custom action is added to all visualizations and Answers. */ declare class DefaultActionConfigInputCreate { /** * Custom action is available on all visualizations. Earlier naming convention: LOCAL/GLOBAL. TRUE signifies GLOBAL for backward compatibility. Default: true */ 'visibility'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateCustomActionRequest { /** * Name of the custom action. The custom action name must be unique. */ 'name': string; /** * Action details includes `Type` and Configuration data for Custom Actions, either Callback or URL is required. */ 'action_details': ActionDetailsInputCreate; /** * Metadata objects to which the custom action needs to be associated. */ 'associate_metadata'?: Array; /** * Default Custom action configuration. This includes if the custom action is available on all visualizations. By default, a custom action is added to all visualizations and Answers. */ 'default_action_config'?: DefaultActionConfigInputCreate; /** * Unique ID or name of the groups that can view and access the custom action. */ 'group_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Email customization configuration properties */ declare class TemplatePropertiesInputCreate { /** * Background color for call-to-action button in hex format */ 'cta_button_bg_color'?: string | null; /** * Text color for call-to-action button in hex format */ 'cta_text_font_color'?: string | null; /** * Primary background color in hex format */ 'primary_bg_color'?: string | null; /** * Home page URL (HTTP/HTTPS only) */ 'home_url'?: string | null; /** * Logo image URL (HTTP/HTTPS only) */ 'logo_url'?: string | null; /** * Font family for email content (e.g., Arial, sans-serif) */ 'font_family'?: string | null; /** * Product name to display */ 'product_name'?: string | null; /** * Footer address text */ 'footer_address'?: string | null; /** * Footer phone number */ 'footer_phone'?: string | null; /** * Replacement value for Liveboard */ 'replacement_value_for_liveboard'?: string | null; /** * Replacement value for Answer */ 'replacement_value_for_answer'?: string | null; /** * Replacement value for SpotIQ */ 'replacement_value_for_spot_iq'?: string | null; /** * Whether to hide footer address */ 'hide_footer_address'?: boolean | null; /** * Whether to hide footer phone number */ 'hide_footer_phone'?: boolean | null; /** * Whether to hide manage notification link */ 'hide_manage_notification'?: boolean | null; /** * Whether to hide mobile app nudge */ 'hide_mobile_app_nudge'?: boolean | null; /** * Whether to hide privacy policy link */ 'hide_privacy_policy'?: boolean | null; /** * Whether to hide product name */ 'hide_product_name'?: boolean | null; /** * Whether to hide ThoughtSpot vocabulary definitions */ 'hide_ts_vocabulary_definitions'?: boolean | null; /** * Whether to hide notification status */ 'hide_notification_status'?: boolean | null; /** * Whether to hide error message */ 'hide_error_message'?: boolean | null; /** * Whether to hide unsubscribe link */ 'hide_unsubscribe_link'?: boolean | null; /** * Whether to hide modify alert */ 'hide_modify_alert'?: boolean | null; /** * Company privacy policy URL (HTTP/HTTPS only) */ 'company_privacy_policy_url'?: string | null; /** * Company website URL (HTTP/HTTPS only) */ 'company_website_url'?: string | null; /** * Contact support url (HTTP/HTTPS only). Version: 26.2.0.cl or later */ 'contact_support_url'?: string | null; /** * Whether to hide contact support url. Version: 26.2.0.cl or later */ 'hide_contact_support_url'?: boolean | null; /** * Whether to hide logo Version: 26.4.0.cl or later */ 'hide_logo_url'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateEmailCustomizationRequest { /** * Email customization configuration as key value pair */ 'template_properties': TemplatePropertiesInputCreate; /** * Unique ID or name of org Version: 10.12.0.cl or later */ 'org_identifier'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class OrgType { 'name'?: string | null; 'id'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateEmailCustomizationResponse { /** * Tenant ID */ 'tenant_id': string; 'org': OrgType; /** * Email customization name. */ 'name': string; /** * Customization configuration for the email */ 'template_properties': any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateOrgRequest { /** * Name of the Org. */ 'name': string; /** * Description of the Org. */ 'description'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateRoleRequest { /** * Unique name of the Role. */ 'name': string; /** * Description of the Role. */ 'description'?: string; /** * Privileges granted to the Role. See [Documentation](https://developers.thoughtspot.com/docs/rbac#_role_categories_and_privileges)for supported roles privileges. Note: AUTHORING is a no-op — always inherited via ALL_GROUP, assigning it has no effect. */ 'privileges'?: Array; /** *
Version: 10.5.0.cl or later
Indicates whether the role is read only. A readonly role can neither be updated nor deleted. */ 'read_only'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateRoleRequestPrivilegesEnum = "USERDATAUPLOADING" | "DATADOWNLOADING" | "DATAMANAGEMENT" | "SHAREWITHALL" | "JOBSCHEDULING" | "A3ANALYSIS" | "BYPASSRLS" | "DISABLE_PINBOARD_CREATION" | "DEVELOPER" | "APPLICATION_ADMINISTRATION" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "SYSTEM_INFO_ADMINISTRATION" | "SYNCMANAGEMENT" | "ORG_ADMINISTRATION" | "ROLE_ADMINISTRATION" | "AUTHENTICATION_ADMINISTRATION" | "BILLING_INFO_ADMINISTRATION" | "CONTROL_TRUSTED_AUTH" | "TAGMANAGEMENT" | "LIVEBOARD_VERIFIER" | "CAN_MANAGE_CUSTOM_CALENDAR" | "CAN_CREATE_OR_EDIT_CONNECTIONS" | "CAN_MANAGE_WORKSHEET_VIEWS_TABLES" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "CAN_CREATE_CATALOG" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_MANAGE_VARIABLES" | "CAN_MODIFY_FOLDERS" | "CAN_VIEW_FOLDERS" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "CAN_SETUP_VERSION_CONTROL" | "PREVIEW_THOUGHTSPOT_SAGE" | "CAN_MANAGE_WEBHOOKS" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Schedule selected cron expression. */ declare class CronExpressionInput { /** * Day of month of the object. */ 'day_of_month': string; /** * Day of Week of the object. */ 'day_of_week': string; /** * Hour of the object. */ 'hour': string; /** * Minute of the object. */ 'minute': string; /** * Month of the object. */ 'month': string; /** * Second of the object. */ 'second': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Configuration of schedule with cron expression */ declare class FrequencyInput { 'cron_expression': CronExpressionInput; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Options to specify details of Liveboard. */ declare class LiveboardOptionsInput { /** * Unique ID or name of visualizations. */ 'visualization_identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PrincipalsListItemInput { /** * Unique ID or name of the user or group. */ 'identifier': string; /** * Principal type. */ 'type': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Recipients of the scheduled job notification. */ declare class RecipientDetailsInput { /** * Emails of the recipients. */ 'emails'?: Array | null; /** * User or groups to be set as recipients of the schedule notifications. */ 'principals'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Options for PDF export. */ declare class SchedulesPdfOptionsInput { /** * Indicates whether to include complete Liveboard. */ 'complete_liveboard'?: boolean | null; /** * Indicates whether to include cover page with the Liveboard title. */ 'include_cover_page'?: boolean | null; /** * Indicates whether to include customized wide logo in the footer if available. */ 'include_custom_logo'?: boolean | null; /** * Indicates whether to include a page with all applied filters. */ 'include_filter_page'?: boolean | null; /** * Indicates whether to include page number in the footer of each page */ 'include_page_number'?: boolean | null; /** * Text to include in the footer of each page. */ 'page_footer_text'?: string | null; /** * Page orientation of the PDF. */ 'page_orientation'?: string | null; /** * Page size. */ 'page_size'?: SchedulesPdfOptionsInputPageSizeEnum | null; /** * Indicates whether to include only first page of the tables. */ 'truncate_table'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SchedulesPdfOptionsInputPageSizeEnum = "A4" | "TAB_BASED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateScheduleRequest { /** * Name of the scheduled job. */ 'name': string; /** * Description of the job. */ 'description': string; /** * Type of the metadata object. */ 'metadata_type': CreateScheduleRequestMetadataTypeEnum; /** * Unique ID or name of the metadata object. */ 'metadata_identifier': string; /** * Export file format. */ 'file_format'?: CreateScheduleRequestFileFormatEnum; /** * Options to specify details of Liveboard. */ 'liveboard_options'?: LiveboardOptionsInput; /** * PDF layout and orientation settings. Applicable only if the `file_format` is specified as `PDF`. */ 'pdf_options'?: SchedulesPdfOptionsInput; /** * Time zone */ 'time_zone': CreateScheduleRequestTimeZoneEnum; /** * Frequency settings for the scheduled job. */ 'frequency'?: FrequencyInput; /** * Recipients of the scheduled job notifications. Add the GUID or name of the ThoughtSpot users or groups as recipients in the `principals` array. If a recipient is not a ThoughtSpot user, specify email address. */ 'recipient_details': RecipientDetailsInput; /** * Personalised view id of the liveboard to be scheduled. */ 'personalised_view_id'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateScheduleRequestMetadataTypeEnum = "LIVEBOARD"; type CreateScheduleRequestFileFormatEnum = "CSV" | "PDF" | "XLSX"; type CreateScheduleRequestTimeZoneEnum = "Africa/Abidjan" | "Africa/Accra" | "Africa/Addis_Ababa" | "Africa/Algiers" | "Africa/Asmara" | "Africa/Asmera" | "Africa/Bamako" | "Africa/Bangui" | "Africa/Banjul" | "Africa/Bissau" | "Africa/Blantyre" | "Africa/Brazzaville" | "Africa/Bujumbura" | "Africa/Cairo" | "Africa/Casablanca" | "Africa/Ceuta" | "Africa/Conakry" | "Africa/Dakar" | "Africa/Dar_es_Salaam" | "Africa/Djibouti" | "Africa/Douala" | "Africa/El_Aaiun" | "Africa/Freetown" | "Africa/Gaborone" | "Africa/Harare" | "Africa/Johannesburg" | "Africa/Juba" | "Africa/Kampala" | "Africa/Khartoum" | "Africa/Kigali" | "Africa/Kinshasa" | "Africa/Lagos" | "Africa/Libreville" | "Africa/Lome" | "Africa/Luanda" | "Africa/Lubumbashi" | "Africa/Lusaka" | "Africa/Malabo" | "Africa/Maputo" | "Africa/Maseru" | "Africa/Mbabane" | "Africa/Mogadishu" | "Africa/Monrovia" | "Africa/Nairobi" | "Africa/Ndjamena" | "Africa/Niamey" | "Africa/Nouakchott" | "Africa/Ouagadougou" | "Africa/Porto-Novo" | "Africa/Sao_Tome" | "Africa/Timbuktu" | "Africa/Tripoli" | "Africa/Tunis" | "Africa/Windhoek" | "America/Adak" | "America/Anchorage" | "America/Anguilla" | "America/Antigua" | "America/Araguaina" | "America/Argentina/Buenos_Aires" | "America/Argentina/Catamarca" | "America/Argentina/ComodRivadavia" | "America/Argentina/Cordoba" | "America/Argentina/Jujuy" | "America/Argentina/La_Rioja" | "America/Argentina/Mendoza" | "America/Argentina/Rio_Gallegos" | "America/Argentina/Salta" | "America/Argentina/San_Juan" | "America/Argentina/San_Luis" | "America/Argentina/Tucuman" | "America/Argentina/Ushuaia" | "America/Aruba" | "America/Asuncion" | "America/Atikokan" | "America/Atka" | "America/Bahia" | "America/Bahia_Banderas" | "America/Barbados" | "America/Belem" | "America/Belize" | "America/Blanc-Sablon" | "America/Boa_Vista" | "America/Bogota" | "America/Boise" | "America/Buenos_Aires" | "America/Cambridge_Bay" | "America/Campo_Grande" | "America/Cancun" | "America/Caracas" | "America/Catamarca" | "America/Cayenne" | "America/Cayman" | "America/Chicago" | "America/Chihuahua" | "America/Coral_Harbour" | "America/Cordoba" | "America/Costa_Rica" | "America/Creston" | "America/Cuiaba" | "America/Curacao" | "America/Danmarkshavn" | "America/Dawson" | "America/Dawson_Creek" | "America/Denver" | "America/Detroit" | "America/Dominica" | "America/Edmonton" | "America/Eirunepe" | "America/El_Salvador" | "America/Ensenada" | "America/Fort_Nelson" | "America/Fort_Wayne" | "America/Fortaleza" | "America/Glace_Bay" | "America/Godthab" | "America/Goose_Bay" | "America/Grand_Turk" | "America/Grenada" | "America/Guadeloupe" | "America/Guatemala" | "America/Guayaquil" | "America/Guyana" | "America/Halifax" | "America/Havana" | "America/Hermosillo" | "America/Indiana/Indianapolis" | "America/Indiana/Knox" | "America/Indiana/Marengo" | "America/Indiana/Petersburg" | "America/Indiana/Tell_City" | "America/Indiana/Vevay" | "America/Indiana/Vincennes" | "America/Indiana/Winamac" | "America/Indianapolis" | "America/Inuvik" | "America/Iqaluit" | "America/Jamaica" | "America/Jujuy" | "America/Juneau" | "America/Kentucky/Louisville" | "America/Kentucky/Monticello" | "America/Knox_IN" | "America/Kralendijk" | "America/La_Paz" | "America/Lima" | "America/Los_Angeles" | "America/Louisville" | "America/Lower_Princes" | "America/Maceio" | "America/Managua" | "America/Manaus" | "America/Marigot" | "America/Martinique" | "America/Matamoros" | "America/Mazatlan" | "America/Mendoza" | "America/Menominee" | "America/Merida" | "America/Metlakatla" | "America/Mexico_City" | "America/Miquelon" | "America/Moncton" | "America/Monterrey" | "America/Montevideo" | "America/Montreal" | "America/Montserrat" | "America/Nassau" | "America/New_York" | "America/Nipigon" | "America/Nome" | "America/Noronha" | "America/North_Dakota/Beulah" | "America/North_Dakota/Center" | "America/North_Dakota/New_Salem" | "America/Nuuk" | "America/Ojinaga" | "America/Panama" | "America/Pangnirtung" | "America/Paramaribo" | "America/Phoenix" | "America/Port-au-Prince" | "America/Port_of_Spain" | "America/Porto_Acre" | "America/Porto_Velho" | "America/Puerto_Rico" | "America/Punta_Arenas" | "America/Rainy_River" | "America/Rankin_Inlet" | "America/Recife" | "America/Regina" | "America/Resolute" | "America/Rio_Branco" | "America/Rosario" | "America/Santa_Isabel" | "America/Santarem" | "America/Santiago" | "America/Santo_Domingo" | "America/Sao_Paulo" | "America/Scoresbysund" | "America/Shiprock" | "America/Sitka" | "America/St_Barthelemy" | "America/St_Johns" | "America/St_Kitts" | "America/St_Lucia" | "America/St_Thomas" | "America/St_Vincent" | "America/Swift_Current" | "America/Tegucigalpa" | "America/Thule" | "America/Thunder_Bay" | "America/Tijuana" | "America/Toronto" | "America/Tortola" | "America/Vancouver" | "America/Virgin" | "America/Whitehorse" | "America/Winnipeg" | "America/Yakutat" | "America/Yellowknife" | "Antarctica/Casey" | "Antarctica/Davis" | "Antarctica/DumontDUrville" | "Antarctica/Macquarie" | "Antarctica/Mawson" | "Antarctica/McMurdo" | "Antarctica/Palmer" | "Antarctica/Rothera" | "Antarctica/South_Pole" | "Antarctica/Syowa" | "Antarctica/Troll" | "Antarctica/Vostok" | "Arctic/Longyearbyen" | "Asia/Aden" | "Asia/Almaty" | "Asia/Amman" | "Asia/Anadyr" | "Asia/Aqtau" | "Asia/Aqtobe" | "Asia/Ashgabat" | "Asia/Ashkhabad" | "Asia/Atyrau" | "Asia/Baghdad" | "Asia/Bahrain" | "Asia/Baku" | "Asia/Bangkok" | "Asia/Barnaul" | "Asia/Beirut" | "Asia/Bishkek" | "Asia/Brunei" | "Asia/Calcutta" | "Asia/Chita" | "Asia/Choibalsan" | "Asia/Chongqing" | "Asia/Chungking" | "Asia/Colombo" | "Asia/Dacca" | "Asia/Damascus" | "Asia/Dhaka" | "Asia/Dili" | "Asia/Dubai" | "Asia/Dushanbe" | "Asia/Famagusta" | "Asia/Gaza" | "Asia/Harbin" | "Asia/Hebron" | "Asia/Ho_Chi_Minh" | "Asia/Hong_Kong" | "Asia/Hovd" | "Asia/Irkutsk" | "Asia/Istanbul" | "Asia/Jakarta" | "Asia/Jayapura" | "Asia/Jerusalem" | "Asia/Kabul" | "Asia/Kamchatka" | "Asia/Karachi" | "Asia/Kashgar" | "Asia/Kathmandu" | "Asia/Katmandu" | "Asia/Khandyga" | "Asia/Kolkata" | "Asia/Krasnoyarsk" | "Asia/Kuala_Lumpur" | "Asia/Kuching" | "Asia/Kuwait" | "Asia/Macao" | "Asia/Macau" | "Asia/Magadan" | "Asia/Makassar" | "Asia/Manila" | "Asia/Muscat" | "Asia/Nicosia" | "Asia/Novokuznetsk" | "Asia/Novosibirsk" | "Asia/Omsk" | "Asia/Oral" | "Asia/Phnom_Penh" | "Asia/Pontianak" | "Asia/Pyongyang" | "Asia/Qatar" | "Asia/Qostanay" | "Asia/Qyzylorda" | "Asia/Rangoon" | "Asia/Riyadh" | "Asia/Saigon" | "Asia/Sakhalin" | "Asia/Samarkand" | "Asia/Seoul" | "Asia/Shanghai" | "Asia/Singapore" | "Asia/Srednekolymsk" | "Asia/Taipei" | "Asia/Tashkent" | "Asia/Tbilisi" | "Asia/Tehran" | "Asia/Tel_Aviv" | "Asia/Thimbu" | "Asia/Thimphu" | "Asia/Tokyo" | "Asia/Tomsk" | "Asia/Ujung_Pandang" | "Asia/Ulaanbaatar" | "Asia/Ulan_Bator" | "Asia/Urumqi" | "Asia/Ust-Nera" | "Asia/Vientiane" | "Asia/Vladivostok" | "Asia/Yakutsk" | "Asia/Yangon" | "Asia/Yekaterinburg" | "Asia/Yerevan" | "Atlantic/Azores" | "Atlantic/Bermuda" | "Atlantic/Canary" | "Atlantic/Cape_Verde" | "Atlantic/Faeroe" | "Atlantic/Faroe" | "Atlantic/Jan_Mayen" | "Atlantic/Madeira" | "Atlantic/Reykjavik" | "Atlantic/South_Georgia" | "Atlantic/St_Helena" | "Atlantic/Stanley" | "Australia/ACT" | "Australia/Adelaide" | "Australia/Brisbane" | "Australia/Broken_Hill" | "Australia/Canberra" | "Australia/Currie" | "Australia/Darwin" | "Australia/Eucla" | "Australia/Hobart" | "Australia/LHI" | "Australia/Lindeman" | "Australia/Lord_Howe" | "Australia/Melbourne" | "Australia/NSW" | "Australia/North" | "Australia/Perth" | "Australia/Queensland" | "Australia/South" | "Australia/Sydney" | "Australia/Tasmania" | "Australia/Victoria" | "Australia/West" | "Australia/Yancowinna" | "Brazil/Acre" | "Brazil/DeNoronha" | "Brazil/East" | "Brazil/West" | "CET" | "CST6CDT" | "Canada/Atlantic" | "Canada/Central" | "Canada/Eastern" | "Canada/Mountain" | "Canada/Newfoundland" | "Canada/Pacific" | "Canada/Saskatchewan" | "Canada/Yukon" | "Chile/Continental" | "Chile/EasterIsland" | "Cuba" | "EET" | "EST5EDT" | "Egypt" | "Eire" | "Etc/GMT" | "Etc/GMT+0" | "Etc/GMT+1" | "Etc/GMT+10" | "Etc/GMT+11" | "Etc/GMT+12" | "Etc/GMT+2" | "Etc/GMT+3" | "Etc/GMT+4" | "Etc/GMT+5" | "Etc/GMT+6" | "Etc/GMT+7" | "Etc/GMT+8" | "Etc/GMT+9" | "Etc/GMT-0" | "Etc/GMT-1" | "Etc/GMT-10" | "Etc/GMT-11" | "Etc/GMT-12" | "Etc/GMT-13" | "Etc/GMT-14" | "Etc/GMT-2" | "Etc/GMT-3" | "Etc/GMT-4" | "Etc/GMT-5" | "Etc/GMT-6" | "Etc/GMT-7" | "Etc/GMT-8" | "Etc/GMT-9" | "Etc/GMT0" | "Etc/Greenwich" | "Etc/UCT" | "Etc/UTC" | "Etc/Universal" | "Etc/Zulu" | "Europe/Amsterdam" | "Europe/Andorra" | "Europe/Astrakhan" | "Europe/Athens" | "Europe/Belfast" | "Europe/Belgrade" | "Europe/Berlin" | "Europe/Bratislava" | "Europe/Brussels" | "Europe/Bucharest" | "Europe/Budapest" | "Europe/Busingen" | "Europe/Chisinau" | "Europe/Copenhagen" | "Europe/Dublin" | "Europe/Gibraltar" | "Europe/Guernsey" | "Europe/Helsinki" | "Europe/Isle_of_Man" | "Europe/Istanbul" | "Europe/Jersey" | "Europe/Kaliningrad" | "Europe/Kiev" | "Europe/Kirov" | "Europe/Kyiv" | "Europe/Lisbon" | "Europe/Ljubljana" | "Europe/London" | "Europe/Luxembourg" | "Europe/Madrid" | "Europe/Malta" | "Europe/Mariehamn" | "Europe/Minsk" | "Europe/Monaco" | "Europe/Moscow" | "Europe/Nicosia" | "Europe/Oslo" | "Europe/Paris" | "Europe/Podgorica" | "Europe/Prague" | "Europe/Riga" | "Europe/Rome" | "Europe/Samara" | "Europe/San_Marino" | "Europe/Sarajevo" | "Europe/Saratov" | "Europe/Simferopol" | "Europe/Skopje" | "Europe/Sofia" | "Europe/Stockholm" | "Europe/Tallinn" | "Europe/Tirane" | "Europe/Tiraspol" | "Europe/Ulyanovsk" | "Europe/Uzhgorod" | "Europe/Vaduz" | "Europe/Vatican" | "Europe/Vienna" | "Europe/Vilnius" | "Europe/Volgograd" | "Europe/Warsaw" | "Europe/Zagreb" | "Europe/Zaporozhye" | "Europe/Zurich" | "GB" | "GB-Eire" | "GMT" | "GMT0" | "Greenwich" | "Hongkong" | "Iceland" | "Indian/Antananarivo" | "Indian/Chagos" | "Indian/Christmas" | "Indian/Cocos" | "Indian/Comoro" | "Indian/Kerguelen" | "Indian/Mahe" | "Indian/Maldives" | "Indian/Mauritius" | "Indian/Mayotte" | "Indian/Reunion" | "Iran" | "Israel" | "Jamaica" | "Japan" | "Kwajalein" | "Libya" | "MET" | "MST7MDT" | "Mexico/BajaNorte" | "Mexico/BajaSur" | "Mexico/General" | "NZ" | "NZ-CHAT" | "Navajo" | "PRC" | "PST8PDT" | "Pacific/Apia" | "Pacific/Auckland" | "Pacific/Bougainville" | "Pacific/Chatham" | "Pacific/Chuuk" | "Pacific/Easter" | "Pacific/Efate" | "Pacific/Enderbury" | "Pacific/Fakaofo" | "Pacific/Fiji" | "Pacific/Funafuti" | "Pacific/Galapagos" | "Pacific/Gambier" | "Pacific/Guadalcanal" | "Pacific/Guam" | "Pacific/Honolulu" | "Pacific/Johnston" | "Pacific/Kanton" | "Pacific/Kiritimati" | "Pacific/Kosrae" | "Pacific/Kwajalein" | "Pacific/Majuro" | "Pacific/Marquesas" | "Pacific/Midway" | "Pacific/Nauru" | "Pacific/Niue" | "Pacific/Norfolk" | "Pacific/Noumea" | "Pacific/Pago_Pago" | "Pacific/Palau" | "Pacific/Pitcairn" | "Pacific/Pohnpei" | "Pacific/Ponape" | "Pacific/Port_Moresby" | "Pacific/Rarotonga" | "Pacific/Saipan" | "Pacific/Samoa" | "Pacific/Tahiti" | "Pacific/Tarawa" | "Pacific/Tongatapu" | "Pacific/Truk" | "Pacific/Wake" | "Pacific/Wallis" | "Pacific/Yap" | "Poland" | "Portugal" | "ROK" | "Singapore" | "SystemV/AST4" | "SystemV/AST4ADT" | "SystemV/CST6" | "SystemV/CST6CDT" | "SystemV/EST5" | "SystemV/EST5EDT" | "SystemV/HST10" | "SystemV/MST7" | "SystemV/MST7MDT" | "SystemV/PST8" | "SystemV/PST8PDT" | "SystemV/YST9" | "SystemV/YST9YDT" | "Turkey" | "UCT" | "US/Alaska" | "US/Aleutian" | "US/Arizona" | "US/Central" | "US/East-Indiana" | "US/Eastern" | "US/Hawaii" | "US/Indiana-Starke" | "US/Michigan" | "US/Mountain" | "US/Pacific" | "US/Samoa" | "UTC" | "Universal" | "W-SU" | "WET" | "Zulu" | "EST" | "HST" | "MST" | "ACT" | "AET" | "AGT" | "ART" | "AST" | "BET" | "BST" | "CAT" | "CNT" | "CST" | "CTT" | "EAT" | "ECT" | "IET" | "IST" | "JST" | "MIT" | "NET" | "NST" | "PLT" | "PNT" | "PRT" | "PST" | "SST" | "VST"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateSemanticIntegrationRequest { /** * ID or name of the CDW connection. */ 'connection_identifier': string; /** * Name of the semantic integration. Must be unique. */ 'name': string; /** * Database name in the CDW. */ 'database_name': string; /** * Schema name in the CDW. */ 'schema_name': string; /** * Semantic view name in the CDW. */ 'semantic_view_name': string; /** * CDW connector type. */ 'type': CreateSemanticIntegrationRequestTypeEnum; /** * Optional description of the semantic integration. */ 'description'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateSemanticIntegrationRequestTypeEnum = "RDBMS_SNOWFLAKE" | "RDBMS_DATABRICKS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateTagRequest { /** * Name of the tag. */ 'name': string; /** * Hex color code to be assigned to the tag. For example, #ff78a9. */ 'color'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateUserGroupRequest { /** * Name of the group. The group name must be unique. */ 'name': string; /** * Display name for the group. */ 'display_name': string; /** * GUID of the Liveboards to assign as default Liveboards to the users in the group. */ 'default_liveboard_identifiers'?: Array; /** * Description of the group */ 'description'?: string; /** * Privileges to assign to the group. Note: AUTHORING is a no-op — always inherited via ALL_GROUP, assigning it has no effect. */ 'privileges'?: Array; /** * GUID or name of the sub groups. A subgroup is a group assigned to a parent group. */ 'sub_group_identifiers'?: Array; /** * Group type. */ 'type'?: CreateUserGroupRequestTypeEnum; /** * GUID or name of the users to assign to the group. */ 'user_identifiers'?: Array; /** * Visibility of the group. To make a group visible to other users and groups, set the visibility to SHAREABLE. */ 'visibility'?: CreateUserGroupRequestVisibilityEnum; /** * Role identifiers of the roles that should be assigned to the group. */ 'role_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateUserGroupRequestPrivilegesEnum = "ADMINISTRATION" | "AUTHORING" | "USERDATAUPLOADING" | "DATADOWNLOADING" | "USERMANAGEMENT" | "DATAMANAGEMENT" | "SHAREWITHALL" | "JOBSCHEDULING" | "A3ANALYSIS" | "EXPERIMENTALFEATUREPRIVILEGE" | "BYPASSRLS" | "RANALYSIS" | "DEVELOPER" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "SYNCMANAGEMENT" | "CAN_CREATE_CATALOG" | "DISABLE_PINBOARD_CREATION" | "LIVEBOARD_VERIFIER" | "PREVIEW_THOUGHTSPOT_SAGE" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "CAN_MODIFY_FOLDERS" | "CAN_MANAGE_VARIABLES" | "CAN_VIEW_FOLDERS" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_SETUP_VERSION_CONTROL" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; type CreateUserGroupRequestTypeEnum = "LOCAL_GROUP" | "LDAP_GROUP" | "TEAM_GROUP" | "TENANT_GROUP"; type CreateUserGroupRequestVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FavoriteMetadataInput { /** * Unique ID or name of the metadata object. */ 'identifier'?: string | null; /** * Type of metadata object. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: FavoriteMetadataInputTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type FavoriteMetadataInputTypeEnum = "LIVEBOARD" | "ANSWER"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateUserRequest { /** * Name of the user. The username string must be unique. */ 'name': string; /** * A unique display name string for the user account, usually their first and last name */ 'display_name': string; /** * Password for the user account. For IAMv2 users, you must set this password if you do not want to trigger an activation email. */ 'password'?: string; /** * Email of the user account */ 'email': string; /** * Type of the account. */ 'account_type'?: CreateUserRequestAccountTypeEnum; /** * Current status of the user account. The `SUSPENDED` user state indicates a transitional state applicable to IAMv2 users only. */ 'account_status'?: CreateUserRequestAccountStatusEnum; /** * List of Org IDs to which the user belongs. */ 'org_identifiers'?: Array; /** * GUIDs or names of the groups to which the newly created user belongs. */ 'group_identifiers'?: Array; /** * Visibility of the users. When set to SHARABLE, the user is visible to other users and groups when they try to share an object. */ 'visibility'?: CreateUserRequestVisibilityEnum; /** * User preference for receiving email notifications when another ThoughtSpot user shares a metadata object such as Answer, Liveboard, or Worksheet. */ 'notify_on_share'?: boolean | null; /** * The user preference for revisiting the onboarding experience. */ 'show_onboarding_experience'?: boolean | null; /** * flag to get the on-boarding experience is completed or not. */ 'onboarding_experience_completed'?: boolean | null; /** * GUID of the Liveboard to set a default Liveboard for the user. ThoughtSpot displays this Liveboard on the Home page when the user logs in. */ 'home_liveboard_identifier'?: string; /** * Metadata objects to add to the user\'s favorites list. */ 'favorite_metadata'?: Array; /** * Locale for the user. When setting this value, do not set use_browser_language to true, otherwise the browser\'s language setting will take precedence and the preferred_locale value will be ignored. */ 'preferred_locale'?: CreateUserRequestPreferredLocaleEnum; /** * Flag to indicate whether to use the browser locale for the user in the UI. When set to true, the preferred_locale value is unset and the browser\'s language setting takes precedence. Version: 26.3.0.cl or later */ 'use_browser_language'?: boolean | null; /** * Properties for the user */ 'extended_properties'?: any | null; /** * Preferences for the user */ 'extended_preferences'?: any | null; /** * Flag to indicate whether a welcome email should be sent to the user. This parameter applies only on clusters where IAMv2 is not enabled. If the flag details are not specified, then it defaults to true. However, a welcome email is sent only when welcome email notifications are enabled on the cluster and the user has a valid email address. */ 'trigger_welcome_email'?: boolean | null; /** * Flag to indicate whether activation email should be sent to the user. Default value for IAMv2 users is set to true. Users must either set this to false, or enter a valid password if they do not want to trigger an activation email. */ 'trigger_activation_email'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateUserRequestAccountTypeEnum = "LOCAL_USER" | "LDAP_USER" | "SAML_USER" | "OIDC_USER" | "REMOTE_USER"; type CreateUserRequestAccountStatusEnum = "ACTIVE" | "INACTIVE" | "EXPIRED" | "LOCKED" | "PENDING" | "SUSPENDED"; type CreateUserRequestVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; type CreateUserRequestPreferredLocaleEnum = "en-CA" | "en-GB" | "en-US" | "de-DE" | "ja-JP" | "zh-CN" | "pt-BR" | "fr-FR" | "fr-CA" | "es-US" | "da-DK" | "es-ES" | "fi-FI" | "sv-SE" | "nb-NO" | "pt-PT" | "nl-NL" | "it-IT" | "ru-RU" | "en-IN" | "de-CH" | "en-NZ" | "es-MX" | "en-AU" | "zh-Hant" | "ko-KR" | "en-DE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateVariableRequest { /** * Type of variable */ 'type': CreateVariableRequestTypeEnum; /** * Name of the variable. This is unique across the cluster. */ 'name': string; /** * If the variable contains sensitive values like passwords */ 'is_sensitive'?: boolean | null; /** * Variable Data Type, only for formula_variable type, leave empty for others Version: 10.15.0.cl or later */ 'data_type'?: CreateVariableRequestDataTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateVariableRequestTypeEnum = "CONNECTION_PROPERTY" | "TABLE_MAPPING" | "CONNECTION_PROPERTY_PER_PRINCIPAL" | "FORMULA_VARIABLE"; type CreateVariableRequestDataTypeEnum = "VARCHAR" | "INT32" | "INT64" | "DOUBLE" | "DATE" | "DATE_TIME"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input type for GCP GCS storage configuration. */ declare class GcpGcsConfigInput { /** * Name of the GCS bucket where webhook payloads will be stored. Example: \"my-webhook-files\" */ 'bucket_name': string; /** * Email of the GCP service account to impersonate for bucket access. The platform\'s service account must be granted roles/iam.serviceAccountTokenCreator on this SA. Example: \"my-sa@my-project.iam.gserviceaccount.com\" */ 'service_account_email': string; /** * Optional path prefix for organizing objects within the bucket. Example: \"webhooks/\" */ 'path_prefix'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input type for storage configuration. */ declare class StorageConfigInput { 'aws_s3_config'?: AwsS3ConfigInput; 'gcp_gcs_config'?: GcpGcsConfigInput; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input type for storage destination configuration. */ declare class StorageDestinationInput { /** * Type of storage destination. Example: \"AWS_S3\" */ 'storage_type': StorageDestinationInputStorageTypeEnum; 'storage_config': StorageConfigInput; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type StorageDestinationInputStorageTypeEnum = "AWS_S3" | "GCP_GCS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookAuthApiKeyInput { /** * The header or query parameter name for the API key. */ 'key': string; /** * The API key value. */ 'value': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookAuthBasicAuthInput { /** * Username for basic authentication. */ 'username': string; /** * Password for basic authentication. */ 'password': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookAuthOAuth2Input { /** * OAuth2 authorization server URL. */ 'authorization_url': string; /** * OAuth2 client identifier. */ 'client_id': string; /** * OAuth2 client secret key. */ 'client_secret': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookAuthenticationInput { 'API_KEY'?: WebhookAuthApiKeyInput; 'BASIC_AUTH'?: WebhookAuthBasicAuthInput; /** * Bearer token authentication configuration. */ 'BEARER_TOKEN'?: string | null; 'OAUTH2'?: WebhookAuthOAuth2Input; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Key-value pair input for additional webhook headers. */ declare class WebhookKeyValuePairInput { /** * Header name. */ 'key': string; /** * Header value. */ 'value': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookSignatureVerificationInput { /** * Signature verification method type. */ 'type': WebhookSignatureVerificationInputTypeEnum; /** * HTTP header where the signature is sent. */ 'header': string; /** * Hash algorithm used for signature verification. */ 'algorithm': WebhookSignatureVerificationInputAlgorithmEnum; /** * Shared secret used for HMAC signature generation. */ 'secret': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type WebhookSignatureVerificationInputTypeEnum = "HMAC_SHA256"; type WebhookSignatureVerificationInputAlgorithmEnum = "SHA256"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class CreateWebhookConfigurationRequest { /** * Name of the webhook configuration. */ 'name': string; /** * Description of the webhook configuration. */ 'description'?: string; /** * The webhook endpoint URL. */ 'url': string; /** * Additional URL parameters as key-value pairs. */ 'url_params'?: any | null; /** * List of events to subscribe to. */ 'events': Array; /** * Authorization configuration for the webhook. */ 'authentication'?: WebhookAuthenticationInput; /** * Configuration for webhook signature verification. */ 'signature_verification'?: WebhookSignatureVerificationInput; /** * Configuration for storage destination. AWS S3 example: {\"storage_type\": \"AWS_S3\", \"storage_config\": {\"aws_s3_config\": {\"bucket_name\": \"my-webhook-files\", \"region\": \"us-west-2\", \"role_arn\": \"arn:aws:iam::123456789012:role/ThoughtSpotDeliveryRole\", \"external_id\": \"ts-webhook-a1b2c3d4-7890\", \"path_prefix\": \"thoughtspot-webhooks/\"}}} GCP GCS example: {\"storage_type\": \"GCP_GCS\", \"storage_config\": {\"gcp_gcs_config\": {\"bucket_name\": \"my-webhook-files\", \"service_account_email\": \"my-sa@my-project.iam.gserviceaccount.com\", \"path_prefix\": \"webhooks/\"}}} Version: 26.3.0.cl or later */ 'storage_destination'?: StorageDestinationInput; /** * Additional headers as an array of key-value pairs. Example: [{\"key\": \"X-Custom-Header\", \"value\": \"custom_value\"}] Version: 26.4.0.cl or later */ 'additional_headers'?: Array; /** * Status of the webhook (ENABLED or DISABLED). Optional — when omitted, status is not stored and will be absent from the response. Version: 26.7.0.cl or later */ 'status'?: CreateWebhookConfigurationRequestStatusEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CreateWebhookConfigurationRequestEventsEnum = "LIVEBOARD_SCHEDULE"; type CreateWebhookConfigurationRequestStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Schedule selected cron expression. */ declare class CronExpression { /** * Day of month of the object. */ 'day_of_month': string; /** * Day of Week of the object. */ 'day_of_week': string; /** * Hour of the object. */ 'hour': string; /** * Minute of the object. */ 'minute': string; /** * Month of the object. */ 'month': string; /** * Second of the object. */ 'second': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Script-src CSP settings. */ declare class ScriptSrcUrls { /** * Whether script-src customization is enabled. */ 'enabled'?: boolean | null; /** * Allowed URLs for script-src directive. Can only be set if enabled is true. */ 'urls'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * CSP (Content Security Policy) settings. */ declare class CspSettings { /** * Allowed URLs for connect-src directive. */ 'connect_src_urls'?: Array | null; /** * Allowed URLs for font-src directive. */ 'font_src_urls'?: Array | null; /** * Allowed hosts for visual embed (frame-ancestors directive). */ 'visual_embed_hosts'?: Array | null; /** * Allowed URLs for frame-src directive. */ 'iframe_src_urls'?: Array | null; /** * Allowed URLs for img-src directive. */ 'img_src_urls'?: Array | null; 'script_src_urls'?: ScriptSrcUrls; /** * Allowed URLs for style-src directive. */ 'style_src_urls'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * MetadataType InputType used in Custom Action API\'s */ declare class CustomActionMetadataTypeInput { /** * Type of metadata object. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: CustomActionMetadataTypeInputTypeEnum | null; /** * Unique ID or name of the metadata object. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type CustomActionMetadataTypeInputTypeEnum = "VISUALIZATION" | "ANSWER" | "WORKSHEET"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EntityHeader { /** * Description of the data source. */ 'description'?: string | null; /** * Display name of the data source. */ 'data_source_name'?: string | null; /** * Unique identifier of the data source. */ 'data_source_identifier'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DataSource { /** * Confidence score for the data source suggestion. */ 'confidence'?: number | null; 'details'?: EntityHeader; /** * LLM reasoning for the data source. */ 'reasoning'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Header metadata extracted from a data source proto. `guid` is the canonical data source identifier and `display_name` is its user-facing name. */ declare class DataSourceHeader { /** * Display name of the data source. */ 'display_name'?: string | null; /** * Canonical unique identifier (GUID) of the data source. */ 'guid'?: string | null; /** * Optional description of the data source. */ 'description'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Aggregate popularity counters for a data source. */ declare class DataSourcePopularity { /** * Total number of Spotter natural-language queries run against this data source. */ 'total_spotter_queries'?: number | null; /** * Total number of saved answers backed by this data source. */ 'total_answers'?: number | null; /** * Total number of impressions across saved answers backed by this data source. */ 'total_answer_impressions'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Per-user usage counters for a data source, scoped to the calling user. */ declare class DataSourceUserUsage { /** * Total Spotter natural-language queries the calling user has run against this data source. */ 'total_spotter_queries'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A data source descriptor returned by the agent\'s `search_datasets` tool. */ declare class DataSourceInfo { /** * Unique identifier of the data source (mirrors `header.guid`). */ 'data_source_identifier'?: string | null; /** * Display name of the data source (mirrors `header.display_name`). */ 'data_source_name'?: string | null; /** * Optional description of the data source. */ 'description'?: string | null; /** * Tool-reported confidence that this data source matches the query, in `[0, 1]`. */ 'confidence'?: number | null; /** * LLM reasoning describing why the data source was selected. */ 'reasoning'?: string | null; 'header'?: DataSourceHeader; /** * Related liveboard visualizations for this data source. Open-ended JSON shape driven by the underlying proto. */ 'related_liveboard_visualizations'?: Array | null; /** * Related saved answers for this data source. Open-ended JSON shape driven by the underlying proto. */ 'related_answers'?: Array | null; /** * Related Spotter queries previously run against this data source. Truncated to a small upper bound by the tool. */ 'related_spotter_queries'?: Array | null; 'popularity'?: DataSourcePopularity; 'user_usage'?: DataSourceUserUsage; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class Table { /** * Name of the table. */ 'name': string; /** * Columns of the table. */ 'columns'?: Array | null; /** * Type of table. Either view or table */ 'type'?: string | null; /** * Description of the table */ 'description'?: string | null; /** * Determines if the table is selected */ 'selected'?: boolean | null; /** * Determines if the table is linked */ 'linked'?: boolean | null; /** * List of relationships for the table */ 'relationships'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SchemaObject { /** * Name of the schema. */ 'name': string; /** * Tables in the schema. */ 'tables'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class Database { /** * Name of the database. */ 'name': string; /** * Schemas of the database. */ 'schemas'?: Array | null; /** * Determines if the object is auto created. */ 'auto_created'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DataWarehouseObjects { /** * Databases of the connection. */ 'databases': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DbtSearchResponse { 'dbt_connection_identifier'?: string | null; 'project_name'?: string | null; 'connection_id'?: string | null; 'connection_name'?: string | null; 'cdw_database'?: string | null; 'import_type'?: string | null; 'author_name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeactivateUserRequest { /** * Unique ID or name of the user. */ 'user_identifier': string; /** * Base url of the cluster. */ 'base_url': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Default Custom action configuration. This includes the custom action\'s visibility across all visualizations and Answers. By default, a custom action is added to all visualizations and Answers. */ declare class DefaultActionConfig { /** * Custom action is available on all visualizations. Earlier , the naming convention: LOCAL/GLOBAL. TRUE signifies GLOBAL for backward compatibility. */ 'visibility'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Default Custom action configuration. This includes the custom action\'s visibility across all visualizations and Answers. By default, a custom action is added to all visualizations and Answers. */ declare class DefaultActionConfigInput { /** * Custom action is available on all visualizations. Earlier naming convention: LOCAL/GLOBAL. TRUE signifies GLOBAL for backward compatibility. */ 'visibility'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Default Custom action configuration. This includes the custom action\'s visibility across all visualizations and Answers. By default, a custom action is added to all visualizations and Answers. */ declare class DefaultActionConfigSearchInput { /** * Custom action is available on all visualizations. Earlier naming convention: LOCAL/GLOBAL. TRUE signifies GLOBAL for backward compatibility. */ 'visibility'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteCollectionRequest { /** * Unique GUIDs of collections to delete. Note: Collection names cannot be used as identifiers since duplicate names are allowed. */ 'collection_identifiers': Array; /** * Flag to delete child objects of the collection that the user has access to. */ 'delete_children'?: boolean | null; /** * Preview deletion without actually deleting. When set to true, returns what would be deleted without performing the actual deletion. */ 'dry_run'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteConfigRequest { /** * Applicable when Orgs is enabled in the cluster Indicator to consider cluster level or org level config. Set it to false to delete configuration from current org. If set to true, then the configuration at cluster level and orgs that inherited the configuration from cluster level will be deleted. Version: 9.5.0.cl or later */ 'cluster_level'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteConnectionConfigurationRequest { /** * Unique ID or name of the configuration. */ 'configuration_identifier': string; /** * Unique ID or name of the connection. */ 'connection_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteConnectionRequest { /** * Unique ID or name of the connection. */ 'connection_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteManualTranslationsRequest { /** * Org scope for the delete. `ORG` (default) targets the calling user\'s current org. `CLUSTER` targets the All-Org context. */ 'scope'?: DeleteManualTranslationsRequestScopeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type DeleteManualTranslationsRequestScopeEnum = "ORG" | "CLUSTER"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * MetadataType InputType used in Delete MetadataType API */ declare class DeleteMetadataTypeInput { /** * Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: DeleteMetadataTypeInputTypeEnum | null; /** * Unique ID or name of the metadata object. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type DeleteMetadataTypeInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "LOGICAL_RELATIONSHIP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteMetadataRequest { /** * Metadata objects. */ 'metadata': Array; /** * Indicates whether to delete disabled metadata objects. */ 'delete_disabled_objects'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteOrgEmailCustomizationRequest { /** * Unique identifier of the organization. */ 'org_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteStyleFontsRequest { /** * Scope of the font library to delete from. CLUSTER deletes from the cluster-level library. ORG deletes from the authenticated user\'s org library. Defaults to ORG if omitted. */ 'scope'?: DeleteStyleFontsRequestScopeEnum; /** * UUIDs or names of the fonts to delete. At least one identifier is required. */ 'font_identifiers': Array; /** * When true, returns affected assignments without applying the deletion. Use this to preview the impact before committing. Defaults to true if omitted. */ 'dry_run'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type DeleteStyleFontsRequestScopeEnum = "CLUSTER" | "ORG"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteVariablesRequest { /** * Unique id(s), name(s), or object id(s) of the variable(s) to delete */ 'identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeleteWebhookConfigurationsRequest { /** * List of webhook identifiers to delete. */ 'webhook_identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeployCommitRequest { /** * Commit_id against which the files should be picked to deploy. Note: If no commit_id is specified, then the head of the branch is considered. */ 'commit_id'?: string; /** * Name of the remote branch where changes should be picked */ 'branch_name': string; /** * Indicates if all files or only modified file at specified commit point should be considered */ 'deploy_type'?: DeployCommitRequestDeployTypeEnum; /** * Define the policy to follow while importing TML in the ThoughtSpot environment. Use “ALL_OR_NONE” to cancel the deployment of all ThoughtSpot objects if at least one of them fails to import. Use “Partial” to import ThoughtSpot objects that validate successfully even if other objects in the same deploy operations fail to import. */ 'deploy_policy'?: DeployCommitRequestDeployPolicyEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type DeployCommitRequestDeployTypeEnum = "FULL" | "DELTA"; type DeployCommitRequestDeployPolicyEnum = "ALL_OR_NONE" | "PARTIAL" | "VALIDATE_ONLY"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class DeployResponse { /** * Name of the file deployed */ 'file_name'?: string | null; /** * Name of the metadata object */ 'metadata_name'?: string | null; /** * Type of the metadata object */ 'metadata_type'?: string | null; /** * Indicates the status of deployment for the file */ 'status_code'?: string | null; /** * Any error or warning with the deployment */ 'status_message'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ErrorResponse { 'error'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EurekaDataSourceSuggestionResponse { /** * List of data sources suggested. */ 'data_sources'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EurekaLLMSuggestedQuery { /** * NL query that can be run using spotter aka natural language search to get an AI generated answer. */ 'query'?: string | null; /** * Unique identifier of the worksheet on which this query can be run on. */ 'worksheetId'?: string | null; /** * Display name of the worksheet on which this query can be run on. */ 'worksheetName'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EurekaLLMDecomposeQueryResponse { /** * List of analytical questions that can be run on their respective worksheet/data sources. */ 'decomposedQueries'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EurekaDecomposeQueryResponse { 'decomposedQueryResponse'?: EurekaLLMDecomposeQueryResponse; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class NLInstructionsInfo { /** * User instructions for natural language processing. */ 'instructions': Array; /** * Scope of the instruction. */ 'scope': NLInstructionsInfoScopeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type NLInstructionsInfoScopeEnum = "GLOBAL"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EurekaGetNLInstructionsResponse { /** * List of NL instructions with their scopes. */ 'nl_instructions_info': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EurekaRelevantQuestion { /** * NL query that can be run using spotter aka natural language search to get an AI generated answer. */ 'query'?: string | null; /** * Unique identifier of the data source on which this query can be run on. */ 'data_source_identifier'?: string | null; /** * Display name of the data source on which this query can be run on. */ 'data_source_name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EurekaGetRelevantQuestionsResponse { /** * List of relevant questions that can be run on their respective data sources. */ 'relevant_questions'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class EurekaSetNLInstructionsResponse { /** * Success status of the operation. */ 'success': boolean; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExcludeMetadataListItemInput { /** * Unique ID or name of the metadata. */ 'identifier': string; /** * Type of metadata. Required if the name of the object is set as identifier. This attribute is optional when the object GUID is specified as identifier. 1. Liveboard 2. Answers 3. LOGICAL_TABLE for any data object such as table, worksheet or view 4. LOGICAL_COLUMN for a column of any data object such as table, worksheet or view 5. CONNECTION for connection objects 6. TAG for tag objects 7. USER for user objects 8. USER_GROUP for group objects 9. LOGICAL_RELATIONSHIP for table or worksheet joins. A join combines from one or several data object by using matching values. 10. INSIGHT_SPEC for SpotIQ objects 11. COLLECTION for collection objects */ 'type': ExcludeMetadataListItemInputTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ExcludeMetadataListItemInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "TAG" | "USER" | "USER_GROUP" | "LOGICAL_RELATIONSHIP" | "INSIGHT_SPEC" | "COLLECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RegionalSettingsInput { /** * ISO code to be appended with currency values. */ 'currency_format'?: RegionalSettingsInputCurrencyFormatEnum | null; /** * Indicates the locale to be used for all formattings. */ 'user_locale'?: RegionalSettingsInputUserLocaleEnum | null; /** * Indicates the locale to be used for number formatting. */ 'number_format_locale'?: RegionalSettingsInputNumberFormatLocaleEnum | null; /** * Indicates the locale to be used for date formatting. */ 'date_format_locale'?: RegionalSettingsInputDateFormatLocaleEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type RegionalSettingsInputCurrencyFormatEnum = "ADP" | "AED" | "AFN" | "ALL" | "AMD" | "ANG" | "AOA" | "ARA" | "ARS" | "ATS" | "AUD" | "AWG" | "AZN" | "BAM" | "BBD" | "BDT" | "BEF" | "BGL" | "BGM" | "BGN" | "BHD" | "BIF" | "BMD" | "BND" | "BOB" | "BOP" | "BOV" | "BRL" | "BSD" | "BTN" | "BUK" | "BWP" | "BYN" | "BZD" | "CAD" | "CDF" | "CHE" | "CHF" | "CHW" | "CLE" | "CLP" | "CNX" | "CNY" | "COP" | "COU" | "CRC" | "CSK" | "CUC" | "CUP" | "CVE" | "CYP" | "CZK" | "DDM" | "DEM" | "DJF" | "DKK" | "DOP" | "DZD" | "ECS" | "ECV" | "EEK" | "EGP" | "ERN" | "ESP" | "ETB" | "EUR" | "FIM" | "FJD" | "FKP" | "FRF" | "GBP" | "GEK" | "GEL" | "GHS" | "GIP" | "GMD" | "GNF" | "GNS" | "GQE" | "GRD" | "GTQ" | "GWE" | "GWP" | "GYD" | "HKD" | "HNL" | "HRD" | "HRK" | "HTG" | "HUF" | "IDR" | "IEP" | "ILP" | "ILS" | "INR" | "IQD" | "IRR" | "ISK" | "ITL" | "JMD" | "JOD" | "JPY" | "KES" | "KGS" | "KHR" | "KMF" | "KPW" | "KRW" | "KWD" | "KYD" | "KZT" | "LAK" | "LBP" | "LKR" | "LRD" | "LSL" | "LTL" | "LTT" | "LUC" | "LUF" | "LUL" | "LVL" | "LVR" | "LYD" | "MAD" | "MAF" | "MCF" | "MDC" | "MDL" | "MGA" | "MGF" | "MKD" | "MLF" | "MMK" | "MNT" | "MOP" | "MRU" | "MTL" | "MTP" | "MUR" | "MVR" | "MWK" | "MXN" | "MXV" | "MYR" | "MZE" | "MZN" | "NAD" | "NGN" | "NIO" | "NLG" | "NOK" | "NPR" | "NZD" | "OMR" | "PAB" | "PEI" | "PEN" | "PGK" | "PHP" | "PKR" | "PLN" | "PTE" | "PYG" | "QAR" | "RHD" | "RON" | "RSD" | "RUB" | "RWF" | "SAR" | "SBD" | "SCR" | "SDG" | "SEK" | "SGD" | "SHP" | "SIT" | "SKK" | "SLL" | "SOS" | "SRD" | "SRG" | "SSP" | "STN" | "SUR" | "SVC" | "SYP" | "SZL" | "THB" | "TJR" | "TJS" | "TMT" | "TND" | "TOP" | "TPE" | "TRY" | "TTD" | "TWD" | "TZS" | "UAH" | "UAK" | "UGX" | "USD" | "UYU" | "UYW" | "UZS" | "VES" | "VND" | "VUV" | "WST" | "XAF" | "XAG" | "XAU" | "XBA" | "XBB" | "XCD" | "XDR" | "XEU" | "XFO" | "XFU" | "XOF" | "XPD" | "XPF" | "XPT" | "XRE" | "XSU" | "XTS" | "XUA" | "XXX" | "YDD" | "YER" | "ZAR" | "ZMW"; type RegionalSettingsInputUserLocaleEnum = "en-CA" | "en-GB" | "en-US" | "de-DE" | "ja-JP" | "zh-CN" | "pt-BR" | "fr-FR" | "fr-CA" | "es-US" | "da-DK" | "es-ES" | "fi-FI" | "sv-SE" | "nb-NO" | "pt-PT" | "nl-NL" | "it-IT" | "ru-RU" | "en-IN" | "de-CH" | "en-NZ" | "es-MX" | "en-AU" | "zh-Hant" | "ko-KR" | "en-DE"; type RegionalSettingsInputNumberFormatLocaleEnum = "en-CA" | "en-GB" | "en-US" | "de-DE" | "ja-JP" | "zh-CN" | "pt-BR" | "fr-FR" | "fr-CA" | "es-US" | "da-DK" | "es-ES" | "fi-FI" | "sv-SE" | "nb-NO" | "pt-PT" | "nl-NL" | "it-IT" | "ru-RU" | "en-IN" | "de-CH" | "en-NZ" | "es-MX" | "en-AU" | "zh-Hant" | "ko-KR" | "en-DE"; type RegionalSettingsInputDateFormatLocaleEnum = "en-CA" | "en-GB" | "en-US" | "de-DE" | "ja-JP" | "zh-CN" | "pt-BR" | "fr-FR" | "fr-CA" | "es-US" | "da-DK" | "es-ES" | "fi-FI" | "sv-SE" | "nb-NO" | "pt-PT" | "nl-NL" | "it-IT" | "ru-RU" | "en-IN" | "de-CH" | "en-NZ" | "es-MX" | "en-AU" | "zh-Hant" | "ko-KR" | "en-DE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExportAnswerReportRequest { /** * Unique ID or name of the metadata object. */ 'metadata_identifier'?: string; /** * Unique ID of the answer session. */ 'session_identifier'?: string; /** * Generation number of the answer session. */ 'generation_number'?: number; /** * Export file format. */ 'file_format'?: ExportAnswerReportRequestFileFormatEnum; /** * JSON string representing runtime filter. { col1:region, op1: EQ, val1: northeast } */ 'runtime_filter'?: any | null; /** * JSON string representing runtime sort. { sortCol1: region, asc1 :true, sortCol2 : date } */ 'runtime_sort'?: any | null; /** * JSON object for setting values of parameters in runtime. */ 'runtime_param_override'?: any | null; /** * Options for specific region specific overrides to support date/number/string/currency formatting. */ 'regional_settings'?: RegionalSettingsInput; /** * Options for PNG export. Version: 26.6.0.cl or later */ 'png_options'?: AnswerPngOptionsInput; /** * GUID or name of the personalised view of the Answer object. Version: 26.6.0.cl or later */ 'personalised_view_identifier'?: string; /** * Type of the answer being exported. Version: 26.6.0.cl or later */ 'type'?: ExportAnswerReportRequestTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ExportAnswerReportRequestFileFormatEnum = "CSV" | "PDF" | "XLSX" | "PNG"; type ExportAnswerReportRequestTypeEnum = "SAVED" | "PINNED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PdfOptionsInput { /** * Size of PDF page. `A4` generates a paginated A4 PDF. `CONTINUOUS` generates a continuous PDF that matches the Liveboard layout. Each Liveboard tab has its own page of variable length. Defaults to `A4` if not specified. Version: 26.5.0.cl or later */ 'page_size'?: PdfOptionsInputPageSizeEnum | null; /** * Zoom level percentage for the PDF. Only applicable when `page_size` is `CONTINUOUS`. Acceptable values are integers in the range [45, 175]. Defaults to 100 if not specified. Version: 26.5.0.cl or later */ 'zoom_level'?: number | null; /** * Indicates whether to include the cover page with the Liveboard title. */ 'include_cover_page'?: boolean | null; /** * Indicates whether to include customized wide logo in the footer if available. */ 'include_custom_logo'?: boolean | null; /** * Indicates whether to include a page with all applied filters. For `CONTINUOUS` page_size, this parameter indicates whether to include the filter header. */ 'include_filter_page'?: boolean | null; /** * Indicates whether to include page number in the footer of each page. */ 'include_page_number'?: boolean | null; /** * Page orientation of the PDF. */ 'page_orientation'?: PdfOptionsInputPageOrientationEnum | null; /** * Indicates whether to include only the first page of the tables. */ 'truncate_table'?: boolean | null; /** * Text to include in the footer of each page. */ 'page_footer_text'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type PdfOptionsInputPageSizeEnum = "A4" | "CONTINUOUS"; type PdfOptionsInputPageOrientationEnum = "PORTRAIT" | "LANDSCAPE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PngOptionsInput { /** * Indicates whether to include the cover page with the Liveboard title. */ 'include_cover_page'?: boolean | null; /** * Indicates whether to include a page with all applied filters. */ 'include_filter_page'?: boolean | null; /** * Indicates personalised view of the Liveboard in case of png */ 'personalised_view_id'?: string | null; /** * Desired width of the Liveboard image in pixels. Ex. 1920 for Full HD image Version: 10.9.0.cl or later */ 'image_resolution'?: number | null; /** * The scale of the image in percentage. Ex. 100 for 100% scale. Version: 10.9.0.cl or later */ 'image_scale'?: number | null; /** * Indicates whether to include the header of the liveboard. Version: 10.9.0.cl or later */ 'include_header'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExportLiveboardReportRequest { /** * GUID or name of the Liveboard object. */ 'metadata_identifier': string; /** * GUID or name of the tab of the Liveboard object. Version: 10.9.0.cl or later */ 'tab_identifiers'?: Array; /** * GUID or name of the personalised view of the Liveboard object. Version: 10.9.0.cl or later */ 'personalised_view_identifier'?: string; /** * GUID or name of visualizations on the Liveboard. If this parameter is not defined, the API returns a report with all visualizations saved on a Liveboard. */ 'visualization_identifiers'?: Array; /** * Transient content of the Liveboard. */ 'transient_content'?: string; /** * Export file format. */ 'file_format'?: ExportLiveboardReportRequestFileFormatEnum; /** * JSON object with representing filter condition to apply filters at runtime. For example, {\"col1\": \"region\", \"op1\": \"EQ\", \"val1\": \"northeast\" }. You can add multiple keys by incrementing the number at the end, for example, col2, op2, val2. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_filters). */ 'runtime_filter'?: any | null; /** * Applied to the liveboard and overrides any filters already applied on the same columns in liveboard. Following example illustrate different kinds of filters: { \"override_filters\": [ { \"column_name\": \"Color\", \"generic_filter\": { \"op\": \"IN\", \"values\": [ \"almond\", \"turquoise\" ] }, \"negate\": false }, { \"column_name\": \"Commit Date\", \"date_filter\": { \"datePeriod\": \"HOUR\", \"number\": 3, \"type\": \"LAST_N_PERIOD\", \"op\": \"EQ\" } }, { \"column_name\": \"Sales\", \"generic_filter\": { \"op\": \"BW_INC\", \"values\": [ \"100000\", \"70000\" ] }, \"negate\": true } ] } */ 'override_filters'?: any | null; /** * JSON string representing runtime sort. For example, {\"sortCol1\": \"region\", \"asc1\" : true}. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_sort). */ 'runtime_sort'?: any | null; /** * Options for PDF export. */ 'pdf_options'?: PdfOptionsInput; /** * Options for PNG export. */ 'png_options'?: PngOptionsInput; /** * JSON object for setting values of parameters at runtime. For example, {\"param1\": \"Double List Param\", \"paramVal1\": 0.5}. You can add multiple keys by incrementing the number at the end, for example, param2, paramVal2. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_parameters). */ 'runtime_param_override'?: any | null; /** * Options for specific region specific overrides to support date/number/string/currency formatting. */ 'regional_settings'?: RegionalSettingsInput; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ExportLiveboardReportRequestFileFormatEnum = "PDF" | "PNG" | "CSV" | "XLSX"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExportManualTranslationsRequest { /** * Org scope for the export. `ORG` (default) targets the calling user\'s current org. `CLUSTER` targets the All-Org context. */ 'scope'?: ExportManualTranslationsRequestScopeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ExportManualTranslationsRequestScopeEnum = "ORG" | "CLUSTER"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A single typed scope group identifying objects whose memory entries should be exported. One group binds a single `type` to a set of `identifiers`; pass one or more data-model identifiers in a group to scope the memory export to multiple data-models in one call. */ declare class MemorySources { /** * Source object type for this group. Must be `DATA_MODEL`. */ 'type': MemorySourcesTypeEnum; /** * Data-models to export memory for. Each entry may be a GUID or a human-readable obj_id; obj_ids are resolved server-side. */ 'identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type MemorySourcesTypeEnum = "DATA_MODEL"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExportMemoryRequest { /** * List of typed scope groups selecting which data-models to export memory for. Supply `DATA_MODEL` group to scope the export to specific data-models. */ 'sources': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response from exportMemory. Contains the serialized payload ready for local editing and re-submission to importMemory. */ declare class ExportMemoryResponse { /** * Serialized memory payload (YAML). This is the shape importMemory consumes. */ 'content'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExportMetadataTMLBatchedRequest { /** * Type of metadata object to export, can be one of USER | ROLE | USER_GROUP */ 'metadata_type': ExportMetadataTMLBatchedRequestMetadataTypeEnum; /** * Indicates the position within the complete set from where the API should begin returning objects. */ 'batch_offset'?: number; /** * Determines the number of objects or items to be retrieved in a single request. */ 'batch_size'?: number; /** * TML EDOC content format. */ 'edoc_format'?: ExportMetadataTMLBatchedRequestEdocFormatEnum; /** * Indicates whether to export dependent metadata objects of specified metadata objects. */ 'export_dependent'?: boolean | null; /** * Indicates whether to export is happening from all orgs context. */ 'all_orgs_override'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ExportMetadataTMLBatchedRequestMetadataTypeEnum = "USER" | "USER_GROUP" | "ROLE"; type ExportMetadataTMLBatchedRequestEdocFormatEnum = "JSON" | "YAML"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * MetadataType InputType used in Export MetadataType API */ declare class ExportMetadataTypeInput { /** * Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: ExportMetadataTypeInputTypeEnum | null; /** * Unique ID or name of the metadata object. Not required if the metadata type is ANSWER when session_id and generation_number is set. */ 'identifier'?: string | null; /** * Unique ID of the Answer session. Required if the metadata type is ANSWER and identifier is not set. */ 'session_identifier'?: string | null; /** * Generation Number of the Answer session. Required if the metadata type is ANSWER and identifier is not set. */ 'generation_number'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ExportMetadataTypeInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "CONNECTION" | "CUSTOM_ACTION" | "USER" | "USER_GROUP" | "ROLE" | "FEEDBACK" | "COLLECTION" | "TEMPLATE_VARIABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Flags to specify additional options for export. This will only be active when UserDefinedId in TML is enabled. */ declare class ExportOptions { /** * Boolean Flag to export Object ID of referenced object. This flag will work only after the Object ID feature has been enabled. Please contact support to enable the feature. */ 'include_obj_id_ref'?: boolean | null; /** * Boolean flag to export guid of the object. This flag will work only after the Object ID feature has been enabled. Please contact support to enable the feature. */ 'include_guid'?: boolean | null; /** * Boolean flag to export Object ID of the object. This flag will work only after the Object ID feature has been enabled. Please contact support to enable the feature. */ 'include_obj_id'?: boolean | null; /** * Boolean flag indicating whether to export associated feedbacks of the object. This will only be respected when the object can have feedbacks. Version: 10.7.0.cl or later */ 'export_with_associated_feedbacks'?: boolean | null; /** * Boolean flag indicating whether to export column security rules of the object. This will only be respected when the object can have column security rules and export_associated is true. Version: 10.12.0.cl or later */ 'export_column_security_rules'?: boolean | null; /** * Boolean flag indicating whether to export column aliases of the model. This will only be respected when the object can have column aliases. Version: 10.13.0.cl or later */ 'export_with_column_aliases'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExportMetadataTMLRequest { /** * Metadata objects. */ 'metadata': Array; /** * Indicates whether to export associated metadata objects of specified metadata objects. */ 'export_associated'?: boolean | null; /** * Adds FQNs of the referenced objects. For example, if you are exporting a Liveboard and its associated objects, the API returns the Liveboard TML data with the FQNs of the referenced worksheet. If the exported TML data includes FQNs, you don\'t need to manually add FQNs of the referenced objects during TML import. */ 'export_fqn'?: boolean | null; /** * TML EDOC content format. **Note: exporting in YAML format currently requires manual formatting of the output. For more details on the workaround, please click [here](https://developers.thoughtspot.com/docs/known-issues#_version_9_12_0_cl)** */ 'edoc_format'?: ExportMetadataTMLRequestEdocFormatEnum; /** * Indicates whether to export worksheet TML in DEFAULT or V1 or V2 version. */ 'export_schema_version'?: ExportMetadataTMLRequestExportSchemaVersionEnum; /** * Indicates whether to export table while exporting connection. */ 'export_dependent'?: boolean | null; /** * Indicates whether to export connection as dependent while exporting table/worksheet/answer/liveboard. This will only be active when export_associated is true. */ 'export_connection_as_dependent'?: boolean | null; /** * Indicates whether to export is happening from all orgs context. */ 'all_orgs_override'?: boolean | null; /** * Flags to specify additional options for export. Version: 10.6.0.cl or later */ 'export_options'?: ExportOptions; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ExportMetadataTMLRequestEdocFormatEnum = "JSON" | "YAML"; type ExportMetadataTMLRequestExportSchemaVersionEnum = "DEFAULT" | "V1" | "V2"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ExportStyleLogosRequest { /** * Scope of the logos to export. CLUSTER exports cluster-level logos. ORG exports logos for the authenticated user\'s org, falling back to cluster or defaults if no custom logo is set. Defaults to ORG if omitted. */ 'scope'?: ExportStyleLogosRequestScopeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ExportStyleLogosRequestScopeEnum = "CLUSTER" | "ORG"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FavoriteMetadataItem { /** * Unique ID of the metadata object. */ 'id': string; /** * name of the metadata object. */ 'name': string; /** * Type of metadata object. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type': FavoriteMetadataItemTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type FavoriteMetadataItemTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "TAG" | "USER" | "USER_GROUP" | "LOGICAL_RELATIONSHIP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Favorite object options. */ declare class FavoriteObjectOptionsInput { /** * Includes objects marked as favorite for the specified users. */ 'include'?: boolean | null; /** * Unique ID or name of the users. If not specified, the favorite objects of current logged in user are returned. */ 'user_identifiers'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Lightweight Org identifier and display name, as returned in feature assignment responses. The field names org_id / org_name intentionally deviate from the bare id / name used by the shared Org type: they are the literal wire keys emitted by the Callosum backend, so they are load-bearing for Prism\'s response field mapping and cannot be renamed without a backend change. */ declare class FeatureOrgInfo { /** * Numeric ID of the Org. */ 'org_id': number; /** * Display name of the Org. */ 'org_name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response returned when a feature\'s Org assignments are updated. */ declare class FeatureAssignmentResponse { /** * Underlying unique feature ID. The dotted-path format (for example, `orion.embraceConfig.doIndexing`) is internal and subject to change without notice; use `feature_name` as the stable display identifier where possible. */ 'feature_id': string; /** * User-friendly feature name. Present when the feature declares one. */ 'feature_name'?: string | null; /** * Updated set of Orgs assigned to the feature. */ 'assigned_orgs': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Detail for a single feature. Fields are populated according to the scope of the search: cluster-admin (CLUSTER) responses populate assigned_orgs, is_org_aware, and (for non-org-aware features) feature_value; org-admin (ORG) responses populate element_type, element_config, and element_value. */ declare class FeatureDetail { /** * Underlying unique feature ID. The dotted-path format (for example, `orion.embraceConfig.doIndexing`) is internal and subject to change without notice; use `feature_name` as the stable display identifier where possible. */ 'feature_id': string; /** * User-friendly feature name. Present when the feature declares one. */ 'feature_name'?: string | null; /** * Orgs currently assigned to this feature. Populated in the cluster-admin view. */ 'assigned_orgs'?: Array | null; /** * Whether the feature is Org-aware. Org-aware features are managed via per-Org assignment; non-org-aware features are cluster-level toggles. Populated in the cluster-admin view. */ 'is_org_aware'?: boolean | null; /** * Current cluster-level value of the feature. Populated in the cluster-admin view for non-org-aware features; null for Org-aware features. Values are always returned as strings; for boolean toggles this is `\"true\"` or `\"false\"`. */ 'feature_value'?: string | null; /** * UI element type hint for the feature. Populated in the org-admin view. */ 'element_type'?: string | null; /** * UI element configuration for the feature. Populated in the org-admin view. An opaque blob whose structure varies by `element_type`; a `label` string is the common envelope field. */ 'element_config'?: any | null; /** * Current value of the feature for the requested Org. Populated in the org-admin view. */ 'element_value'?: string | null; /** * Per-feature documentation URL, when available. */ 'docs_url'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A named group of related features. Returned by searchFeatures; the contents of features depend on the requested scope (cluster-admin vs. org-admin view). */ declare class FeatureGroup { /** * Display name of the feature group. */ 'feature_group'?: string | null; /** * Documentation URL for the feature group, when available. */ 'docs_url'?: string | null; /** * Feature details within this group. Each entry contains the fields relevant to the requested scope; org-admin-only and cluster-admin-only fields are null in the other view. */ 'features': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response returned when a feature\'s value is set. */ declare class FeatureValueResponse { /** * Underlying unique feature ID. The dotted-path format (for example, `orion.embraceConfig.doIndexing`) is internal and subject to change without notice; use `feature_name` as the stable display identifier where possible. */ 'feature_id': string; /** * User-friendly feature name. Present when the feature declares one. */ 'feature_name'?: string | null; /** * The value that was written. */ 'feature_value': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchAnswerDataRequest { /** * GUID or name of the Answer. */ 'metadata_identifier': string; /** * JSON output in compact or full format. The FULL option is available in 9.12.5.cl or later. */ 'data_format'?: FetchAnswerDataRequestDataFormatEnum; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records to include in a batch. */ 'record_size'?: number; /** * JSON object with representing filter condition to apply filters at runtime. For example, {\"col1\": \"item type\", \"op1\": \"EQ\", \"val1\": \"Bags\"} . You can add multiple keys by incrementing the number at the end, for example, col2, op2, val2, and col3, op3, val3. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_filters). */ 'runtime_filter'?: any | null; /** * JSON object representing columns to sort data at runtime. For example, {\"sortCol1\": \"sales\", \"asc1\": true} . You can add multiple keys by incrementing the number at the end, for example, sortCol1, asc2. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_sort). */ 'runtime_sort'?: any | null; /** * JSON object for setting values of parameters at runtime. For example, {\"param1\": \"Double List Param\", \"paramVal1\": 0.5}. You can add multiple keys by incrementing the number at the end, for example, param2, paramVal2. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_parameters). */ 'runtime_param_override'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type FetchAnswerDataRequestDataFormatEnum = "FULL" | "COMPACT"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchAnswerSqlQueryRequest { /** * ID or name of an Answer. */ 'metadata_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchAsyncImportTaskStatusRequest { /** * List of task IDs to fetch status for. */ 'task_ids'?: Array; /** * List of task statuses to filter on. Valid values: [IN_QUEUE, IN_PROGRESS, COMPLETED, FAILED] */ 'task_status'?: Array; /** * Author GUID or name of async import tasks to filter on. */ 'author_identifier'?: string; /** * The offset point, starting from where the task status should be included in the response. */ 'record_offset'?: number; /** * The number of task statuses that should be included in the response starting from offset position. */ 'record_size'?: number; /** * Boolean flag to specify whether to include import response in the task status objects. */ 'include_import_response'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type FetchAsyncImportTaskStatusRequestTaskStatusEnum = "COMPLETED" | "IN_QUEUE" | "IN_PROGRESS" | "FAILED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchColumnSecurityRulesRequest { /** * Array of table identifier objects for which to fetch column security rules */ 'tables': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchConnectionDiffStatusResponse { /** * Status of the connection diff. */ 'status'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchLiveboardDataRequest { /** * GUID or name of the Liveboard. */ 'metadata_identifier': string; /** * GUIDs or names of the visualizations on the Liveboard. */ 'visualization_identifiers'?: Array; /** * Transient content of the Liveboard. */ 'transient_content'?: string; /** * JSON output in compact or full format. The FULL option is available in 9.12.5.cl or later. */ 'data_format'?: FetchLiveboardDataRequestDataFormatEnum; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records to include in a batch. */ 'record_size'?: number; /** * JSON object with representing filter condition to apply filters at runtime. For example, {\"col1\": \"item type\", \"op1\": \"EQ\", \"val1\": \"Bags\"} . You can add multiple keys by incrementing the number at the end, for example, col2, op2, val2, and col3, op3, val3. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_filters). */ 'runtime_filter'?: any | null; /** * JSON object representing columns to sort data at runtime. For example, {\"sortCol1\": \"sales\", \"asc1\": true} . You can add multiple keys by incrementing the number at the end, for example, sortCol1, asc2. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_sort). */ 'runtime_sort'?: any | null; /** * JSON object for setting values of parameters at runtime. For example, {\"param1\": \"Double List Param\", \"paramVal1\": 0.5}. You can add multiple keys by incrementing the number at the end, for example, param2, paramVal2. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_parameters). */ 'runtime_param_override'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type FetchLiveboardDataRequestDataFormatEnum = "FULL" | "COMPACT"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchLiveboardSqlQueryRequest { /** * ID or name of the Liveboard. */ 'metadata_identifier': string; /** * Unique ID or name of visualizations. */ 'visualization_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchLogsRequest { /** * Name of the log type */ 'log_type': FetchLogsRequestLogTypeEnum; /** * Start time in EPOCH format */ 'start_epoch_time_in_millis'?: number; /** * End time in EPOCH format */ 'end_epoch_time_in_millis'?: number; /** * Fetch all the logs. This is available from 9.10.5.cl */ 'get_all_logs'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type FetchLogsRequestLogTypeEnum = "SECURITY_AUDIT"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ObjectPrivilegesMetadataInput { /** * Type of metadata object. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: ObjectPrivilegesMetadataInputTypeEnum | null; /** * Unique ID or name of the metadata object. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ObjectPrivilegesMetadataInputTypeEnum = "LOGICAL_TABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PrincipalsInput { /** * Unique ID or name of the principal object such as a user or group. */ 'identifier': string; /** * Principal type. */ 'type'?: PrincipalsInputTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type PrincipalsInputTypeEnum = "USER" | "USER_GROUP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchObjectPrivilegesRequest { /** * Metadata objects for which you want to fetch object privileges. For now only LOGICAL_TABLE is supported. It may be extended to other metadata types in the future. */ 'metadata': Array; /** * User or group objects for which you want to fetch object privileges. If not specified, the API returns all users and groups that have object privileges on the specified metadata objects. */ 'principals'?: Array; /** * The starting record number from where the records should be included for each metadata type. */ 'record_offset'?: number; /** * The number of records that should be included for each metadata type. */ 'record_size'?: number; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * MetadataType InputType used in Permission API\'s */ declare class PermissionsMetadataTypeInput { /** * Type of metadata object. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: PermissionsMetadataTypeInputTypeEnum | null; /** * Unique ID or name of the metadata object. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type PermissionsMetadataTypeInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "COLLECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchPermissionsOfPrincipalsRequest { /** * GUID or name of the user or group. */ 'principals': Array; /** * Metadata objects for which you want to fetch permission details. If not specified, the API returns permission details for all metadata objects that the specified users and groups can access. */ 'metadata'?: Array; /** * The starting record number from where the records should be included for each metadata type. */ 'record_offset'?: number; /** * The number of records that should be included for each metadata type. */ 'record_size'?: number; /** * When no metadata objects input is passed, metadata objects of this type are fetched. */ 'default_metadata_type'?: FetchPermissionsOfPrincipalsRequestDefaultMetadataTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type FetchPermissionsOfPrincipalsRequestDefaultMetadataTypeEnum = "ALL" | "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "COLLECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class FetchPermissionsOnMetadataRequest { /** * GUID or name of the metadata object. */ 'metadata': Array; /** * User or group objects for which you want to fetch permissions. If not specified, the API returns all users and groups that can access the specified metadata objects. */ 'principals'?: Array; /** * Indicates whether to fetch permissions of dependent metadata objects. */ 'include_dependent_objects'?: boolean | null; /** * The starting record number from where the records should be included for each metadata type. */ 'record_offset'?: number; /** * The number of records that should be included for each metadata type. */ 'record_size'?: number; /** *
Version: 10.3.0.cl or later
Specifies the type of permission. Valid values are: EFFECTIVE - If the user permission to the metadata objects is granted by the privileges assigned to the groups to which they belong. DEFINED - If a user or user group received access to metadata objects via object sharing by another user. */ 'permission_type'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Pointer to a code-execution-generated file referenced from a text response item. Full metadata (including expiry) is in the top-level `code_execution_files` map. */ declare class FileReference { /** * Unique identifier of the code-execution-generated file. */ 'file_id': string; /** * Human-readable file name. */ 'display_name'?: string | null; /** * Milliseconds since Unix epoch when the file was created. */ 'created_time_in_millis'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Sanitized metadata for a file attached to or produced by a conversation turn. Never exposes internal Azure or blob-storage identifiers. */ declare class PublicFileInfo { /** * Unique identifier of the file. */ 'file_id': string; /** * Human-readable file name. */ 'display_name'?: string | null; /** * File type such as `csv`, `pdf`, or `png`. */ 'file_type'?: string | null; /** * Milliseconds since Unix epoch when the file was created. */ 'created_time_in_millis'?: any | null; /** * File size in bytes. */ 'size_bytes'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Uploaded or generated files attached to a turn. */ declare class FileResponseItem { /** * Variant discriminator. Always `\"file\"`. */ 'type': string; /** * Milliseconds since Unix epoch when this item was produced. */ 'timestamp_in_millis': any | null; /** * True when the item represents internal agent reasoning rather than user-facing output. */ 'is_thinking'?: boolean | null; /** * Human-readable label for the agent step producing this item. */ 'step_title'?: string | null; /** * Sanitized file metadata. */ 'files'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Filter Rules to be applied on Objects. */ declare class FilterRules { /** * The name of the column to apply the filter on. */ 'column_name': string; /** * The operator to use for filtering. Example: EQ (equals), GT(greater than), etc. */ 'operator': FilterRulesOperatorEnum; /** * The values to filter on. To get all records, use TS_WILDCARD_ALL as values. */ 'values': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type FilterRulesOperatorEnum = "EQ" | "NE" | "LT" | "LE" | "GT" | "GE" | "IN" | "BW" | "CONTAINS" | "BEGINS_WITH" | "ENDS_WITH" | "BW_INC" | "BW_INC_MIN" | "BW_INC_MAX" | "LIKE" | "NOT_IN"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ForceLogoutUsersRequest { /** * GUID or name of the users for force logging out their sessions. */ 'user_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Configuration of schedule with cron expression */ declare class Frequency { 'cron_expression': CronExpression; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * GCP GCS storage configuration details. */ declare class GcpGcsConfig { /** * Name of the GCS bucket where webhook payloads are stored. */ 'bucket_name': string; /** * Email of the GCP service account to impersonate for bucket access. */ 'service_account_email': string; /** * Path prefix for organizing objects within the bucket. */ 'path_prefix'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GenerateCSVRequest { /** * Start date for the calendar in `MM/dd/yyyy` format. */ 'start_date': string; /** * End date for the calendar in `MM/dd/yyyy` format. */ 'end_date': string; /** * Type of the calendar. */ 'calendar_type'?: GenerateCSVRequestCalendarTypeEnum; /** * Month offset to start calendar from `January`. */ 'month_offset'?: GenerateCSVRequestMonthOffsetEnum; /** * Specify the starting day of the week. */ 'start_day_of_week'?: GenerateCSVRequestStartDayOfWeekEnum; /** * Prefix to add before the quarter. */ 'quarter_name_prefix'?: string; /** * Prefix to add before the year. */ 'year_name_prefix'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type GenerateCSVRequestCalendarTypeEnum = "MONTH_OFFSET" | "FOUR_FOUR_FIVE" | "FOUR_FIVE_FOUR" | "FIVE_FOUR_FOUR"; type GenerateCSVRequestMonthOffsetEnum = "January" | "February" | "March" | "April" | "May" | "June" | "July" | "August" | "September" | "October" | "November" | "December"; type GenerateCSVRequestStartDayOfWeekEnum = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportEPackAsyncTaskStatus { /** * GUID of tenant from which the task is initiated. */ 'tenant_id'?: string | null; /** * Organisation ID of the user who initiated the task. */ 'org_id'?: number | null; /** * Unique identifier for the task. */ 'task_id'?: string | null; /** * Name of the task. */ 'task_name'?: string | null; /** * Response of imported objects so far. */ 'import_response'?: any | null; /** * Current status of the task. */ 'task_status'?: ImportEPackAsyncTaskStatusTaskStatusEnum | null; /** * ID of the user who initiated the task. */ 'author_id'?: string | null; /** * Policy used for the import task. */ 'import_policy'?: ImportEPackAsyncTaskStatusImportPolicyEnum | null; /** * Time when the task was created (in ms since epoch). */ 'created_at'?: number | null; /** * Time when the task started (in ms since epoch). */ 'in_progress_at'?: number | null; /** * Time when the task was completed (in ms since epoch). */ 'completed_at'?: number | null; /** * Total number of objects to process. */ 'total_object_count'?: number | null; /** * Number of objects processed so far. */ 'object_processed_count'?: number | null; /** * Last time the task status was updated (in ms since epoch). */ 'modified_at'?: number | null; /** * Display name of the user who initiated the task. */ 'author_display_name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportEPackAsyncTaskStatusTaskStatusEnum = "COMPLETED" | "IN_QUEUE" | "IN_PROGRESS" | "FAILED"; type ImportEPackAsyncTaskStatusImportPolicyEnum = "PARTIAL" | "ALL_OR_NONE" | "VALIDATE_ONLY" | "PARTIAL_OBJECT"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GetAsyncImportStatusResponse { /** * List of task statuses. */ 'status_list'?: Array | null; /** * Indicates whether there are more task statuses to fetch. */ 'last_batch'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Groups objects. */ declare class GroupObject { 'identifier'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Filter Rules to be applied on Objects. */ declare class ParameterValues { /** * The name of the column to apply the filter on. */ 'name': string; /** * The values to filter on. Only single value is supported currently. */ 'values': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Objects on which the filter rules and parameters values should be applied to */ declare class TokenAccessScopeObject { /** * Type of object. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. Specify the object type as `LOGICAL_TABLE`. */ 'type'?: TokenAccessScopeObjectTypeEnum | null; /** * Unique name/id of the object. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type TokenAccessScopeObjectTypeEnum = "LOGICAL_TABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The set of Orgs a token is authorized to operate in, recorded at issuance. Only applicable to a Tenant Administrator. */ declare class TokenScopeInput { /** * The set of Orgs this token is authorized to operate in. SPECIFIC_ORGS authorizes the token for the Orgs listed in org_identifiers; ALL_MEMBER_ORGS authorizes it for all Orgs the user is a member of. Version: 26.10.0.cl or later */ 'org_scope': TokenScopeInputOrgScopeEnum; /** * ID or name of the Orgs the token is authorized for. Required when org_scope is SPECIFIC_ORGS; ignored when org_scope is ALL_MEMBER_ORGS. Version: 26.10.0.cl or later */ 'org_identifiers'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type TokenScopeInputOrgScopeEnum = "SPECIFIC_ORGS" | "ALL_MEMBER_ORGS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Variable values. */ declare class VariableValues { /** * The name of the existing formula variable. */ 'name': string; /** * The values to filter on. */ 'values': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GetCustomAccessTokenRequest { /** * Username of the ThoughtSpot user. The username is stored in the `name` attribute of the user object. */ 'username': string; /** * Password of the user account */ 'password'?: string; /** * The secret key string provided by the ThoughtSpot application server. ThoughtSpot generates a secret key when Trusted authentication is enabled. */ 'secret_key'?: string; /** * Token validity duration in seconds */ 'validity_time_in_sec'?: number; /** * ID or name of the Org context to log in to. If the Org ID or name is not specified but a secret key is provided, the user will be logged into the Org associated with the secret key. If neither the Org ID/name nor the secret key is provided, the user will be logged into the Org context from their previous login session. */ 'org_identifier'?: string; /** * The set of Orgs this token is authorized to operate in, recorded at issuance. Only applicable to a Tenant Administrator. Only SPECIFIC_ORGS is supported for a custom (ABAC) token -- it authorizes the token for the Orgs listed in org_identifiers. Each subsequent request selects one Org from this set using the `X-Org-Selector` header. Version: 26.10.0.cl or later */ 'scope'?: TokenScopeInput; /** * Indicates whether the specified attributes should be persisted or not. RESET and NONE are not applicable if you are setting variable_values. */ 'persist_option': GetCustomAccessTokenRequestPersistOptionEnum; /** * Filter rules. */ 'filter_rules'?: Array; /** * Allows developers to assign parameter values for existing parameters to a user at login. Note: Using parameter values for row level security use cases will ultimately be deprecated. Developers can still pass data security values via the Custom Access token via the variable_values field and create RLS rules based on custom variables. Please refer to the [ABAC via RLS documentation](https://developers.thoughtspot.com/docs/abac-user-parameters) for more details. */ 'parameter_values'?: Array; /** * List of variable values where `name` references an existing formula variable and `values` is any value from the corresponding column. Version: 10.14.0.cl or later */ 'variable_values'?: Array; /** * Objects on which the parameter and variable values should be applied to */ 'objects'?: Array; /** * (just-in-time (JIT) provisioning)Email address of the user. Specify this attribute when creating a new user. */ 'email'?: string; /** * (just-in-time (JIT) provisioning) Indicates display name of the user. Specify this attribute when creating a new user. */ 'display_name'?: string; /** * (just-in-time (JIT) provisioning) ID or name of the groups to which the newly created user belongs. Specify this attribute when creating a new user. */ 'groups'?: Array; /** * Creates a new user if the specified username does not exist in ThoughtSpot. To provision a user just-in-time (JIT), set this attribute to true. Note: For JIT provisioning of a user, the secret_key is required. New formula variables won\'t be created. Version: 10.5.0.cl or later */ 'auto_create'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type GetCustomAccessTokenRequestPersistOptionEnum = "REPLACE" | "APPEND" | "NONE" | "RESET"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GetDataSourceSuggestionsRequest { /** * User query used to suggest data sources. Must be a non-empty string. */ 'query': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Objects to apply the User_Object. */ declare class UserObject { /** * Type of object. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. Specify the object type as `LOGICAL_TABLE`. */ 'type'?: UserObjectTypeEnum | null; /** * Unique name/id of the object. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UserObjectTypeEnum = "LOGICAL_TABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Objects to apply the Runtime_Filters. */ declare class RuntimeFilters { /** * The column name to apply filter. */ 'column_name': string; /** * Value of the filters. */ 'values': Array; /** * Operator value. Example: EQ */ 'operator': RuntimeFiltersOperatorEnum; /** * Flag to persist the runtime filters. Version: 9.12.0.cl or later */ 'persist'?: boolean | null; /** * Object to apply the runtime filter. */ 'objects'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type RuntimeFiltersOperatorEnum = "EQ" | "NE" | "LT" | "LE" | "GT" | "GE" | "IN" | "BW" | "CONTAINS" | "BEGINS_WITH" | "ENDS_WITH" | "BW_INC" | "BW_INC_MIN" | "BW_INC_MAX" | "LIKE" | "NOT_IN"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Objects to apply the Runtime_Parameters. */ declare class RuntimeParameters { /** * The name of the parameter. */ 'name': string; /** * The array of values. */ 'values': Array; /** * Flag to persist the parameters. Version: 9.12.0.cl or later */ 'persist'?: boolean | null; /** * Object to apply the runtime parameter. */ 'objects'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Objects to apply the Runtime_Sorts. */ declare class RuntimeSorts { /** * The column name to apply filter. */ 'column_name'?: string | null; /** * Order for the sort. */ 'order'?: RuntimeSortsOrderEnum | null; /** * Flag to persist the runtime sorts. Version: 9.12.0.cl or later */ 'persist'?: boolean | null; /** * Object to apply the runtime sort. */ 'objects'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type RuntimeSortsOrderEnum = "ASC" | "DESC"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Define attributes such as Runtime filters and Runtime parameters to send security entitlements to a user session. For more information, see [Documentation](https://developers.thoughtspot.com/docs/abac-user-parameters). */ declare class UserParameterOptions { 'objects'?: Array | null; /** * Objects to apply the User_Runtime_Filters. Examples to set the `runtime_filters` : ```json { \"column_name\": \"Color\", \"operator\": \"EQ\", \"values\": [\"red\"], \"persist\": false } ``` */ 'runtime_filters'?: Array | null; /** * Objects to apply the User_Runtime_Sorts. Examples to set the `runtime_sorts` : ```json { \"column_name\": \"Color\", \"order\": \"ASC\", \"persist\": false } ``` */ 'runtime_sorts'?: Array | null; /** * Objects to apply the Runtime_Parameters. Examples to set the `parameters` : ```json { \"name\": \"Color\", \"values\": [\"Blue\"], \"persist\": false } ``` */ 'parameters'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GetFullAccessTokenRequest { /** * Username of the ThoughtSpot user. The username is stored in the `name` attribute of the user object. */ 'username': string; /** * Password of the user account */ 'password'?: string; /** * The secret key string provided by the ThoughtSpot application server. ThoughtSpot generates a secret key when Trusted authentication is enabled. */ 'secret_key'?: string; /** * Token validity duration in seconds */ 'validity_time_in_sec'?: number; /** * ID of the Org context to log in to. If the Org ID is not specified and secret key is provided then user will be logged into the org corresponding to the secret key, and if secret key is not provided then user will be logged in to the Org context of their previous login session. */ 'org_id'?: number; /** * The set of Orgs this token is authorized to operate in, recorded at issuance. Only applicable to a Tenant Administrator. Each subsequent request selects one Org from this set using the `X-Org-Selector` header. Version: 26.10.0.cl or later */ 'scope'?: TokenScopeInput; /** * Email address of the user. Specify this attribute when creating a new user (just-in-time (JIT) provisioning). */ 'email'?: string; /** * Indicates display name of the user. Use this parameter to provision a user just-in-time (JIT). */ 'display_name'?: string; /** * Creates a new user if the specified username does not already exist in ThoughtSpot. To provision a user just-in-time (JIT), set this attribute to true. Note: For JIT provisioning of a user, the secret_key is required. */ 'auto_create'?: boolean | null; /** * ID or name of the groups to which the newly created user belongs. Use this parameter to provision a user just-in-time (JIT). */ 'group_identifiers'?: Array; /** *
Deprecated: 10.4.0.cl and later
Define attributes such as Runtime filters and Runtime parameters to send security entitlements to a user session. For more information, see [Documentation](https://developers.thoughtspot.com/docs/abac-user-parameters). */ 'user_parameters'?: UserParameterOptions; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GetNLInstructionsRequest { /** * Unique ID or name of the data-model for which to retrieve NL instructions. */ 'data_source_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GetObjectAccessTokenRequest { /** * Username of the ThoughtSpot user. The username is stored in the `name` attribute of the user object. */ 'username': string; /** * GUID of the ThoughtSpot metadata object that the user can access. The bearer will only have access to the object specified in the API request. */ 'object_id'?: string; /** * Password of the user account */ 'password'?: string; /** * The secret key string provided by the ThoughtSpot application server. ThoughtSpot generates a secret key when Trusted authentication is enabled. */ 'secret_key'?: string; /** * Token validity duration in seconds */ 'validity_time_in_sec'?: number; /** * ID of the Org context to log in to. If the Org ID is not specified and secret key is provided then user will be logged into the org corresponding to the secret key, and if secret key is not provided then user will be logged in to the Org context of their previous login session. */ 'org_id'?: number; /** * The set of Orgs this token is authorized to operate in, recorded at issuance. Only applicable to a Tenant Administrator. Each subsequent request selects one Org from this set using the `X-Org-Selector` header. Version: 26.10.0.cl or later */ 'scope'?: TokenScopeInput; /** * Email address of the user. Specify this attribute when creating a new user (just-in-time (JIT) provisioning). */ 'email'?: string; /** * Display name of the user. Specify this attribute when creating a new user (just-in-time (JIT) provisioning). */ 'display_name'?: string; /** * Creates a new user if the specified username does not exist in ThoughtSpot. To provision a user just-in-time (JIT), set this attribute to true. Note: For JIT provisioning of a user, the secret_key is required. */ 'auto_create'?: boolean | null; /** * Unique ID or name of the groups to which you want to assign the new user. You can specify this attribute to dynamically assign privileges during just-in-time (JIT) provisioning. */ 'group_identifiers'?: Array; /** *
Deprecated: 10.4.0.cl and later
Define attributes such as Runtime filters and Runtime parameters to send security entitlements to a user session. For more information, see [Documentation](https://developers.thoughtspot.com/docs/abac-user-parameters). */ 'user_parameters'?: UserParameterOptions; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class MetadataContext { /** * List of data_source_identifiers to provide context for breaking down user query into analytical queries that can be run on them. */ 'data_source_identifiers'?: Array | null; /** * List of answer unique identifiers (GUIDs) whose data will be used to guide the response. */ 'answer_identifiers'?: Array | null; /** * Unique identifier to denote current conversation. */ 'conversation_identifier'?: string | null; /** * List of liveboard unique identifiers (GUIDs) whose data will be used to guide the response. */ 'liveboard_identifiers'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GetRelevantQuestionsRequest { /** * metadata for the query to enable generation of relevant sub-questions; at least one context identifier is required. */ 'metadata_context': MetadataContext; /** * Maximum number of relevant questions that is allowed in the response, default = 5. */ 'limit_relevant_questions'?: number; /** * If true, results are not returned from cache & calculated every time. */ 'bypass_cache'?: boolean | null; /** * A user query that requires breaking down into smaller, more manageable analytical questions to facilitate better understanding and analysis. Must be a non-empty string. */ 'query': string; /** * Additional context to guide the response. */ 'ai_context'?: AIContext; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GetTokenResponse { /** * Bearer auth token. */ 'token': string; /** * Token creation time in milliseconds. */ 'creation_time_in_millis': number; /** * Token expiration time in milliseconds. */ 'expiration_time_in_millis': number; /** * Username to whom the token is issued. */ 'valid_for_user_id': string; /** * Unique identifier of the user to whom the token is issued. */ 'valid_for_username': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class GroupsImportListInput { /** * Unique display name of the group. */ 'display_name': string; /** * Unique ID or name of the group. */ 'group_identifier': string; /** * Unique ID of Liveboards that will be assigned as default Liveboards to the users in the group. */ 'default_liveboard_identifiers'?: Array | null; /** * Description of the group. */ 'description'?: string | null; /** * Privileges that will be assigned to the group. Note: AUTHORING is a no-op — always inherited via ALL_GROUP, assigning it has no effect. */ 'privileges'?: Array | null; /** * Unique ID or name of the sub-groups to add to the group. */ 'sub_group_identifiers'?: Array | null; /** * Type of the group. */ 'type'?: GroupsImportListInputTypeEnum | null; /** * Unique ID or name of the users to assign to the group. */ 'user_identifiers'?: Array | null; /** * Visibility of the group. The SHARABLE makes a group visible to other users and groups, and thus allows them to share objects. */ 'visibility'?: GroupsImportListInputVisibilityEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type GroupsImportListInputPrivilegesEnum = "ADMINISTRATION" | "AUTHORING" | "USERDATAUPLOADING" | "DATADOWNLOADING" | "USERMANAGEMENT" | "DATAMANAGEMENT" | "SHAREWITHALL" | "JOBSCHEDULING" | "A3ANALYSIS" | "EXPERIMENTALFEATUREPRIVILEGE" | "BYPASSRLS" | "RANALYSIS" | "DEVELOPER" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "SYNCMANAGEMENT" | "CAN_CREATE_CATALOG" | "DISABLE_PINBOARD_CREATION" | "LIVEBOARD_VERIFIER" | "PREVIEW_THOUGHTSPOT_SAGE" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "CAN_MODIFY_FOLDERS" | "CAN_MANAGE_VARIABLES" | "CAN_VIEW_FOLDERS" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_SETUP_VERSION_CONTROL" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; type GroupsImportListInputTypeEnum = "LOCAL_GROUP" | "LDAP_GROUP" | "TEAM_GROUP" | "TENANT_GROUP"; type GroupsImportListInputVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Attribute to update in a header. */ declare class HeaderAttributeInput { /** * Attribute name to be updated. */ 'name': string; /** * Attribute\'s new value. */ 'value': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Favorite object options. */ declare class HeaderUpdateInput { /** * Unique ID of a specified type to identify the header. */ 'identifier'?: string | null; /** * Custom object identifier to uniquely identify header. */ 'obj_identifier'?: string | null; /** * Optional type of the header object. */ 'type'?: HeaderUpdateInputTypeEnum | null; /** * List of attributes to update */ 'attributes': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type HeaderUpdateInputTypeEnum = "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "LIVEBOARD" | "ACTION_OBJECT" | "DATA_SOURCE" | "USER" | "USER_GROUP" | "COLLECTION" | "ROLE" | "TEMPLATE_VARIABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A group of importMemory diagnostic messages that share a severity / disposition. This is the single, uniform channel for fatal errors, rollbacks, and non-fatal observations. */ declare class ImportDiagnostic { /** * Severity / disposition category these messages share (e.g. `WARNING`, `FAILURE`, `ROLLED_BACK`). */ 'sub_status'?: ImportDiagnosticSubStatusEnum | null; /** * Human-readable messages for this category (e.g. the details of a `WARNING`, or the failure cause for a `FAILURE`). */ 'messages'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportDiagnosticSubStatusEnum = "UNKNOWN" | "FAILURE" | "WARNING" | "ROLLED_BACK"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * One per-item import failure surfaced by importMemory. `line_number` is the best-effort line number in the uploaded YAML; `field_name` is a dotted path within the item (e.g. `content.rule_definition`) for inline highlighting; absent when the failure is item-level rather than field-level. */ declare class ImportFailure { /** * Best-effort line number of the offending item in the uploaded YAML. May be null when the line cannot be determined. */ 'line_number'?: number | null; /** * Machine-readable category for the failure (e.g. `VALIDATION`, `ACCESS_DENIED`, `CHAR_LIMIT`). */ 'reason'?: ImportFailureReasonEnum | null; /** * Dotted path to the offending field within the item (e.g. `content.rule_definition`) for inline highlighting. Absent when the failure is item-level rather than field-level. */ 'field_name'?: string | null; /** * Human-readable description of the failure. */ 'message'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportFailureReasonEnum = "UNKNOWN_FAILURE_REASON" | "VALIDATION" | "UNRESOLVED_SOURCE" | "ACCESS_DENIED" | "CHAR_LIMIT" | "SCHEMA"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportMemoryRequest { /** * The full serialized memory payload to import (YAML) — typically a previous `exportMemory` response\'s `content`, edited locally and re-submitted. */ 'content': string; /** * Required. When `true`, validate the payload and return preview counts and row failures without writing anything. Pass `false` to apply the import. The caller must choose explicitly so a real import is never triggered by omission. */ 'dry_run': boolean; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Identifies the target object a group of import counts applies to. `type` is the source kind (`DATA_MODEL`) and `identifier` is the object\'s GUID. */ declare class ImportTargetSource { /** * Identifier (GUID) of the target object these counts apply to. */ 'identifier'?: string | null; /** * Source object kind (`DATA_MODEL`). */ 'type'?: ImportTargetSourceTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportTargetSourceTypeEnum = "DATA_MODEL"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Per (memory type, target source) summary of what importMemory did — or would do, in DRY_RUN. `deleted_record_count` and `inserted_record_count` are previews in DRY_RUN and actuals in EXECUTE_IMPORT. */ declare class ImportSummary { /** * The kind of memory (`RULES`, `RECIPES`, or `ALWAYS_APPLY_RULES`) these counts apply to. */ 'memory_type'?: ImportSummaryMemoryTypeEnum | null; 'source'?: ImportTargetSource; /** * Number of memory entries of this type that already existed on the target object before the import. */ 'existing_record_count'?: number | null; /** * Number of existing entries that will be (DRY_RUN) or were (EXECUTE_IMPORT) deleted as part of the replacement. */ 'deleted_record_count'?: number | null; /** * Number of entries from the payload that will be (DRY_RUN) or were (EXECUTE_IMPORT) inserted. */ 'inserted_record_count'?: number | null; /** * Number of records of this type that failed validation or processing. */ 'failed_record_count'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportSummaryMemoryTypeEnum = "RULES" | "RECIPES" | "ALWAYS_APPLY_RULES"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response from importMemory. On `SUCCESS`, `summary` is fully populated. `diagnostics` carries any fatal errors, rollbacks, and non-fatal warnings produced during the import. */ declare class ImportMemoryResponse { /** * Terminal status of the import. */ 'status': ImportMemoryResponseStatusEnum; /** * Per (memory type, target source) result entries. Null when the import failed before any record processing occurred. */ 'summary'?: Array | null; /** * Per-item validation failure entries. Null when the import failed before item validation could run. */ 'validation_failures'?: Array | null; /** * Diagnostic message groups (errors, rollbacks, and non-fatal warnings), each keyed by a `sub_status`. Null when the import produced no diagnostics. */ 'diagnostics'?: Array | null; /** * Server-generated identifier for this import operation. Include it in support tickets to help correlate server-side logs. */ 'operation_id'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportMemoryResponseStatusEnum = "SUCCESS" | "VALIDATION_FAILED" | "FAILED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportMetadataTMLAsyncRequest { /** * Details of TML objects. */ 'metadata_tmls': Array; /** * If selected, creates TML objects with new GUIDs. */ 'create_new'?: boolean | null; /** * If import is happening from all orgs context. */ 'all_orgs_override'?: boolean | null; /** *
Version: 10.5.0.cl or later
Policy to be followed while importing the TML. Valid values are [PARTIAL_OBJECT, PARTIAL, VALIDATE_ONLY, ALL_OR_NONE] */ 'import_policy'?: ImportMetadataTMLAsyncRequestImportPolicyEnum; /** *
Version: 10.6.0.cl or later
Boolean Flag to skip TML diff check before processing object TMLs. */ 'skip_diff_check'?: boolean | null; /** *
Version: 10.5.0.cl or later
Boolean to indicate if the large metadata validation should be enabled. */ 'enable_large_metadata_validation'?: boolean | null; /** *
Version: 26.8.0.cl or later
Boolean flag to enable update/insert of personalized views in liveboard. */ 'enable_personalized_view_upsert'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportMetadataTMLAsyncRequestImportPolicyEnum = "PARTIAL" | "ALL_OR_NONE" | "VALIDATE_ONLY" | "PARTIAL_OBJECT"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportMetadataTMLRequest { /** * Details of TML objects. **Note: importing TML in YAML format, when coming directly from our Playground, is currently requires manual formatting. For more details on the workaround, please click [here](https://developers.thoughtspot.com/docs/known-issues#_version_9_12_0_cl)** */ 'metadata_tmls': Array; /** * Specifies the import policy for the TML import. */ 'import_policy'?: ImportMetadataTMLRequestImportPolicyEnum; /** * If selected, creates TML objects with new GUIDs. */ 'create_new'?: boolean | null; /** * If import is happening from all orgs context. */ 'all_orgs_override'?: boolean | null; /** *
Version: 10.6.0.cl or later
Boolean Flag to skip TML diff check before processing object TMLs. */ 'skip_diff_check'?: boolean | null; /** *
Version: 10.5.0.cl or later
Boolean to indicate if the large metadata validation should be enabled. */ 'enable_large_metadata_validation'?: boolean | null; /** *
Version: 26.8.0.cl or later
Boolean flag to enable update/insert of personalized views in liveboard. */ 'enable_personalized_view_upsert'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportMetadataTMLRequestImportPolicyEnum = "PARTIAL" | "ALL_OR_NONE" | "VALIDATE_ONLY" | "PARTIAL_OBJECT"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportUser { /** * Unique ID or name of the user. */ 'user_identifier': string; /** * Display name of the user. */ 'display_name': string; /** * Password of the user. */ 'password'?: string | null; /** * Type of the user account. */ 'account_type'?: ImportUserAccountTypeEnum | null; /** * Status of the user account. */ 'account_status'?: ImportUserAccountStatusEnum | null; /** * Email address of the user. */ 'email'?: string | null; /** * ID or name of the Orgs to which the user belongs. */ 'org_identifiers'?: Array | null; /** * ID or name of the groups to which the user belongs. */ 'group_identifiers'?: Array | null; /** * Visibility of the users. The SHARABLE property makes a user visible to other users and group, who can share objects with the user. */ 'visibility'?: ImportUserVisibilityEnum | null; /** * Notify user when other users or groups share metadata objects */ 'notify_on_share'?: boolean | null; /** * Show or hide the new user onboarding walkthroughs */ 'show_onboarding_experience'?: boolean | null; /** * Revisit the new user onboarding walkthroughs */ 'onboarding_experience_completed'?: boolean | null; /** * Unique ID or name of the default Liveboard assigned to the user. */ 'home_liveboard_identifier'?: string | null; /** * Metadata objects to add to the user\'s favorites list. */ 'favorite_metadata'?: Array | null; /** * Locale for the user. When setting this value, do not set use_browser_language to true, otherwise the browser\'s language setting will take precedence and the preferred_locale value will be ignored. */ 'preferred_locale'?: ImportUserPreferredLocaleEnum | null; /** * Flag to indicate whether to use the browser locale for the user in the UI. When set to true, the preferred_locale value is unset and the browser\'s language setting takes precedence. Version: 26.3.0.cl or later */ 'use_browser_language'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ImportUserAccountTypeEnum = "LOCAL_USER" | "LDAP_USER" | "SAML_USER" | "OIDC_USER" | "REMOTE_USER"; type ImportUserAccountStatusEnum = "ACTIVE" | "INACTIVE" | "EXPIRED" | "LOCKED" | "PENDING" | "SUSPENDED"; type ImportUserVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; type ImportUserPreferredLocaleEnum = "en-CA" | "en-GB" | "en-US" | "de-DE" | "ja-JP" | "zh-CN" | "pt-BR" | "fr-FR" | "fr-CA" | "es-US" | "da-DK" | "es-ES" | "fi-FI" | "sv-SE" | "nb-NO" | "pt-PT" | "nl-NL" | "it-IT" | "ru-RU" | "en-IN" | "de-CH" | "en-NZ" | "es-MX" | "en-AU" | "zh-Hant" | "ko-KR" | "en-DE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportUserGroupsRequest { /** * Details of groups which are to be imported */ 'groups'?: Array; /** * If set to true, removes groups that are not specified in the API request. */ 'delete_unspecified_groups'?: boolean | null; /** * If true, the API performs a test operation and returns user IDs whose data will be edited after the import. */ 'dry_run'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UserGroup { 'id'?: string | null; 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportUserGroupsResponse { /** * The groups which are added into the system. */ 'groups_added': Array; /** * The groups which are deleted from the system. */ 'groups_deleted': Array; /** * The groups which are updated in the system. */ 'groups_updated': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportUserType { /** * Unique identifier of the user. */ 'id'?: string | null; /** * Name of the user. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportUsersRequest { /** * List of users needs to be imported. */ 'users': Array; /** * The default password to assign to users if they do not have a password assigned in ThoughtSpot. */ 'default_password'?: string; /** * If true, the API performs a test operation and returns user IDs whose data will be edited after the import. */ 'dry_run'?: boolean | null; /** * If set to true, removes the users that are not specified in the API request. */ 'delete_unspecified_users'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ImportUsersResponse { 'users_added'?: Array | null; 'users_updated'?: Array | null; 'users_deleted'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Schema definition for a single input column. */ declare class InputColumnSchemaInput { /** * Name of the column. */ 'name': string; /** * Physical data type of the column as recognized by the connected warehouse (for example, VARCHAR, INT64, DOUBLE, BOOL, DATE). The accepted values depend on the underlying Cloud Data Warehouse. */ 'data_type': string; /** * Semantic role of the column in ThoughtSpot. Use ATTRIBUTE for dimensional data such as text, dates, and identifiers, and MEASURE for numeric or aggregatable values. */ 'type': InputColumnSchemaInputTypeEnum; /** * Optional list of permitted values for the column. When provided, data written to this column is restricted to these values. Omit or leave empty to allow any value supported by the data type. Version: 26.9.0.cl or later */ 'allowed_values'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type InputColumnSchemaInputTypeEnum = "ATTRIBUTE" | "MEASURE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class InputEurekaNLSRequest { /** * Cluster version like 10.4.0.cl, 10.5.0.cl, so on. */ 'agentVersion'?: number | null; /** * If true, results are not returned from cache & calculated every time. Can incur high costs & latency. */ 'bypassCache'?: boolean | null; /** * User specific instructions for processing the @query. */ 'instructions'?: Array | null; /** * User query which is a topical/goal oriented question that needs to be broken down into smaller simple analytical questions. */ 'query'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Definition of the input table schema. */ declare class InputTableDefinitionInput { /** * New input-only columns to create in the table. */ 'new_columns': Array; /** * Column IDs from the linked model to include in the table. Pass an empty array to create an input table with no reference columns from the model. */ 'referenced_columns': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class InputTableResponse { /** * Unique ID of the newly created input table. */ 'input_table_identifier'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response returned after successfully writing rows to an input table. */ declare class InputTableUpdateResponse { /** * Number of rows successfully written to the input table. */ 'rows_loaded'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Metadata objects. */ declare class JWTMetadataObject { 'identifier'?: string | null; 'type'?: JWTMetadataObjectTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type JWTMetadataObjectTypeEnum = "LOGICAL_TABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * List of runtime parameters need to set during the session. */ declare class JWTParameter { /** * Runtime filter parameter type in JWT. */ 'runtime_filter'?: any | null; /** * Runtime sort parameter type in JWT. */ 'runtime_sort'?: any | null; /** * Runtime param override type in JWT. */ 'runtime_param_override'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * JWT user options to create a JWT token given the payload. *Deprecated in 9.12.0.cl. Use user_parameters instead.* */ declare class JWTUserOptions { 'parameters'?: Array; 'metadata'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * JWT user options to create a JWT token given the payload. *Deprecated in 9.12.0.cl. Use user_parameters instead.* */ declare class JWTUserOptionsFull { 'parameters'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class LiveboardContent { /** * Total available data row count. */ 'available_data_row_count': number; /** * Name of the columns. */ 'column_names': Array; /** * Rows of data set. */ 'data_rows': Array; /** * The starting record number from where the records should be included. */ 'record_offset': number; /** * The number of records that should be included. */ 'record_size': number; /** * Total returned data row count. */ 'returned_data_row_count': number; /** * Sampling ratio (0 to 1). If the query was sampled, it is the ratio of keys returned in the data set to the total number of keys expected in the query. If the value is 1.0, this means that the complete result is returned. */ 'sampling_ratio': number; /** * Unique ID of the visualization. */ 'visualization_id'?: string | null; /** * Name of the visualization. */ 'visualization_name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class LiveboardDataResponse { /** * The unique identifier of the object */ 'metadata_id': string; /** * Name of the metadata object */ 'metadata_name': string; /** * Data content of metadata objects */ 'contents': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Parts of a Liveboard\'s metadata_detail to return in a metadata search. */ declare class LiveboardDetailsInput { /** * Includes Liveboard filters. */ 'liveboard_filters'?: boolean | null; /** * Includes Liveboard tabs. */ 'liveboard_tabs'?: boolean | null; /** * Includes the layout of Liveboard visualizations. */ 'container_layouts'?: boolean | null; /** * Includes Liveboard visualizations. */ 'visualizations'?: boolean | null; /** * Includes parameter overrides. */ 'parameter_overrides'?: boolean | null; /** * Includes personalised views. Personalised views are also included when include_personalised_views is true. */ 'personalized_views'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Options to specify details of Liveboard. */ declare class LiveboardOptions { /** * Unique ID or name of visualizations. */ 'visualization_identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class LoadAnswerResponse { 'answer'?: AnswerDetails; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class LogResponse { /** * Date timestamp of the log entry */ 'date': string; /** * Log data */ 'log': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class LoginRequest { /** * Username of the ThoughtSpot user */ 'username'?: string; /** * Password of the user account */ 'password'?: string; /** * ID of the Org context to log in to. If Org ID is not specified, the user will be logged in to the Org context of their previous login session. */ 'org_identifier'?: string; /** * A flag to remember the user session. When set to true, a session cookie is created and used in subsequent API requests. */ 'remember_me'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ManageObjectPrivilegeRequest { /** * Operation to perform to manage object privileges. Available operations are: `ADD`, `REMOVE`. */ 'operation': ManageObjectPrivilegeRequestOperationEnum; /** * Type of metadata objects on which you want to perform the operation. For now only LOGICAL_TABLE is supported. It may be extended to other metadata types in the future. */ 'metadata_type': ManageObjectPrivilegeRequestMetadataTypeEnum; /** * List of object privilege types on which you want to perform the operation. */ 'object_privilege_types': Array; /** * List of metadata identifiers (GUID or name) on which you want to perform the operation. */ 'metadata_identifiers': Array; /** * User or group objects (GUID or name) to which you want to apply the given operation and given object privileges. */ 'principals': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ManageObjectPrivilegeRequestOperationEnum = "ADD" | "REMOVE"; type ManageObjectPrivilegeRequestMetadataTypeEnum = "LOGICAL_TABLE"; type ManageObjectPrivilegeRequestObjectPrivilegeTypesEnum = "SPOTTER_COACHING_PRIVILEGE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class MetadataAssociationItem { 'action_config': ActionConfig; /** * Unique ID or name of the metadata. */ 'identifier': string; /** * Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class MetadataInput { 'identifier'?: string | null; 'type'?: MetadataInputTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type MetadataInputTypeEnum = "LIVEBOARD"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class MetadataListItemInput { /** * Unique ID or name of the metadata. */ 'identifier'?: string | null; /** * CustomObjectId of the metadata. */ 'obj_identifier'?: string | null; /** * A pattern to match the case-insensitive name of the metadata object. User % for a wildcard match. */ 'name_pattern'?: string | null; /** * Type of metadata. Required if the name of the object is set as identifier. This attribute is optional when the object GUID is specified as identifier. 1. Liveboard 2. Answers 3. LOGICAL_TABLE for any data object such as table, worksheet or view. 4. LOGICAL_COLUMN for a column of any data object such as table, worksheet or view. 5. CONNECTION for creating or modify data connections. 6. TAG for tag objects. 7. USER for user objects. 8. USER_GROUP for group objects. 9. LOGICAL_RELATIONSHIP for table or worksheet joins. A join combines from one or several data object by using matching values 10. INSIGHT_SPEC for SpotIQ objects 11. COLLECTION for collection objects */ 'type'?: MetadataListItemInputTypeEnum | null; /** * List of subtype of metadata. Applies for LOGICAL_TABLE type with the following valid values. 1. ONE_TO_ONE_LOGICAL 2. WORKSHEET 3. PRIVATE_WORKSHEET. 4. USER_DEFINED. 5. AGGR_WORKSHEET. 6. SQL_VIEW Version: 10.11.0.cl or later */ 'subtypes'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type MetadataListItemInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "TAG" | "USER" | "USER_GROUP" | "LOGICAL_RELATIONSHIP" | "INSIGHT_SPEC" | "COLLECTION"; type MetadataListItemInputSubtypesEnum = "ONE_TO_ONE_LOGICAL" | "WORKSHEET" | "PRIVATE_WORKSHEET" | "USER_DEFINED" | "AGGR_WORKSHEET" | "SQL_VIEW"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class MetadataResponse { 'name'?: string | null; 'id': string; 'type': MetadataResponseTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type MetadataResponseTypeEnum = "LIVEBOARD"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Metadata Search Response Object. */ declare class MetadataSearchResponse { /** * Unique identifier of the metadata. */ 'metadata_id'?: string | null; /** * Name of the metadata. */ 'metadata_name'?: string | null; /** * Type of the metadata. */ 'metadata_type': MetadataSearchResponseMetadataTypeEnum; /** * Custom identifier of the metadata. (Available from 10.8.0.cl onwards) */ 'metadata_obj_id'?: string | null; /** * Details of dependent objects of the metadata objects. */ 'dependent_objects'?: any | null; /** * Details of incomplete information of the metadata objects if any. */ 'incomplete_objects'?: Array | null; /** * Complete details of the metadata objects. */ 'metadata_detail'?: any | null; /** * Header information of the metadata objects. */ 'metadata_header'?: any | null; /** * Visualization header information of the metadata objects. */ 'visualization_headers'?: Array | null; /** * Stats of the metadata object. Includes views, favorites, last_accessed. */ 'stats'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type MetadataSearchResponseMetadataTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "TAG" | "USER" | "USER_GROUP" | "LOGICAL_RELATIONSHIP" | "INSIGHT_SPEC" | "COLLECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Sort options. */ declare class MetadataSearchSortOptions { /** * Name of the field to apply the sort on. */ 'field_name'?: MetadataSearchSortOptionsFieldNameEnum | null; /** * Sort order : ASC(Ascending) or DESC(Descending). */ 'order'?: MetadataSearchSortOptionsOrderEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type MetadataSearchSortOptionsFieldNameEnum = "NAME" | "DISPLAY_NAME" | "AUTHOR" | "CREATED" | "MODIFIED" | "VIEWS" | "FAVORITES" | "LAST_ACCESSED"; type MetadataSearchSortOptionsOrderEnum = "ASC" | "DESC"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ModelTableList { /** * Name of the Model. */ 'model_name': string; /** * Model directory path, this is optional param and required if there are duplicate models with the same name. */ 'model_path'?: string | null; /** * List of Tables. */ 'tables': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class NLInstructionsInfoInput { /** * User instructions for natural language processing. */ 'instructions': Array; /** * Scope of the instruction (USER or GLOBAL). Defaults to GLOBAL. */ 'scope': NLInstructionsInfoInputScopeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type NLInstructionsInfoInputScopeEnum = "GLOBAL"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Navigation panel color configuration. */ declare class NavigationPanelInput { /** * Color mode for the navigation panel. DARK applies the default dark theme. TWO_TONE applies a dual-tone style. CUSTOM enables a user-defined base color; base_color is required when theme is CUSTOM. */ 'theme'?: NavigationPanelInputThemeEnum | null; /** * Base color as a 6-digit hex string (e.g. \"#2359B6\"). Required when theme is CUSTOM. */ 'base_color'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type NavigationPanelInputThemeEnum = "DARK" | "TWO_TONE" | "CUSTOM"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The object representation with ID and Name. */ declare class ObjectIDAndName { /** * The unique identifier of the object. */ 'id'?: string | null; /** * Name of the object. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ObjectPrivilegesOfMetadataResponse { 'metadata_object_privileges'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The current Org context of the user. */ declare class Org { /** * The ID of the object. */ 'id': number; /** * Name of the object. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Org-level non-embed access configuration. */ declare class OrgNonEmbedAccess { /** * Block full application access for non-embedded usage. */ 'block_full_app_access'?: boolean | null; /** * Groups that have non-embed full app access. */ 'groups_with_access'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class OrgPreferenceSearchCriteriaInput { /** * Unique identifier or name of the org */ 'org_identifier': string; /** * Event types to search for. If not provided, all event types for this org are returned. */ 'event_types'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type OrgPreferenceSearchCriteriaInputEventTypesEnum = "LIVEBOARD_SCHEDULE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class OrgResponse { /** * Unique identifier of the Org. */ 'id'?: number | null; /** * Name of the Org. */ 'name'?: string | null; /** * Status of the Org. */ 'status'?: OrgResponseStatusEnum | null; /** * Description of the Org. */ 'description'?: string | null; /** * Visibility of the Org. */ 'visibility'?: OrgResponseVisibilityEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type OrgResponseStatusEnum = "ACTIVE" | "IN_ACTIVE"; type OrgResponseVisibilityEnum = "SHOW" | "HIDDEN"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ParameterizeMetadataFieldsRequest { /** * Type of metadata object to parameterize. */ 'metadata_type'?: ParameterizeMetadataFieldsRequestMetadataTypeEnum; /** * Unique ID or name of the metadata object to parameterize. */ 'metadata_identifier': string; /** * Type of field in the metadata to parameterize. */ 'field_type': ParameterizeMetadataFieldsRequestFieldTypeEnum; /** * JSON array of field names to parameterize. Example: [schemaName, databaseName, tableName] */ 'field_names': Array; /** * Unique ID or name of the variable to use for parameterization of these fields. */ 'variable_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ParameterizeMetadataFieldsRequestMetadataTypeEnum = "LOGICAL_TABLE" | "CONNECTION" | "CONNECTION_CONFIG"; type ParameterizeMetadataFieldsRequestFieldTypeEnum = "ATTRIBUTE" | "CONNECTION_PROPERTY"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ParameterizeMetadataRequest { /** * Type of metadata object to parameterize. */ 'metadata_type'?: ParameterizeMetadataRequestMetadataTypeEnum; /** * Unique ID or name of the metadata object to parameterize. */ 'metadata_identifier': string; /** * Type of field in the metadata to parameterize. */ 'field_type': ParameterizeMetadataRequestFieldTypeEnum; /** * Name of the field which needs to be parameterized. */ 'field_name': string; /** * Unique ID or name of the variable to use for parameterization */ 'variable_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ParameterizeMetadataRequestMetadataTypeEnum = "LOGICAL_TABLE" | "CONNECTION" | "CONNECTION_CONFIG"; type ParameterizeMetadataRequestFieldTypeEnum = "ATTRIBUTE" | "CONNECTION_PROPERTY"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Options for PDF export. */ declare class PdfOptions { /** * Indicates whether to include complete Liveboard. */ 'complete_liveboard'?: boolean | null; /** * Indicates whether to include cover page with the Liveboard title. */ 'include_cover_page'?: boolean | null; /** * Indicates whether to include customized wide logo in the footer if available. */ 'include_custom_logo'?: boolean | null; /** * Indicates whether to include a page with all applied filters. */ 'include_filter_page'?: boolean | null; /** * Indicates whether to include page number in the footer of each page */ 'include_page_number'?: boolean | null; /** * Text to include in the footer of each page. */ 'page_footer_text'?: string | null; /** * Page orientation of the PDF. */ 'page_orientation'?: string | null; /** * Page size. */ 'page_size'?: PdfOptionsPageSizeEnum | null; /** * Indicates whether to include only first page of the tables. */ 'truncate_table'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type PdfOptionsPageSizeEnum = "A4" | "TAB_BASED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details of users or groups. */ declare class PermissionInput { 'principal': PrincipalsInput; /** * Object share mode. */ 'share_mode': PermissionInputShareModeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type PermissionInputShareModeEnum = "READ_ONLY" | "MODIFY" | "NO_ACCESS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PermissionOfMetadataResponse { 'metadata_permission_details'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PermissionOfPrincipalsResponse { 'principal_permission_details'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input reference to a principal (user or group) used when granting or revoking access to a shared resource. */ declare class PrincipalRefInput { /** * Unique identifier of the user or group. */ 'principal_identifier': string; /** * Whether the principal is an individual user or a group. */ 'principal_type': PrincipalRefInputPrincipalTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type PrincipalRefInputPrincipalTypeEnum = "USER" | "USER_GROUP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PrincipalsListItem { /** * Unique ID or name of the user or group. */ 'identifier': string; /** * Principal type. Valid values are */ 'type': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PublishMetadataListItem { /** * Unique ID or name of the metadata. */ 'identifier': string; /** * Type of metadata. Required if identifier is name. */ 'type'?: PublishMetadataListItemTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type PublishMetadataListItemTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PublishMetadataRequest { /** * Metadata objects to be published. */ 'metadata': Array; /** * Unique ID or name of orgs to which metadata objects should be published. */ 'org_identifiers': Array; /** * Skip parameterization validation. By default publishing requires an underlying LOGICAL_TABLE or DATA_SOURCE to carry a template variable with a value for every target org, so each org resolves its own data. Without parameterization every target org reads the owner org\'s data through the owner org\'s connection. Set this to true only when that is intended. */ 'skip_validation'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for variable value put operations */ declare class VariablePutAssignmentInput { /** * Values of the variable */ 'assigned_values': Array; /** * The unique name of the org */ 'org_identifier'?: string | null; /** * Principal type */ 'principal_type'?: VariablePutAssignmentInputPrincipalTypeEnum | null; /** * Unique ID or name of the principal */ 'principal_identifier'?: string | null; /** * Unique ID of the model */ 'model_identifier'?: string | null; /** * Priority level */ 'priority'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type VariablePutAssignmentInputPrincipalTypeEnum = "USER" | "USER_GROUP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class PutVariableValuesRequest { /** * Operation to perform */ 'operation'?: PutVariableValuesRequestOperationEnum; /** * Variable assignments */ 'variable_assignment': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type PutVariableValuesRequestOperationEnum = "ADD" | "REMOVE" | "REPLACE" | "RESET"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class QueryGetDecomposedQueryRequest { /** * List of answer unique identifiers (GUIDs) whose data will be used to guide the response. */ 'answerIds'?: Array; /** * User provided content like text data, csv data as a string message to provide context & potentially improve the quality of the response. */ 'content'?: Array; /** * Unique identifier to denote current conversation. */ 'conversationId'?: string; /** * List of liveboard unique identifiers (GUIDs) whose data will be used to guide the response. */ 'liveboardIds'?: Array; /** * Maximum number of decomposed queries that is allowed in the response, default = 5. */ 'maxDecomposedQueries'?: number; /** * NLSRequest object containing user query & instructions. */ 'nlsRequest'?: InputEurekaNLSRequest; /** * List of worksheetIds to provide context for decomposing user query into analytical queries that can be run on them. */ 'worksheetIds'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Recipient configuration which includes email address, ID or name of the users and groups. */ declare class RecipientDetails { /** * Emails of the recipients. Specify email address if the recipient is not a ThoughtSpot user. */ 'emails'?: Array | null; /** * List of user or groups to subscribe for the scheduled job notifications. */ 'principals'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RepoConfigObject { /** * Remote repository URL configured */ 'repository_url'?: string | null; /** * Username to authenticate connection to the version control system */ 'username'?: string | null; /** * Name of the remote branch where objects from this Thoughtspot instance will be versioned. */ 'commit_branch_name'?: string | null; /** * Branches that have been pulled in local repository */ 'branches'?: Array | null; /** * Maintain mapping of guid for the deployment to an instance */ 'enable_guid_mapping'?: boolean | null; /** * Name of the branch where the configuration files related to operations between Thoughtspot and version control repo should be maintained. */ 'configuration_branch_name'?: string | null; 'org'?: Org; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ResetUserPasswordRequest { /** * New password for the user. */ 'new_password': string; /** * GUID or name of the user. */ 'user_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * MCP (Model Context Protocol) resource — typically a connector-provided artifact such as a document excerpt. */ declare class ResourceResponseItem { /** * Variant discriminator. Always `\"resource\"`. */ 'type': string; /** * Milliseconds since Unix epoch when this item was produced. */ 'timestamp_in_millis': any | null; /** * True when the item represents internal agent reasoning rather than user-facing output. */ 'is_thinking'?: boolean | null; /** * Human-readable label for the agent step producing this item. */ 'step_title'?: string | null; /** * Human-readable title of the resource. */ 'title': string; /** * Resource URI. */ 'uri': string; /** * Original name or filename. */ 'name'?: string | null; /** * MIME type. */ 'mime_type'?: string | null; /** * Short description. */ 'description'?: string | null; /** * Size in bytes. */ 'size'?: number | null; /** * Connector instance identifier. */ 'connector_id'?: string | null; /** * Human-readable connector name. */ 'connector_name'?: string | null; /** * Connector slug or type key. */ 'connector_slug'?: string | null; /** * Underlying transport protocol used by the MCP connector. See `TransportType` for accepted values. */ 'transport_type'?: ResourceResponseItemTransportTypeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ResourceResponseItemTransportTypeEnum = "STREAMABLE_HTTP" | "SSE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The object representation with activation link. */ declare class ResponseActivationURL { /** * Activation link to activate the user. */ 'activation_link'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ResponseCopyObject { /** * The unique identifier of the object. */ 'metadata_id'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Custom action details */ declare class ResponseCustomAction { 'action_details': ActionDetails; 'default_action_config': DefaultActionConfig; /** * Unique Id of the custom action. */ 'id': string; /** * Custom object ID (obj_id) of the custom action, if one is set. Version: 26.9.0.cl or later */ 'obj_id'?: string | null; /** * Metadata objects to assign the the custom action to. */ 'metadata_association'?: Array | null; /** * Unique name of the custom action. */ 'name': string; /** * Unique ID or name of the User groups which are associated with the custom action. */ 'user_groups'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Unique ID of the failed worksheet. */ declare class ResponseFailedEntity { 'id': string; /** * Name of the worksheet that failed to convert. */ 'name': string; /** * Error details related to the failed conversion. */ 'error': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Wrapper for the failed entities, as they are inside a \'data\' field in the response. */ declare class ResponseFailedEntities { 'data': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Unique ID of the incomplete worksheet. */ declare class ResponseIncompleteEntity { 'id': string; /** * Name of the incomplete worksheet. */ 'name': string; /** * Error details related to the incomplete conversion. */ 'error': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Wrapper for the incomplete entities, as they are inside a \'data\' field in the response. */ declare class ResponseIncompleteEntities { 'data': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ResponseMessage { /** * Unique identifier of the generated response. */ 'session_identifier'?: string | null; /** * Generate number of the response. */ 'generation_number'?: number | null; /** * Type of the generated response. */ 'message_type': ResponseMessageMessageTypeEnum; /** * Generated visualization type. */ 'visualization_type'?: ResponseMessageVisualizationTypeEnum | null; /** * Tokens for the response. */ 'tokens'?: string | null; /** * User friendly tokens for the response. */ 'display_tokens'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ResponseMessageMessageTypeEnum = "TSAnswer"; type ResponseMessageVisualizationTypeEnum = "Chart" | "CHART" | "Table" | "TABLE" | "Undefined" | "UNDEFINED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Unique ID of the worksheet that failed post-upgrade. */ declare class ResponsePostUpgradeFailedEntity { 'id': string; /** * Name of the worksheet that failed post-upgrade. */ 'name': string; /** * Error details related to the post-upgrade failure. */ 'error': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Wrapper for the post-upgrade failed entities, as they are inside a \'data\' field in the response. */ declare class ResponsePostUpgradeFailedEntities { 'data': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Schedule run response object */ declare class ResponseScheduleRun { /** * GUID of the scheduled job. */ 'id': string; /** * Schedule run start time in milliseconds. */ 'start_time_in_millis': number; /** * Schedule run end time in milliseconds. */ 'end_time_in_millis': number; /** * Status of the schedule run. */ 'status': string; /** * Message details related to the schedule run. */ 'detail'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ResponseSchedule { 'author': Author; /** * Schedule creation time in milliseconds. */ 'creation_time_in_millis': any | null; /** * Description of the job. */ 'description'?: string | null; /** * Export file format. */ 'file_format': string; 'frequency': Frequency; /** * GUID of the scheduled job. */ 'id': string; 'liveboard_options'?: LiveboardOptions; 'metadata': MetadataResponse; /** * Name of the scheduled job. */ 'name': string; 'pdf_options'?: PdfOptions; 'recipient_details': RecipientDetails; /** * Status of the job */ 'status'?: string | null; /** * Time zone */ 'time_zone': string; /** * Schedule runs history records. */ 'history_runs'?: Array | null; /** * Personalised view id of the liveboard to be scheduled. */ 'personalised_view_id'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Unique ID of the worksheet. */ declare class ResponseSuccessfulEntity { 'id': string; /** * Name of the worksheet. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Wrapper for the successful entities, as they are inside a \'data\' field in the response. */ declare class ResponseSuccessfulEntities { 'data': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Name of the conversion process, which involves converting worksheets to models. */ declare class ResponseWorksheetToModelConversion { 'name': string; /** * The number of worksheets successfully converted to models. */ 'success_count': number; /** * The number of worksheets that failed to convert. */ 'failure_count': number; /** * The number of worksheets that were incomplete during the conversion process. */ 'incomplete_count': number; /** * The number of worksheets that failed after an upgrade during the conversion process. */ 'post_upgrade_failed_count': number; /** * The total time taken to complete the conversion process in milliseconds. */ 'total_time_in_millis': number; 'successful_entities': ResponseSuccessfulEntities; 'failed_entities': ResponseFailedEntities; 'incomplete_entities': ResponseIncompleteEntities; 'post_upgrade_failed_entities': ResponsePostUpgradeFailedEntities; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RevertCommitRequest { /** * Metadata objects. */ 'metadata'?: Array; /** * Name of the branch where the reverted version should be committed Note: If no branch_name is specified, then the commit_branch_name will be considered. */ 'branch_name'?: string; /** * Policy to apply when reverting a commit. Valid values: [ALL_OR_NONE, PARTIAL] */ 'revert_policy'?: RevertCommitRequestRevertPolicyEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type RevertCommitRequestRevertPolicyEnum = "ALL_OR_NONE" | "PARTIAL"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RevertedMetadata { /** * Name of the file deployed */ 'file_name': string; /** * Name of the metadata object */ 'metadata_name': string; /** * Type of the metadata object */ 'metadata_type': string; /** * Indicates the status of deployment for the file */ 'status_code': string; /** * Any error or warning with the deployment */ 'status_message': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RevertResponse { 'committer'?: CommiterType; 'author'?: AuthorType; /** * Comments associated with the commit */ 'comment'?: string | null; /** * Time at which the changes were committed. */ 'commit_time'?: string | null; /** * SHA id associated with the commit */ 'commit_id'?: string | null; /** * Branch where changes were committed */ 'branch'?: string | null; /** * Files that were pushed as part of this commit */ 'committed_files'?: Array | null; /** * Metadata of reverted file of this commit */ 'reverted_metadata'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RevokeRefreshTokensRequest { /** * Unique ID or name of the configuration. When provided, the refresh tokens of the users associated with the connection configuration will be revoked. */ 'configuration_identifiers'?: Array; /** * Unique ID or name of the users. When provided, the refresh tokens of the specified users will be revoked. If the request includes the user ID or name of the connection author, their token will also be revoked. */ 'user_identifiers'?: Array; /** * Unique ID or name of the Org. When provided, the refresh tokens of all users associated with the published connection in the Org will be revoked. This parameter is valid only for published connections. Using it with unpublished connections will result in an error. */ 'org_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RevokeRefreshTokensResponse { /** * Result message describing the outcome of the refresh token revocation operation. */ 'data': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RevokeTokenRequest { 'user_identifier'?: string; 'token'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RiseGQLArgWrapper { 'name': string; 'type': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RiseSetter { 'field': string; 'path': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class Role { /** * id of the role */ 'id'?: string | null; /** * name of the role */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class RoleResponse { /** * Unique Id of the role. */ 'id': string; /** * Name of the role */ 'name': string; /** * Description of the role */ 'description': string; /** * number of groups assigned with this role */ 'groups_assigned_count'?: number | null; /** * Orgs in which role exists. */ 'orgs'?: Array | null; /** * Details of groups assigned with this role */ 'groups'?: Array | null; /** * Privileges granted to the role. */ 'privileges': Array; /** * Permission details of the Role */ 'permission'?: RoleResponsePermissionEnum | null; /** * Unique identifier of author of the role. */ 'author_id'?: string | null; /** * Unique identifier of modifier of the role. */ 'modifier_id'?: string | null; /** * Creation time of the role in milliseconds. */ 'creation_time_in_millis'?: any | null; /** * Last modified time of the role in milliseconds. */ 'modification_time_in_millis'?: any | null; /** * Indicates whether the role is deleted. */ 'deleted'?: boolean | null; /** * Indicates whether the role is deprecated. */ 'deprecated'?: boolean | null; /** * Indicates whether the role is external. */ 'external'?: boolean | null; /** * Indicates whether the role is hidden. */ 'hidden'?: boolean | null; /** * Indicates whether the role is shared via connection */ 'shared_via_connection'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type RoleResponsePrivilegesEnum = "USERDATAUPLOADING" | "DATADOWNLOADING" | "DATAMANAGEMENT" | "SHAREWITHALL" | "JOBSCHEDULING" | "A3ANALYSIS" | "BYPASSRLS" | "DISABLE_PINBOARD_CREATION" | "DEVELOPER" | "APPLICATION_ADMINISTRATION" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "SYSTEM_INFO_ADMINISTRATION" | "SYNCMANAGEMENT" | "ORG_ADMINISTRATION" | "ROLE_ADMINISTRATION" | "AUTHENTICATION_ADMINISTRATION" | "BILLING_INFO_ADMINISTRATION" | "CONTROL_TRUSTED_AUTH" | "TAGMANAGEMENT" | "LIVEBOARD_VERIFIER" | "CAN_MANAGE_CUSTOM_CALENDAR" | "CAN_CREATE_OR_EDIT_CONNECTIONS" | "CAN_MANAGE_WORKSHEET_VIEWS_TABLES" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "CAN_CREATE_CATALOG" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_MANAGE_VARIABLES" | "CAN_MODIFY_FOLDERS" | "CAN_VIEW_FOLDERS" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "CAN_SETUP_VERSION_CONTROL" | "PREVIEW_THOUGHTSPOT_SAGE" | "CAN_MANAGE_WEBHOOKS" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; type RoleResponsePermissionEnum = "READ_ONLY" | "MODIFY" | "NO_ACCESS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * List of runtime parameters need to set during the session. */ declare class RuntimeFilter { /** * Runtime filter parameter type in JWT. */ 'runtime_filter'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * List of runtime parameters need to set during the session. */ declare class RuntimeParamOverride { /** * Runtime param override type in JWT. */ 'runtime_param_override'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * List of runtime parameters need to set during the session. */ declare class RuntimeSort { /** * Runtime sort parameter type in JWT. */ 'runtime_sort'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ScheduleHistoryRunsOptionsInput { /** * Indicates whether to fetch history runs for the scheduled notification. */ 'include_history_runs'?: boolean | null; /** * Indicates the max number of records that can be fetched as past runs of any scheduled job. */ 'record_size'?: number | null; /** * Indicates the starting record number from where history runs records should be fetched. */ 'record_offset'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class Scope { /** * Object access scope type. */ 'access_type': string; /** * Unique identifier of the Org. */ 'org_id'?: number | null; /** * Unique identifier of the metadata. */ 'metadata_id'?: string | null; /** * Org scope the token is authorized for. Absent for a legacy single-org token. Version: 26.10.0.cl or later */ 'org_scope'?: ScopeOrgScopeEnum | null; /** * Orgs the token is authorized for when org_scope is SPECIFIC_ORGS. Version: 26.10.0.cl or later */ 'org_ids'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ScopeOrgScopeEnum = "SPECIFIC_ORGS" | "ALL_MEMBER_ORGS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchAnalystsRequest { /** * Unique identifier of an analyst. When provided, fetch mode: the response contains exactly that analyst and the other filters are ignored. */ 'analyst_identifier'?: string; /** * List mode: number of records per page. Default 50, maximum 500. */ 'record_size'?: number; /** * List mode: zero-based index of the first record to return. Maximum 10000. */ 'record_offset'?: number; /** * List mode: case-insensitive substring match on the analyst name. */ 'query'?: string; /** * List mode: ownership filter — ALL (created by or shared with me), CREATED_BY_ME, or SHARED_TO_ME. */ 'type'?: SearchAnalystsRequestTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchAnalystsRequestTypeEnum = "ALL" | "CREATED_BY_ME" | "SHARED_TO_ME"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchAuthSettingsRequest { /** * Type of authentication mechanism to retrieve settings for. Currently supports TRUSTED_AUTH. */ 'auth_type': SearchAuthSettingsRequestAuthTypeEnum; /** * Scope of auth settings to retrieve. When absent, both cluster and org settings are returned (subject to caller privileges). Set to CLUSTER to retrieve only cluster-level settings, or ORG to retrieve only org-level settings. */ 'scope'?: SearchAuthSettingsRequestScopeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchAuthSettingsRequestAuthTypeEnum = "TRUSTED_AUTH"; type SearchAuthSettingsRequestScopeEnum = "CLUSTER" | "ORG"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response for searchAuthSettings. Contains auth type and cluster/org-level preferences. */ declare class SearchAuthSettingsResponse { /** * Type of authentication mechanism returned. */ 'auth_type'?: SearchAuthSettingsResponseAuthTypeEnum | null; 'cluster_preferences'?: AuthClusterPreferences; /** * Org-level authentication configurations. Present when org scope was requested and per-org auth feature is enabled. */ 'org_preferences'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchAuthSettingsResponseAuthTypeEnum = "TRUSTED_AUTH"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SortOption { /** * Name of the field to apply the sort on. */ 'field_name'?: SortOptionFieldNameEnum | null; /** * Sort order : ASC(Ascending) or DESC(Descending). */ 'order'?: SortOptionOrderEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SortOptionFieldNameEnum = "DEFAULT" | "NAME" | "DISPLAY_NAME" | "AUTHOR" | "CREATED" | "MODIFIED"; type SortOptionOrderEnum = "ASC" | "DESC"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchCalendarsRequest { /** * Unique ID or name of the connection. */ 'connection_identifier'?: string; /** * Pattern to match for calendar names (use \'%\' for wildcard match). */ 'name_pattern'?: string; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records that should be included. */ 'record_size'?: number; /** * Sort options. */ 'sort_options'?: SortOption; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchChannelHistoryRequest { /** * Type of communication channel to search history for. */ 'channel_type': SearchChannelHistoryRequestChannelTypeEnum; /** * List of job execution record IDs to retrieve. */ 'job_ids'?: Array; /** * List of channel IDs or names to filter by. */ 'channel_identifiers'?: Array; /** * Filter by channel delivery status. */ 'channel_status'?: SearchChannelHistoryRequestChannelStatusEnum; /** * Filter by events that triggered the channel. */ 'events'?: Array; /** * Filter records created on or after this time (epoch milliseconds). */ 'start_epoch_time_in_millis'?: number; /** * Filter records created before this time (epoch milliseconds). Version: 26.7.0.cl or later */ 'end_epoch_time_in_millis'?: number; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchChannelHistoryRequestChannelTypeEnum = "WEBHOOK"; type SearchChannelHistoryRequestChannelStatusEnum = "PENDING" | "RETRY" | "SUCCESS" | "FAILED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response wrapper for channel delivery history. */ declare class SearchChannelHistoryResponse { /** * List of job execution records. */ 'jobs': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Sort options. */ declare class SortOptions { /** * Name of the field to apply the sort on. */ 'field_name'?: SortOptionsFieldNameEnum | null; /** * Sort order : ASC(Ascending) or DESC(Descending). */ 'order'?: SortOptionsOrderEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SortOptionsFieldNameEnum = "NAME" | "DISPLAY_NAME" | "AUTHOR" | "CREATED" | "MODIFIED"; type SortOptionsOrderEnum = "ASC" | "DESC"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchCollectionsRequest { /** * A pattern to match case-insensitive name of the Collection object. Use \'%\' for wildcard match. */ 'name_pattern'?: string; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records that should be included. -1 implies no pagination. */ 'record_size'?: number; /** * Unique GUIDs of collections to search. Note: Collection names cannot be used as identifiers since duplicate names are allowed. */ 'collection_identifiers'?: Array; /** * Filter collections by author. Provide unique IDs or names of users who created the collections. */ 'created_by_user_identifiers'?: Array; /** * Include collection metadata items in the response. */ 'include_metadata'?: boolean | null; /** * Sort options. */ 'sort_options'?: SortOptions; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchCommitsRequest { /** * Unique ID or name of the metadata. */ 'metadata_identifier': string; /** * Type of metadata. */ 'metadata_type'?: SearchCommitsRequestMetadataTypeEnum; /** * Name of the branch from which commit history needs to be displayed. Note: If no branch_name is specified, then commits will be returned for the default branch for this configuration. */ 'branch_name'?: string; /** * Record offset point in the commit history to display the response. Note: If no record offset is specified, the beginning of the record will be considered. */ 'record_offset'?: number; /** * Number of history records from record offset point to be displayed in the response. Note: If no record size is specified, then all the records will be considered. */ 'record_size'?: number; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchCommitsRequestMetadataTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "CUSTOM_ACTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchCommunicationChannelPreferencesRequest { /** * Event types to search for in cluster-level preferences. */ 'cluster_preferences'?: Array; /** * Org-specific search criteria. */ 'org_preferences'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchCommunicationChannelPreferencesRequestClusterPreferencesEnum = "LIVEBOARD_SCHEDULE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchConfigRequest { /** * Applicable when Orgs is enabled in the cluster List of Org ids or name. Provide value -1 for cluster level. Example : [\"OrgID1-or-Name1\", \"OrgID2-or-Name2\"] Note: If no value is specified, then the configurations will be returned for all orgs the user has access to Version: 9.5.0.cl or later */ 'org_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SortOptionInput { /** * Name of the field to apply the sort on. */ 'field_name'?: SortOptionInputFieldNameEnum | null; /** * Sort order : ASC(Ascending) or DESC(Descending). */ 'order'?: SortOptionInputOrderEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SortOptionInputFieldNameEnum = "NAME" | "DISPLAY_NAME" | "AUTHOR" | "CREATED" | "MODIFIED" | "LAST_ACCESSED" | "SYNCED" | "VIEWS" | "USER_STATE" | "ROW_COUNT"; type SortOptionInputOrderEnum = "ASC" | "DESC"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchConnectionRequest { /** * List of connections and name pattern */ 'connections'?: Array; /** * Array of types of data warehouse defined for the connection. */ 'data_warehouse_types'?: Array; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records that should be included. */ 'record_size'?: number; /** * Unique ID or name of tags. */ 'tag_identifiers'?: Array; /** * Data warehouse object type. */ 'data_warehouse_object_type'?: SearchConnectionRequestDataWarehouseObjectTypeEnum; /** * Sort options. */ 'sort_options'?: SortOptionInput; /** * Indicates whether to include complete details of the connection objects. */ 'include_details'?: boolean | null; /** * Configuration values. If empty we are fetching configuration from datasource based on given connection id. If required you can provide config details to fetch specific details. Example input: {}, {\"warehouse\":\"SMALL_WH\",\"database\":\"DEVELOPMENT\"}. This is only applicable when data_warehouse_object_type is selected. */ 'configuration'?: any | null; /** * List of authentication types to fetch data_ware_house_objects from external Data warehouse. This is only applicable when data_warehouse_object_type is selected. */ 'authentication_type'?: SearchConnectionRequestAuthenticationTypeEnum; /** *
Version: 10.9.0.cl or later
Indicates whether to show resolved parameterised values. */ 'show_resolved_parameters'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchConnectionRequestDataWarehouseTypesEnum = "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"; type SearchConnectionRequestDataWarehouseObjectTypeEnum = "DATABASE" | "SCHEMA" | "TABLE" | "COLUMN"; type SearchConnectionRequestAuthenticationTypeEnum = "SERVICE_ACCOUNT" | "OAUTH" | "IAM" | "EXTOAUTH" | "OAUTH_WITH_SERVICE_PRINCIPAL" | "PERSONAL_ACCESS_TOKEN" | "KEY_PAIR" | "OAUTH_WITH_PKCE" | "EXTOAUTH_WITH_PKCE" | "OAUTH_WITH_PEZ" | "OAUTH_CLIENT_CREDENTIALS" | "OAUTH_CLIENT_CREDENTIALS_WITH_X509"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchConnectionResponse { /** * Unique ID of the connection. */ 'id': string; /** * Name of the connection. */ 'name': string; /** * Custom object ID (obj_id) of the connection, if one is set. Version: 26.9.0.cl or later */ 'obj_id'?: string | null; /** * Description of the connection. */ 'description'?: string | null; /** * Type of data warehouse. */ 'data_warehouse_type': SearchConnectionResponseDataWarehouseTypeEnum; 'data_warehouse_objects'?: DataWarehouseObjects; /** * Details of the connection. */ 'details'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchConnectionResponseDataWarehouseTypeEnum = "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"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchCustomActionsRequest { /** * Name or ID of the custom action. */ 'custom_action_identifier'?: string; /** * A pattern to match case-insensitive name of the custom-action object. */ 'name_pattern'?: string; /** * Default Custom action configuration. This includes if the custom action is available on all visualizations. By default, a custom action is added to all visualizations and Answers. */ 'default_action_config'?: DefaultActionConfigSearchInput; /** * When set to true, returns the associated groups for a custom action. */ 'include_group_associations'?: boolean | null; /** * When set to true, returns the associated metadata for a custom action. */ 'include_metadata_associations'?: boolean | null; /** * Search with a given metadata identifier. */ 'metadata'?: Array; /** * Filter the action objects based on type */ 'type'?: SearchCustomActionsRequestTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchCustomActionsRequestTypeEnum = "CALLBACK" | "URL"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchDataRequest { /** * Query string with search tokens. For example, [Sales][Region]. See [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_search_data_api) */ 'query_string': string; /** * GUID of the data source object, such as a Worksheet, View, or Table. You can find the GUID of a data object from the UI or via API. See [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_search_query) for more details. */ 'logical_table_identifier': string; /** * JSON output in compact or full format. The FULL option is available in 9.12.5.cl or later. */ 'data_format'?: SearchDataRequestDataFormatEnum; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records to include in a batch. */ 'record_size'?: number; /** * JSON object with representing filter condition to apply filters at runtime. For example, {\"col1\": \"item type\", \"op1\": \"EQ\", \"val1\": \"Bags\"} . You can add multiple keys by incrementing the number at the end, for example, col2, op2, val2, and col3, op3, val3. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_filters). */ 'runtime_filter'?: any | null; /** * JSON object representing columns to sort data at runtime. For example, {\"sortCol1\": \"sales\", \"asc1\": true} . You can add multiple keys by incrementing the number at the end, for example, sortCol1, asc2. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_sort). */ 'runtime_sort'?: any | null; /** * JSON object for setting values of parameters at runtime. For example, {\"param1\": \"Double List Param\", \"paramVal1\": 0.5}. You can add multiple keys by incrementing the number at the end, for example, param2, paramVal2. For more information, see [API Documentation](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_parameters). */ 'runtime_param_override'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchDataRequestDataFormatEnum = "FULL" | "COMPACT"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response format associated with the search data API. */ declare class SearchDataResponse { /** * Data content of metadata objects */ 'contents': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Result of a dataset discovery step. */ declare class SearchDatasetsResponseItem { /** * Variant discriminator. Always `\"search_datasets\"`. */ 'type': string; /** * Milliseconds since Unix epoch when this item was produced. */ 'timestamp_in_millis': any | null; /** * True when the item represents internal agent reasoning rather than user-facing output. */ 'is_thinking'?: boolean | null; /** * Human-readable label for the agent step producing this item. */ 'step_title'?: string | null; /** * Summary message describing the dataset search results. */ 'text': string; /** * Dataset descriptors returned by the `search_datasets` tool. */ 'data_sources'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchEmailCustomizationRequest { /** * Unique ID or name of org Version: 10.12.0.cl or later */ 'org_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchFeaturesRequest { /** * Determines the administrative view for the search. Use CLUSTER for the cluster-admin view (returns org assignments per feature); use ORG for the org-admin view (returns the current value of each feature assigned to the org). */ 'scope': SearchFeaturesRequestScopeEnum; /** * Numeric ID of the Org to scope the search to. Required when scope is ORG; ignored when scope is CLUSTER. */ 'org_identifier'?: number; /** * Category of features to return. GENERAL_ACCESS returns features that are generally available; EARLY_ACCESS returns features still in early access. Defaults to GENERAL_ACCESS. */ 'category'?: SearchFeaturesRequestCategoryEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchFeaturesRequestScopeEnum = "CLUSTER" | "ORG"; type SearchFeaturesRequestCategoryEnum = "GENERAL_ACCESS" | "EARLY_ACCESS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchMetadataRequest { /** * Metadata objects such as Liveboards, Answers, and Worksheets. */ 'metadata'?: Array; /** * Object permission details to search by. */ 'permissions'?: Array; /** * GUID or name of user who created the metadata object. */ 'created_by_user_identifiers'?: Array; /** * Version of the dependent table of the metadata objects like Worksheets. */ 'dependent_object_version'?: SearchMetadataRequestDependentObjectVersionEnum; /** * List of metadata objects to exclude from search. */ 'exclude_objects'?: Array; /** * Options to sort the API response by objects set as favorites for the logged-in user or the users specified in the API request. */ 'favorite_object_options'?: FavoriteObjectOptionsInput; /** * Includes system-generated metadata objects. */ 'include_auto_created_objects'?: boolean | null; /** * Includes dependents of the metadata object specified in the API request. For example, a worksheet can consist of dependent objects such as Liveboards or Answers. */ 'include_dependent_objects'?: boolean | null; /** * The maximum number of dependents to include per metadata object. */ 'dependent_objects_record_size'?: number; /** * Includes complete details of the metadata objects. */ 'include_details'?: boolean | null; /** * When set to true and include_details is also true, includes personalised views in the metadata_detail for LIVEBOARD objects. Personalised views are also included when liveboard_details.personalized_views is true. */ 'include_personalised_views'?: boolean | null; /** *
Version: 26.10.0.cl or later
Selects which parts of a Liveboard\'s `metadata_detail` are returned, so that a request can skip the parts it does not need. Applies only to `LIVEBOARD` objects, and only when `include_details` is `true` and `liveboard_response_version` is `V2`. Otherwise it is ignored. * `liveboard_filters`, `liveboard_tabs`, `container_layouts`, `visualizations`, `parameter_overrides`: default to `true`. Set a field to `false` to exclude that part of the Liveboard. * `personalized_views`: defaults to `false`. Personalised views are included when either this field or `include_personalised_views` is `true`. The Liveboard header, type, and style are always returned. Excluded collections are returned empty. To fetch only the personalised views of a Liveboard, set every other field to `false`. The Liveboard definition is then not loaded, and `metadata_detail` contains only `personalised_views`: ```json \"liveboard_details\": { \"liveboard_filters\": false, \"liveboard_tabs\": false, \"container_layouts\": false, \"visualizations\": false, \"parameter_overrides\": false, \"personalized_views\": true } ``` */ 'liveboard_details'?: LiveboardDetailsInput; /** * Includes headers of the metadata objects. */ 'include_headers'?: boolean | null; /** * Includes details of the hidden objects, such as a column in a worksheet or a table. */ 'include_hidden_objects'?: boolean | null; /** * Includes objects with incomplete metadata. */ 'include_incomplete_objects'?: boolean | null; /** * Includes visualization headers of the specified Liveboard object. */ 'include_visualization_headers'?: boolean | null; /** * If search assistance lessons are configured on a worksheet, the API returns the search assist data for Worksheet objects. */ 'include_worksheet_search_assist_data'?: boolean | null; /** * Includes ID or names of the users who modified the metadata object. */ 'modified_by_user_identifiers'?: Array; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records that should be included. It is recommended to use a smaller `record_size` when fetching dependent objects or any of the additional metadata detail options. */ 'record_size'?: number; /** * Sort options to filter metadata details. */ 'sort_options'?: MetadataSearchSortOptions; /** * Tags to filter metadata objects by */ 'tag_identifiers'?: Array; /** * Indicates whether to include stats of the metadata objects. */ 'include_stats'?: boolean | null; /** *
Version: 10.7.0.cl or later
Boolean to indicate whether to include discoverable metadata objects. */ 'include_discoverable_objects'?: boolean | null; /** *
Version: 10.9.0.cl or later
Indicates whether to show resolved parameterised values. */ 'show_resolved_parameters'?: boolean | null; /** * Indicates the model version of Liveboard to be attached in metadata detail. */ 'liveboard_response_version'?: SearchMetadataRequestLiveboardResponseVersionEnum; /** *
Version: 10.11.0.cl or later
If only published objects should be returned */ 'include_only_published_objects'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchMetadataRequestDependentObjectVersionEnum = "V1" | "V2"; type SearchMetadataRequestLiveboardResponseVersionEnum = "V1" | "V2"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchOrgsRequest { /** * ID or name of the Org */ 'org_identifier'?: string; /** * Description of the Org */ 'description'?: string; /** * Visibility of the Org */ 'visibility'?: SearchOrgsRequestVisibilityEnum; /** * Status of the Org */ 'status'?: SearchOrgsRequestStatusEnum; /** * GUIDs or names of the users for which you want to retrieve the Orgs data */ 'user_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchOrgsRequestVisibilityEnum = "SHOW" | "HIDDEN"; type SearchOrgsRequestStatusEnum = "ACTIVE" | "IN_ACTIVE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response for search role api should handle hidden privileges as well. */ declare class SearchRoleResponse { /** * Unique Id of the role. */ 'id': string; /** * Name of the role */ 'name': string; /** * Custom object ID (obj_id) of the role, if one is set. Version: 26.9.0.cl or later */ 'obj_id'?: string | null; /** * Description of the role */ 'description': string; /** * number of groups assigned with this role */ 'groups_assigned_count'?: number | null; /** * Orgs in which role exists. */ 'orgs'?: Array | null; /** * Details of groups assigned with this role */ 'groups'?: Array | null; /** * Privileges granted to the role. */ 'privileges': Array; /** * Permission details of the Role */ 'permission'?: SearchRoleResponsePermissionEnum | null; /** * Unique identifier of author of the role. */ 'author_id'?: string | null; /** * Unique identifier of modifier of the role. */ 'modifier_id'?: string | null; /** * Creation time of the role in milliseconds. */ 'creation_time_in_millis'?: any | null; /** * Last modified time of the role in milliseconds. */ 'modification_time_in_millis'?: any | null; /** * Indicates whether the role is deleted. */ 'deleted'?: boolean | null; /** * Indicates whether the role is deprecated. */ 'deprecated'?: boolean | null; /** * Indicates whether the role is external. */ 'external'?: boolean | null; /** * Indicates whether the role is hidden. */ 'hidden'?: boolean | null; /** * Indicates whether the role is shared via connection */ 'shared_via_connection'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchRoleResponsePrivilegesEnum = "UNKNOWN" | "ADMINISTRATION" | "AUTHORING" | "USERDATAUPLOADING" | "DATADOWNLOADING" | "USERMANAGEMENT" | "SECURITYMANAGEMENT" | "LOGICALMODELING" | "DATAMANAGEMENT" | "TAGMANAGEMENT" | "SHAREWITHALL" | "SYSTEMMANAGEMENT" | "JOBSCHEDULING" | "A3ANALYSIS" | "EXPERIMENTALFEATUREPRIVILEGE" | "BYPASSRLS" | "RANALYSIS" | "DISABLE_PINBOARD_CREATION" | "DEVELOPER" | "APPLICATION_ADMINISTRATION" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "BACKUP_ADMINISTRATION" | "SYSTEM_INFO_ADMINISTRATION" | "ENABLESPOTAPPCREATION" | "SYNCMANAGEMENT" | "ORG_ADMINISTRATION" | "ROLE_ADMINISTRATION" | "AUTHENTICATION_ADMINISTRATION" | "BILLING_INFO_ADMINISTRATION" | "PREVIEW_THOUGHTSPOT_SAGE" | "LIVEBOARD_VERIFIER" | "CAN_MANAGE_CUSTOM_CALENDAR" | "CAN_CREATE_OR_EDIT_CONNECTIONS" | "CAN_CONFIGURE_CONNECTIONS" | "CAN_MANAGE_WORKSHEET_VIEWS_TABLES" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "CONTROL_TRUSTED_AUTH" | "CAN_CREATE_CATALOG" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "CAN_VIEW_FOLDERS" | "CAN_MODIDY_FOLDERS" | "CAN_MANAGE_VARIABLES" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_SETUP_VERSION_CONTROL" | "CAN_MANAGE_WEBHOOKS" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; type SearchRoleResponsePermissionEnum = "READ_ONLY" | "MODIFY" | "NO_ACCESS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchRolesRequest { /** * unique ID or name of the Roles */ 'role_identifiers'?: Array; /** * Unique Id or name of the Organisation */ 'org_identifiers'?: Array; /** * Unique Id or name of the User Group */ 'group_identifiers'?: Array; /** * Privileges assigned to the Role. See [Documentation](https://developers.thoughtspot.com/docs/rbac#_role_categories_and_privileges)for supported roles privileges. */ 'privileges'?: Array; /** * Indicates whether the Role is deprecated. * @deprecated */ 'deprecated'?: boolean | null; /** * Indicates whether the Role is external * @deprecated */ 'external'?: boolean | null; /** * Indicates whether the Role is shared via connection * @deprecated */ 'shared_via_connection'?: boolean | null; /** * Permission details of the Role * @deprecated */ 'permissions'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchRolesRequestPrivilegesEnum = "UNKNOWN" | "ADMINISTRATION" | "AUTHORING" | "USERDATAUPLOADING" | "DATADOWNLOADING" | "USERMANAGEMENT" | "SECURITYMANAGEMENT" | "LOGICALMODELING" | "DATAMANAGEMENT" | "TAGMANAGEMENT" | "SHAREWITHALL" | "SYSTEMMANAGEMENT" | "JOBSCHEDULING" | "A3ANALYSIS" | "EXPERIMENTALFEATUREPRIVILEGE" | "BYPASSRLS" | "RANALYSIS" | "DISABLE_PINBOARD_CREATION" | "DEVELOPER" | "APPLICATION_ADMINISTRATION" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "BACKUP_ADMINISTRATION" | "SYSTEM_INFO_ADMINISTRATION" | "ENABLESPOTAPPCREATION" | "SYNCMANAGEMENT" | "ORG_ADMINISTRATION" | "ROLE_ADMINISTRATION" | "AUTHENTICATION_ADMINISTRATION" | "BILLING_INFO_ADMINISTRATION" | "PREVIEW_THOUGHTSPOT_SAGE" | "LIVEBOARD_VERIFIER" | "CAN_MANAGE_CUSTOM_CALENDAR" | "CAN_CREATE_OR_EDIT_CONNECTIONS" | "CAN_CONFIGURE_CONNECTIONS" | "CAN_MANAGE_WORKSHEET_VIEWS_TABLES" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "CONTROL_TRUSTED_AUTH" | "CAN_CREATE_CATALOG" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "CAN_VIEW_FOLDERS" | "CAN_MODIDY_FOLDERS" | "CAN_MANAGE_VARIABLES" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_SETUP_VERSION_CONTROL" | "CAN_MANAGE_WEBHOOKS" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; type SearchRolesRequestPermissionsEnum = "READ_ONLY" | "MODIFY" | "NO_ACCESS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Sort options. */ declare class SortingOptions { /** * Name of the field to apply the sort on. */ 'field_name'?: string | null; /** * Sort order : ASC(Ascending) or DESC(Descending). */ 'order'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchSchedulesRequest { /** * Metadata objects associated with the scheduled jobs. */ 'metadata'?: Array; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records that should be included. */ 'record_size'?: number; /** * Sort options. */ 'sort_options'?: SortingOptions; /** * Options while fetching history runs for the schedule. */ 'history_runs_options'?: ScheduleHistoryRunsOptionsInput; /** * unique ID or name of the Schedule */ 'schedule_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchSecuritySettingsRequest { /** * Scope of security settings to retrieve. CLUSTER returns cluster-level settings, ORG returns org-level settings for the current org. If not specified, returns both cluster and org settings based on user privileges. */ 'scope'?: SearchSecuritySettingsRequestScopeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchSecuritySettingsRequestScopeEnum = "CLUSTER" | "ORG"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Sort options for semantic integration search. */ declare class SemanticIntegrationSortOptions { /** * Name of the field to apply the sort on. */ 'field_name'?: SemanticIntegrationSortOptionsFieldNameEnum | null; /** * Sort order: `ASC` for ascending, `DESC` for descending. */ 'order'?: SemanticIntegrationSortOptionsOrderEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SemanticIntegrationSortOptionsFieldNameEnum = "NAME" | "AUTHOR" | "CREATED_TIME" | "MODIFIED_TIME"; type SemanticIntegrationSortOptionsOrderEnum = "ASC" | "DESC"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchSemanticIntegrationsRequest { /** * Sort options for the search results. */ 'sort_options'?: SemanticIntegrationSortOptions; /** * Number of records to skip for pagination. Minimum value is 0. */ 'record_offset'?: number; /** * Maximum number of records to return. Use 0 to return all records (no pagination). */ 'record_size'?: number; /** * Name filter substring to narrow search results. */ 'pattern'?: string; /** * Filter by author IDs or names who created the integrations. */ 'author_identifiers'?: Array; /** * Filter by connection IDs or names associated with the integrations. */ 'connection_identifiers'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchStyleCustomizationsRequest { /** * Scope of the style preferences to retrieve. CLUSTER returns cluster-level defaults. ORG returns preferences for the authenticated user\'s org, which may override cluster defaults. If not specified, returns both cluster and org preferences based on user privileges. */ 'scope'?: SearchStyleCustomizationsRequestScopeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchStyleCustomizationsRequestScopeEnum = "CLUSTER" | "ORG"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchStyleFontsRequest { /** * Scope of the font library to search. CLUSTER searches the cluster-level library. ORG searches the authenticated user\'s org library. Returns both Cluster and Org level font if omitted. */ 'scope'?: SearchStyleFontsRequestScopeEnum; /** * Filter by UUID or name of a specific font. */ 'font_identifier'?: string; /** * Filter by font display name. Supports partial, case-insensitive matching. */ 'name_pattern'?: string; /** * When true, includes visualization areas this font is assigned to in the response. Defaults to false if omitted. */ 'include_font_assignments'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchStyleFontsRequestScopeEnum = "CLUSTER" | "ORG"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchTagsRequest { /** * Name or Id of the tag. */ 'tag_identifier'?: string; /** * A pattern to match case-insensitive name of the Tag object. */ 'name_pattern'?: string; /** * Color of the tag. */ 'color'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchUserGroupsRequest { /** * GUID of Liveboards that are assigned as default Liveboards to the users in the group. */ 'default_liveboard_identifiers'?: Array; /** * Description of the group */ 'description'?: string; /** * Display name of the group */ 'display_name'?: string; /** * A pattern to match case-insensitive name of the Group object. */ 'name_pattern'?: string; /** * GUID or name of the group */ 'group_identifier'?: string; /** * ID or name of the Org to which the group belongs */ 'org_identifiers'?: Array; /** * Privileges assigned to the group. */ 'privileges'?: Array; /** * GUID or name of the sub groups. A subgroup is a group assigned to a parent group. */ 'sub_group_identifiers'?: Array; /** * Group type. */ 'type'?: SearchUserGroupsRequestTypeEnum; /** * GUID or name of the users assigned to the group. */ 'user_identifiers'?: Array; /** * Visibility of the group. To make a group visible to other users and groups, set the visibility to SHAREABLE. */ 'visibility'?: SearchUserGroupsRequestVisibilityEnum; /** * Filter groups with a list of Roles assigned to a group */ 'role_identifiers'?: Array; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records that should be included. */ 'record_size'?: number; /** * Sort options to filter group details. */ 'sort_options'?: SortOptions; /** *
Version: 10.10.0.cl or later
Define Parameter to consider if the users should be included in group search response. */ 'include_users'?: boolean | null; /** *
Version: 10.10.0.cl or later
Define Parameter to consider if the sub groups should be included in group search response. */ 'include_sub_groups'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchUserGroupsRequestPrivilegesEnum = "ADMINISTRATION" | "AUTHORING" | "USERDATAUPLOADING" | "DATADOWNLOADING" | "USERMANAGEMENT" | "DATAMANAGEMENT" | "SHAREWITHALL" | "JOBSCHEDULING" | "A3ANALYSIS" | "EXPERIMENTALFEATUREPRIVILEGE" | "BYPASSRLS" | "RANALYSIS" | "DEVELOPER" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "SYNCMANAGEMENT" | "CAN_CREATE_CATALOG" | "DISABLE_PINBOARD_CREATION" | "LIVEBOARD_VERIFIER" | "PREVIEW_THOUGHTSPOT_SAGE" | "APPLICATION_ADMINISTRATION" | "SYSTEM_INFO_ADMINISTRATION" | "ORG_ADMINISTRATION" | "ROLE_ADMINISTRATION" | "AUTHENTICATION_ADMINISTRATION" | "BILLING_INFO_ADMINISTRATION" | "CAN_MANAGE_CUSTOM_CALENDAR" | "CAN_CREATE_OR_EDIT_CONNECTIONS" | "CAN_MANAGE_WORKSHEET_VIEWS_TABLES" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_MODIFY_FOLDERS" | "CAN_MANAGE_VARIABLES" | "CAN_VIEW_FOLDERS" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "CAN_SETUP_VERSION_CONTROL" | "CAN_MANAGE_WEBHOOKS" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; type SearchUserGroupsRequestTypeEnum = "LOCAL_GROUP" | "LDAP_GROUP" | "TEAM_GROUP" | "TENANT_GROUP"; type SearchUserGroupsRequestVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchUsersRequest { /** * GUID / name of the user to search */ 'user_identifier'?: string; /** * A unique display name string for the user account, usually their first and last name */ 'display_name'?: string; /** * A pattern to match case-insensitive name of the User object. */ 'name_pattern'?: string; /** * Visibility of the user */ 'visibility'?: SearchUsersRequestVisibilityEnum; /** * Email of the user account */ 'email'?: string; /** * GUID or name of the group to which the user belongs */ 'group_identifiers'?: Array; /** * Privileges assigned to the user */ 'privileges'?: Array; /** * Type of the account */ 'account_type'?: SearchUsersRequestAccountTypeEnum; /** * Current status of the user account. */ 'account_status'?: SearchUsersRequestAccountStatusEnum; /** * User preference for receiving email notifications when another ThoughtSpot user shares a metadata object such as Answer, Liveboard, or Worksheet. */ 'notify_on_share'?: boolean | null; /** * The user preference for revisiting the onboarding experience */ 'show_onboarding_experience'?: boolean | null; /** * Indicates if the user has completed the onboarding walkthrough */ 'onboarding_experience_completed'?: boolean | null; /** * IDs or names of the Orgs to which the user belongs */ 'org_identifiers'?: Array; /** * Unique ID or name of the user\'s home Liveboard. */ 'home_liveboard_identifier'?: string; /** * Metadata objects which are assigned as favorites of the user. */ 'favorite_metadata'?: Array; /** * The starting record number from where the records should be included. */ 'record_offset'?: number; /** * The number of records that should be included. */ 'record_size'?: number; /** * Sort options. */ 'sort_options'?: SortOptions; /** * Filters by the role assigned to the user. */ 'role_identifiers'?: Array; /** * Indicates if the user\'s favorite objects should be displayed. */ 'include_favorite_metadata'?: boolean | null; /** * Indicates if the user\'s formula variable values should be included in the response. */ 'include_variable_values'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchUsersRequestVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; type SearchUsersRequestPrivilegesEnum = "ADMINISTRATION" | "AUTHORING" | "USERDATAUPLOADING" | "DATADOWNLOADING" | "USERMANAGEMENT" | "DATAMANAGEMENT" | "SHAREWITHALL" | "JOBSCHEDULING" | "A3ANALYSIS" | "EXPERIMENTALFEATUREPRIVILEGE" | "BYPASSRLS" | "RANALYSIS" | "DEVELOPER" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "SYNCMANAGEMENT" | "CAN_CREATE_CATALOG" | "DISABLE_PINBOARD_CREATION" | "LIVEBOARD_VERIFIER" | "PREVIEW_THOUGHTSPOT_SAGE" | "APPLICATION_ADMINISTRATION" | "SYSTEM_INFO_ADMINISTRATION" | "ORG_ADMINISTRATION" | "ROLE_ADMINISTRATION" | "AUTHENTICATION_ADMINISTRATION" | "BILLING_INFO_ADMINISTRATION" | "CAN_MANAGE_CUSTOM_CALENDAR" | "CAN_CREATE_OR_EDIT_CONNECTIONS" | "CAN_MANAGE_WORKSHEET_VIEWS_TABLES" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_MODIFY_FOLDERS" | "CAN_MANAGE_VARIABLES" | "CAN_VIEW_FOLDERS" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "CAN_SETUP_VERSION_CONTROL" | "CAN_MANAGE_WEBHOOKS" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; type SearchUsersRequestAccountTypeEnum = "LOCAL_USER" | "LDAP_USER" | "SAML_USER" | "OIDC_USER" | "REMOTE_USER"; type SearchUsersRequestAccountStatusEnum = "ACTIVE" | "INACTIVE" | "EXPIRED" | "LOCKED" | "PENDING" | "SUSPENDED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for filtering variable values by scope in search operations */ declare class ValueScopeInput { /** * The unique name of the org */ 'org_identifier'?: string | null; /** * Type of principal to filter by. Use USER to filter values assigned to specific users, or USER_GROUP to filter values assigned to groups. */ 'principal_type'?: ValueScopeInputPrincipalTypeEnum | null; /** * Unique ID or name of the principal */ 'principal_identifier'?: string | null; /** * Unique ID or name of the model to filter by. Applicable only for FORMULA_VARIABLE type. */ 'model_identifier'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ValueScopeInputPrincipalTypeEnum = "USER" | "USER_GROUP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for variable details in search */ declare class VariableDetailInput { /** * Unique ID, name, or object ID of the variable */ 'identifier'?: string | null; /** * Type of variable */ 'type'?: VariableDetailInputTypeEnum | null; /** * A pattern to match case-insensitive name of the variable. User % for a wildcard match */ 'name_pattern'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type VariableDetailInputTypeEnum = "CONNECTION_PROPERTY" | "TABLE_MAPPING" | "CONNECTION_PROPERTY_PER_PRINCIPAL" | "FORMULA_VARIABLE" | "USER_PROPERTY"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchVariablesRequest { /** * Variable details */ 'variable_details'?: Array; /** * Array of scope filters */ 'value_scope'?: Array; /** * The starting record number from where the records should be included */ 'record_offset'?: number; /** * The number of records that should be included */ 'record_size'?: number; /** * Format in which we want the output */ 'response_content'?: SearchVariablesRequestResponseContentEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchVariablesRequestResponseContentEnum = "METADATA" | "METADATA_AND_VALUES"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookSortOptionsInput { /** * Name of the field to apply the sort on. */ 'field_name'?: WebhookSortOptionsInputFieldNameEnum | null; /** * Sort order: ASC (Ascending) or DESC (Descending). */ 'order'?: WebhookSortOptionsInputOrderEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type WebhookSortOptionsInputFieldNameEnum = "CREATED" | "MODIFIED" | "NAME"; type WebhookSortOptionsInputOrderEnum = "ASC" | "DESC"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SearchWebhookConfigurationsRequest { /** * Unique ID or name of the org. */ 'org_identifier'?: string; /** * Unique ID or name of the webhook. */ 'webhook_identifier'?: string; /** * Type of webhook event to filter by. */ 'event_type'?: SearchWebhookConfigurationsRequestEventTypeEnum; /** * The offset point, starting from where the webhooks should be included in the response. */ 'record_offset'?: number; /** * The number of webhooks that should be included in the response starting from offset position. */ 'record_size'?: number; /** * Sort option includes sort field and sort order. */ 'sort_options'?: WebhookSortOptionsInput; /** * Filter webhooks by status (ENABLED or DISABLED). Version: 26.7.0.cl or later */ 'status'?: SearchWebhookConfigurationsRequestStatusEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SearchWebhookConfigurationsRequestEventTypeEnum = "LIVEBOARD_SCHEDULE"; type SearchWebhookConfigurationsRequestStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Cluster-level security preferences. */ declare class SecuritySettingsClusterPreferences { /** * Support embedded access when third-party cookies are blocked. */ 'enable_partitioned_cookies'?: boolean | null; /** * Allowed origins for CORS. */ 'cors_whitelisted_urls'?: Array | null; 'csp_settings'?: CspSettings; /** * Allowed redirect hosts for SAML login. */ 'saml_redirect_urls'?: Array | null; 'non_embed_access'?: ClusterNonEmbedAccess; /** * Trusted authentication status at the cluster level. Version: 26.6.0.cl or later */ 'trusted_auth_status'?: SecuritySettingsClusterPreferencesTrustedAuthStatusEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SecuritySettingsClusterPreferencesTrustedAuthStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Org details for security settings. */ declare class SecuritySettingsOrgDetails { /** * Unique identifier of the org. */ 'id'?: number | null; /** * Name of the org. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Org-level security preferences. */ declare class SecuritySettingsOrgPreferences { 'org'?: SecuritySettingsOrgDetails; /** * Allowed origins for CORS for this org. */ 'cors_whitelisted_urls'?: Array | null; 'non_embed_access'?: OrgNonEmbedAccess; /** * Trusted authentication status for this org. Version: 26.6.0.cl or later */ 'trusted_auth_status'?: SecuritySettingsOrgPreferencesTrustedAuthStatusEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SecuritySettingsOrgPreferencesTrustedAuthStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response type for security settings search. */ declare class SecuritySettingsResponse { 'cluster_preferences'?: SecuritySettingsClusterPreferences; /** * Org-level security preferences. */ 'org_preferences'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Import details for a single formula. */ declare class SemanticIntegrationFormulaReport { /** * Formula ID in the model. */ 'id'?: string | null; /** * Formula name. */ 'name'?: string | null; /** * Formula description. */ 'description'?: string | null; /** * CDW source expression. */ 'source_expression'?: string | null; /** * ThoughtSpot formula equivalent. */ 'translated_formula'?: string | null; /** * Import status. */ 'import_status'?: SemanticIntegrationFormulaReportImportStatusEnum | null; /** * Change status since last import. Null on initial create. */ 'change_status'?: SemanticIntegrationFormulaReportChangeStatusEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SemanticIntegrationFormulaReportImportStatusEnum = "IMPORTED" | "FAILED" | "SKIPPED"; type SemanticIntegrationFormulaReportChangeStatusEnum = "NEW" | "UPDATED" | "UNCHANGED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Formula import counts summary. */ declare class SemanticIntegrationReportSummary { /** * Total number of formulas. */ 'total'?: number | null; /** * Number of successfully imported formulas. */ 'imported'?: number | null; /** * Number of failed formula imports. */ 'failed'?: number | null; /** * Number of skipped formulas. */ 'skipped'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Per-formula import report for a semantic integration. */ declare class SemanticIntegrationReport { 'summary'?: SemanticIntegrationReportSummary; /** * Formula import details. */ 'formulas'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response object for a semantic integration. */ declare class SemanticIntegrationResponse { /** * Unique identifier of the semantic integration. */ 'id'?: string | null; /** * Name of the semantic integration. */ 'name'?: string | null; /** * Model GUID generated for this integration. */ 'model_id'?: string | null; /** * Model name generated for this integration. */ 'model_name'?: string | null; 'semantic_report'?: SemanticIntegrationReport; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Tag reference associated with a semantic integration. */ declare class SemanticIntegrationTagReference { /** * Unique identifier of the tag. */ 'id'?: string | null; /** * Name of the tag. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Single semantic integration entry returned by search. */ declare class SemanticIntegrationSearchResponse { /** * Unique identifier of the semantic integration. */ 'id'?: string | null; /** * Name of the semantic integration. */ 'name'?: string | null; /** * Optional description of the semantic integration. */ 'description'?: string | null; /** * GUID of the associated ThoughtSpot model generated for this integration. */ 'model_id'?: string | null; /** * Name of the associated ThoughtSpot model. */ 'model_name'?: string | null; /** * How the semantic definition was sourced. */ 'import_type'?: SemanticIntegrationSearchResponseImportTypeEnum | null; /** * CDW connector type. */ 'type'?: SemanticIntegrationSearchResponseTypeEnum | null; /** * GUID of the CDW connection backing the integration. */ 'connection_id'?: string | null; /** * Display name of the CDW connection backing the integration. */ 'connection_name'?: string | null; /** * GUID of the user who created the integration. */ 'author_id'?: string | null; /** * Username of the user who created the integration. */ 'author_name'?: string | null; /** * Creation time in Unix epoch milliseconds. */ 'creation_time_in_millis'?: number | null; /** * Last modification time in Unix epoch milliseconds. */ 'modification_time_in_millis'?: number | null; /** * Tags associated with the integration. */ 'tags'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SemanticIntegrationSearchResponseImportTypeEnum = "CDW" | "FILE"; type SemanticIntegrationSearchResponseTypeEnum = "RDBMS_SNOWFLAKE" | "RDBMS_DATABRICKS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SendAgentConversationMessageRequest { /** * messages to be sent to the agent */ 'messages': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SendAgentConversationMessageStreamingRequest { /** * messages to be sent to the agent */ 'messages': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SendAgentMessageRequest { /** * messages to be sent to the agent */ 'messages': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SendAgentMessageResponse { /** * Indicates whether the agent response was received and processed successfully. */ 'success': boolean; /** * Optional message providing additional context about the operation outcome. */ 'message'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SendAgentMessageStreamingRequest { /** * Unique identifier for the conversation (used to track context) */ 'conversation_identifier': string; /** * messages to be sent to the agent */ 'messages': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SendMessageRequest { /** * ID of the metadata object, such as a Worksheet or Model, to use as a data source for the conversation. */ 'metadata_identifier': string; /** * A message string with the follow-up question to continue the conversation. */ 'message': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SetAgentInstructionsRequest { /** * The admin instructions text to set for the agent. */ 'instructions': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SetNLInstructionsRequest { /** * Unique ID or name of the data-model for which to set NL instructions. */ 'data_source_identifier': string; /** * List of NL instructions to set for the data-model. */ 'nl_instructions_info': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SharePermissionsInput { 'principal': PrincipalsInput; /** * Type of access to the shared object */ 'share_mode': SharePermissionsInputShareModeEnum; /** * Content share mode for collections. Controls access to objects within the collection. Only applicable when sharing COLLECTION metadata type. */ 'content_share_mode'?: SharePermissionsInputContentShareModeEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SharePermissionsInputShareModeEnum = "READ_ONLY" | "MODIFY" | "NO_ACCESS"; type SharePermissionsInputContentShareModeEnum = "READ_ONLY" | "MODIFY"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ShareAnalystRequest { /** * Access changes to apply, one entry per principal. `principal.type` is required for analyst sharing, and `content_share_mode` does not apply to analysts and is ignored. */ 'permissions': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ShareConversationRequest { /** * When `true`, always regenerates the shared view from the latest conversation state, even if one already exists. When `false` (default), reuses the existing shared view. */ 'refresh_shared_content'?: boolean | null; /** * Principals to grant read-only access to the conversation. */ 'grant': Array; /** * Principals to revoke access from the conversation. */ 'revoke': Array; /** *
Version: 26.10.0.cl or later
When `true` (default), newly granted principals are notified of the share. When `false`, access is granted without sending a notification. Has no effect on principals passed in `revoke`. Does not re-notify a principal who already had access. */ 'notify_on_share'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ShareMetadataTypeInput { /** * Type of metadata. Type of metadata. Required if the name of the object is set as the identifier. This attribute is optional when the object GUID is specified as the identifier. */ 'type'?: ShareMetadataTypeInputTypeEnum | null; /** * Unique ID or name of the metadata object. */ 'identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ShareMetadataTypeInputTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "COLLECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ShareMetadataRequest { /** * Type of metadata. Required if identifier in metadata_identifies is a name. 1. Liveboard 2. Answers 3. LOGICAL_TABLE for any data object such as table, worksheet or view. 4. LOGICAL_COLUMN 5. Connection 6. Collection */ 'metadata_type'?: ShareMetadataRequestMetadataTypeEnum; /** * Unique ID or name of metadata objects. Note: All the names should belong to same metadata_type */ 'metadata_identifiers'?: Array; /** * Metadata details for sharing objects. */ 'metadata'?: Array; /** * Permission details for sharing the objects. */ 'permissions': Array; /** * Options to specify details of Liveboard. First Liveboard encountered in payload is considered to be the corresponding Liveboard. */ 'visualization_identifiers'?: Array; /** * Email IDs to which notifications will be sent. */ 'emails'?: Array; /** * Message to be included in notification. */ 'message': string; /** * Sends object URLs in the customized format in email notifications. */ 'enable_custom_url'?: boolean | null; /** * Flag to notify user when any object is shared. */ 'notify_on_share'?: boolean | null; /** * Flag to make the object discoverable. */ 'has_lenient_discoverability'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ShareMetadataRequestMetadataTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "COLLECTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response returned by getSharedContent. Contains the full read-only view of the shared conversation including messages and data source metadata. */ declare class SharedConversationResponse { /** * Unique identifier of the source conversation (echoes the request parameter). */ 'conversation_id': string; /** * Identifier for the shared view. Use this as `conversation_identifier` in follow-up `loadAnswer` calls to hydrate answer items in the messages. */ 'shared_conversation_id': string; /** * Display title of the conversation. */ 'conversation_title'?: string | null; /** * Identifier of the user who created the conversation and shared it. This is the original creator, not the caller retrieving the shared content. */ 'creator_user_id'?: string | null; /** * Data sources used by the conversation, each with an identifier and display name. */ 'data_sources': Array; /** * Identifiers of the AI analysts the conversation ran against. An analyst is a purpose-built agent configured over a set of data sources, with its own instructions and access rules. Empty array when the conversation is not associated with any analyst; never null. */ 'analyst_ids': Array; /** * Ordered conversation messages, oldest to newest. Same structure as the `messages` field returned by `getConversation`. Empty array when the conversation has no messages; never null. */ 'messages': Array; /** * Sanitized metadata for files generated by the code-execution tool during this conversation. Empty when there are no such files. */ 'code_execution_files': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SingleAnswerRequest { /** * A natural language query string to generate the Answer. */ 'query': string; /** * ID of the metadata object, such as a Worksheet or Model, to use as a data source for the query. */ 'metadata_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response format associated with fetch SQL query api */ declare class SqlQuery { /** * Unique identifier of the metadata. */ 'metadata_id': string; /** * Name of the metadata. */ 'metadata_name': string; /** * SQL query of a metadata object. */ 'sql_query': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SqlQueryResponse { /** * Unique identifier of the metadata. */ 'metadata_id': string; /** * Name of the metadata. */ 'metadata_name': string; /** * Type of the metadata. */ 'metadata_type': SqlQueryResponseMetadataTypeEnum; /** * SQL query details of metadata objects. */ 'sql_queries': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SqlQueryResponseMetadataTypeEnum = "LIVEBOARD" | "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "CONNECTION" | "TAG" | "USER" | "USER_GROUP" | "LOGICAL_RELATIONSHIP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Storage configuration containing provider-specific settings. */ declare class StorageConfig { 'aws_s3_config'?: AwsS3Config; 'gcp_gcs_config'?: GcpGcsConfig; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Storage destination configuration for webhook payload delivery. */ declare class StorageDestination { /** * Type of storage destination (e.g., AWS_S3). */ 'storage_type': StorageDestinationStorageTypeEnum; 'storage_config': StorageConfig; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type StorageDestinationStorageTypeEnum = "AWS_S3" | "GCP_GCS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A single color entry in the chart color palette. */ declare class StyleColorEntry { /** * Primary color as a 6-digit hex string. */ 'primary'?: string | null; /** * Array of 4 secondary shade hex strings. */ 'secondary'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Chart color palette configuration for a specific scope. */ declare class StyleChartColorPalette { /** * Ordered array of 8 color entries. */ 'colors'?: Array | null; /** * When true, automatic color rotation across chart data series is disabled. */ 'disable_color_rotation'?: boolean | null; /** * True if explicitly set at this scope, overriding any inherited value. */ 'is_overridden'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A single color entry in the chart color palette. */ declare class StyleColorEntryInput { /** * Primary color as a 6-digit hex string (e.g. \"#2359B6\"). Required. */ 'primary': string; /** * Array of exactly 4 secondary shade hex strings. If omitted, the server auto-generates 4 shades from the primary color. If provided, must contain exactly 4 valid 6-digit hex color strings. */ 'secondary'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Chart color palette configuration. */ declare class StyleColorPaletteInput { /** * Ordered array of exactly 8 color entries defining the chart color palette. */ 'colors'?: Array | null; /** * When true, disables automatic color rotation across chart data series. */ 'disable_color_rotation'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Embedded footer text configuration for a specific scope. */ declare class StyleEmbeddedFooterText { /** * Footer text value. Empty string indicates no footer is set. */ 'value'?: string | null; /** * True if explicitly set at this scope, overriding any inherited value. */ 'is_overridden'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Org information returned in style API responses. */ declare class StyleOrgInfo { /** * Unique integer ID of the org. */ 'id'?: number | null; /** * Name of the org. */ 'name'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Visualization areas assigned to a font, grouped by org context. */ declare class StyleFontAssignment { 'org'?: StyleOrgInfo; /** * Visualization areas using this font. */ 'visualization_areas'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type StyleFontAssignmentVisualizationAreasEnum = "CHART_X_AXIS_LABELS" | "CHART_X_AXIS_TITLE" | "CHART_Y_AXIS_LABELS" | "CHART_Y_AXIS_TITLE" | "CHART_TOOLTIP" | "CHART_SCATTER_DATA_LABELS" | "CHART_DONUT_DATA_LABELS" | "CHART_LINE_DATA_LABELS" | "CHART_COLUMN_DATA_LABELS" | "CHART_BAR_DATA_LABELS" | "CHART_AREA_DATA_LABELS" | "TABLE_VALUE_CELLS" | "ADVANCED_CHART_LABELS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A visualization area assignment affected by a font deletion. */ declare class StyleFontDeleteAffectedAssignment { 'org'?: StyleOrgInfo; /** * Visualization areas that used the deleted font and were automatically reset to the system default font. */ 'visualization_areas'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type StyleFontDeleteAffectedAssignmentVisualizationAreasEnum = "CHART_X_AXIS_LABELS" | "CHART_X_AXIS_TITLE" | "CHART_Y_AXIS_LABELS" | "CHART_Y_AXIS_TITLE" | "CHART_TOOLTIP" | "CHART_SCATTER_DATA_LABELS" | "CHART_DONUT_DATA_LABELS" | "CHART_LINE_DATA_LABELS" | "CHART_COLUMN_DATA_LABELS" | "CHART_BAR_DATA_LABELS" | "CHART_AREA_DATA_LABELS" | "TABLE_VALUE_CELLS" | "ADVANCED_CHART_LABELS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Result data for font deletion. */ declare class StyleFontDeleteData { /** * Visualization areas that used the deleted font(s) and were automatically reset to the system default font. Empty if no areas were affected. */ 'affected_assignments'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * A custom font record in the font library. */ declare class StyleFontRecord { /** * Unique UUID identifier of the font. */ 'id': string; /** * Scope indicating whether this font belongs to the cluster or org library. */ 'scope'?: StyleFontRecordScopeEnum | null; 'org'?: StyleOrgInfo; /** * Display name of the font. */ 'name': string; /** * Weight of the font. */ 'weight'?: StyleFontRecordWeightEnum | null; /** * Style of the font. */ 'style'?: StyleFontRecordStyleEnum | null; /** * Color of the font as a 6-digit hex string. */ 'color'?: string | null; /** * Timestamp in milliseconds when the font was uploaded. */ 'creation_time_in_millis'?: number | null; /** * Visualization areas currently assigned to this font. Empty if not assigned to any area. Populated only when include_font_assignments is true. */ 'assignments'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type StyleFontRecordScopeEnum = "CLUSTER" | "ORG"; type StyleFontRecordWeightEnum = "NORMAL" | "LIGHT" | "BOLD"; type StyleFontRecordStyleEnum = "NORMAL" | "ITALIC" | "OBLIQUE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Font data returned after a successful upload. */ declare class StyleFontUploadData { /** * Unique UUID identifier of the uploaded font. */ 'id': string; /** * Display name of the uploaded font. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Status of a single logo slot. */ declare class StyleLogoSlot { /** * UUID of the active logo. */ 'id'?: string | null; /** * True if a custom logo is uploaded at this scope. False if the system default or cluster logo is active. */ 'is_overridden'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Logo status per slot. */ declare class StyleLogoStatus { 'default_logo'?: StyleLogoSlot; 'wide_logo'?: StyleLogoSlot; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Navigation panel color configuration for a specific scope. */ declare class StyleNavigationPanel { /** * Navigation panel color mode. */ 'theme'?: StyleNavigationPanelThemeEnum | null; /** * Base color as a 6-digit hex string. Present only when theme is CUSTOM. */ 'base_color'?: string | null; /** * True if explicitly set at this scope, overriding any inherited value. */ 'is_overridden'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type StyleNavigationPanelThemeEnum = "DARK" | "TWO_TONE" | "CUSTOM"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Font assignment for a table visualization area in the response. */ declare class TableVisualizationFontRecord { /** * Table visualization area. */ 'visualization_area'?: TableVisualizationFontRecordVisualizationAreaEnum | null; /** * UUID of the font assigned to this area. Null when the system default font is active. */ 'font_id'?: string | null; /** * Display name of the font assigned to this area. Null when the system default font is active. */ 'font_name'?: string | null; /** * True if explicitly set at this scope, overriding any inherited value. */ 'is_overridden'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type TableVisualizationFontRecordVisualizationAreaEnum = "TABLE_VALUE_CELLS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Effective font assignments per visualization type. */ declare class StyleVisualizationFonts { /** * Font assignments for chart visualization areas. */ 'chart_visualization_fonts'?: Array | null; /** * Font assignments for table visualization areas. */ 'table_visualization_fonts'?: Array | null; /** * Font assignments for advanced chart visualization areas. Version: 26.7.0.cl or later */ 'advanced_chart_visualization_fonts'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Style preferences for a single scope entry. */ declare class StylePreference { /** * Scope at which these style preferences apply. */ 'scope'?: StylePreferenceScopeEnum | null; 'org'?: StyleOrgInfo; 'navigation_panel'?: StyleNavigationPanel; 'chart_color_palette'?: StyleChartColorPalette; 'embedded_footer_text'?: StyleEmbeddedFooterText; 'logo'?: StyleLogoStatus; 'visualization_fonts'?: StyleVisualizationFonts; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type StylePreferenceScopeEnum = "CLUSTER" | "ORG"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Fields to revert to defaults when operation is RESET. */ declare class StyleResetOptionsInput { /** * Style fields to reset. Supported values: CHART_COLOR_PALETTE, EMBEDDED_FOOTER_TEXT, NAV_PANEL_COLOR, DEFAULT_LOGO, WIDE_LOGO. */ 'style'?: Array | null; /** * Visualization areas whose font assignments should revert to the system default font. */ 'visualization_areas'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type StyleResetOptionsInputStyleEnum = "CHART_COLOR_PALETTE" | "EMBEDDED_FOOTER_TEXT" | "NAV_PANEL_COLOR" | "DEFAULT_LOGO" | "WIDE_LOGO"; type StyleResetOptionsInputVisualizationAreasEnum = "CHART_X_AXIS_LABELS" | "CHART_X_AXIS_TITLE" | "CHART_Y_AXIS_LABELS" | "CHART_Y_AXIS_TITLE" | "CHART_TOOLTIP" | "CHART_SCATTER_DATA_LABELS" | "CHART_DONUT_DATA_LABELS" | "CHART_LINE_DATA_LABELS" | "CHART_COLUMN_DATA_LABELS" | "CHART_BAR_DATA_LABELS" | "CHART_AREA_DATA_LABELS" | "TABLE_VALUE_CELLS" | "ADVANCED_CHART_LABELS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SyncMetadataRequest { /** * Array of tables to sync. Each element can be: - String: Table identifier (GUID or name) to sync all columns for that table. - Object: {tableId: [columnIds]} to sync specific columns. If not provided, syncs all tables in the connection. */ 'tables'?: any | null; /** * List of sync_attributes to sync from CDW. The default value is DESCRIPTION. */ 'sync_attributes'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SyncMetadataRequestSyncAttributesEnum = "DESCRIPTION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Response from sync metadata operation. */ declare class SyncMetadataResponse { /** * Overall status of the sync operation. */ 'status'?: SyncMetadataResponseStatusEnum | null; /** * Number of tables with metadata updates. */ 'tables_updated'?: number | null; /** * Number of columns with metadata updates. */ 'columns_updated'?: number | null; /** * Number of tables that failed to sync (for PARTIAL_SUCCESS). */ 'tables_failed'?: number | null; /** * Number of columns that failed to sync (for PARTIAL_SUCCESS). */ 'columns_failed'?: number | null; /** * Message describing the result. */ 'message'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type SyncMetadataResponseStatusEnum = "SUCCESS" | "PARTIAL_SUCCESS" | "NO_UPDATE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SystemConfig { 'onboarding_content_url'?: string | null; 'saml_enabled'?: boolean | null; 'okta_enabled'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SystemInfo { /** * The unique identifier of the object */ 'id'?: string | null; /** * Name of the cluster. */ 'name'?: string | null; /** * The release version of the cluster. */ 'release_version'?: string | null; /** * The timezone of the cluster. */ 'time_zone'?: string | null; /** * The default locale of the cluster. */ 'locale'?: string | null; /** * The default date format representation of the cluster. */ 'date_format'?: string | null; /** * The API version of the cluster. */ 'api_version'?: string | null; /** * The deployment type of the cluster. */ 'type'?: string | null; /** * The deployed environment of the cluster. */ 'environment'?: string | null; /** * The license applied to the cluster. */ 'license'?: string | null; /** * The default date time format representation of the cluster. */ 'date_time_format'?: string | null; /** * The default time format representation of the cluster. */ 'time_format'?: string | null; /** * The unique identifier of system user. */ 'system_user_id'?: string | null; /** * The unique identifier of super user. */ 'super_user_id'?: string | null; /** * The unique identifier of hidden object. */ 'hidden_object_id'?: string | null; /** * The unique identifier of system group. */ 'system_group_id'?: string | null; /** * The unique identifier of tsadmin user. */ 'tsadmin_user_id'?: string | null; /** * The unique identifier of admin group. */ 'admin_group_id'?: string | null; /** * The unique identifier of all tables connection. */ 'all_tables_connection_id'?: string | null; /** * The unique identifier of ALL group. */ 'all_user_group_id'?: string | null; /** * The supported accept language by the cluster. */ 'accept_language'?: string | null; /** * The count of users of ALL group. */ 'all_user_group_member_user_count'?: number | null; /** * The version number of logical model of the cluster. */ 'logical_model_version'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class SystemOverrideInfo { 'config_override_info'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Font assignment for a single table visualization area. */ declare class TableFontAssignmentInput { /** * Table visualization area to assign the font to. */ 'visualization_area': TableFontAssignmentInputVisualizationAreaEnum; /** * UUID or name of the font to assign to this area. */ 'font_identifier': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type TableFontAssignmentInputVisualizationAreaEnum = "TABLE_VALUE_CELLS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class Tag { 'name': string; 'id': string; 'color'?: string | null; 'deleted'?: boolean | null; 'hidden'?: boolean | null; 'external'?: boolean | null; 'deprecated'?: boolean | null; 'creation_time_in_millis'?: number | null; 'modification_time_in_millis'?: number | null; 'author_id'?: string | null; 'modifier_id'?: string | null; 'owner_id'?: string | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Agent text output. */ declare class TextResponseItem { /** * Variant discriminator. Always `\"text\"`. */ 'type': string; /** * Milliseconds since Unix epoch when this item was produced. */ 'timestamp_in_millis': any | null; /** * True when the item represents internal agent reasoning rather than user-facing output. */ 'is_thinking'?: boolean | null; /** * Human-readable label for the agent step producing this item. */ 'step_title'?: string | null; /** * The text body. */ 'content': string; /** * Rendering hint for the text content. See `ContentMimeType` for accepted values. */ 'content_type'?: TextResponseItemContentTypeEnum | null; 'file_reference'?: FileReference; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type TextResponseItemContentTypeEnum = "TEXT_PLAIN" | "TEXT_MARKDOWN" | "TEXT_X_MARKDOWN_WITH_CODE" | "TEXT_HTML"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class Token { /** * Bearer auth token. */ 'token': string; /** * Token creation time in milliseconds. */ 'creation_time_in_millis': number; /** * Token expiration time in milliseconds. */ 'expiration_time_in_millis': number; 'scope': Scope; /** * Username to whom the token is issued. */ 'valid_for_user_id': string; /** * Unique identifier of the user to whom the token is issued. */ 'valid_for_username': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class TokenValidationResponse { /** * Token creation time in milliseconds. */ 'creation_time_in_millis': number; /** * Token expiration time in milliseconds. */ 'expiration_time_in_millis': number; 'scope': Scope; /** * Username to whom the token is issued. */ 'valid_for_user_id': string; /** * Type of token. */ 'token_type': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Agent invoked a tool. */ declare class ToolCallResponseItem { /** * Variant discriminator. Always `\"tool_call\"`. */ 'type': string; /** * Milliseconds since Unix epoch when this item was produced. */ 'timestamp_in_millis': any | null; /** * True when the item represents internal agent reasoning rather than user-facing output. */ 'is_thinking'?: boolean | null; /** * Human-readable label for the agent step producing this item. */ 'step_title'?: string | null; /** * Identifier linking this tool call to its matching tool_result or answer. */ 'tool_call_id'?: string | null; /** * Name of the tool being invoked. */ 'tool_name'?: string | null; /** * Input arguments passed to the tool. Shape depends on the tool. */ 'arguments': any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Result returned from a tool invocation. */ declare class ToolResultResponseItem { /** * Variant discriminator. Always `\"tool_result\"`. */ 'type': string; /** * Milliseconds since Unix epoch when this item was produced. */ 'timestamp_in_millis': any | null; /** * True when the item represents internal agent reasoning rather than user-facing output. */ 'is_thinking'?: boolean | null; /** * Human-readable label for the agent step producing this item. */ 'step_title'?: string | null; /** * Matches the originating tool_call. */ 'tool_call_id'?: string | null; /** * Name of the tool that produced this result. */ 'tool_name'?: string | null; /** * Result body (tool output, or `\": \"` for errors). */ 'content': string; /** * Rendering hint for the result content; defaults to `TEXT_PLAIN` for tool results. See `ContentMimeType` for accepted values. */ 'content_type'?: ToolResultResponseItemContentTypeEnum | null; /** * False when the tool invocation errored; true otherwise. */ 'success'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ToolResultResponseItemContentTypeEnum = "TEXT_PLAIN" | "TEXT_MARKDOWN" | "TEXT_X_MARKDOWN_WITH_CODE" | "TEXT_HTML"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UnassignTagRequest { /** * Metadata objects. */ 'metadata': Array; /** * GUID or name of the tag. */ 'tag_identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UnparameterizeMetadataRequest { /** * Type of metadata object to unparameterize. */ 'metadata_type'?: UnparameterizeMetadataRequestMetadataTypeEnum; /** * Unique ID or name of the metadata object to unparameterize. */ 'metadata_identifier': string; /** * Type of field in the metadata to unparameterize. */ 'field_type': UnparameterizeMetadataRequestFieldTypeEnum; /** * Name of the field which needs to be unparameterized. */ 'field_name': string; /** * The value to use in place of the variable for the field */ 'value': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UnparameterizeMetadataRequestMetadataTypeEnum = "LOGICAL_TABLE" | "CONNECTION" | "CONNECTION_CONFIG"; type UnparameterizeMetadataRequestFieldTypeEnum = "ATTRIBUTE" | "CONNECTION_PROPERTY"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UnpublishMetadataRequest { /** * Force unpublishes the object. This will break all the dependent objects in the unpublished orgs. */ 'force'?: boolean | null; /** * Should we unpublish all the dependencies for the objects specified. The dependencies will be unpublished if no other published object is using it. */ 'include_dependencies': boolean; /** * Metadata objects. */ 'metadata': Array; /** * Unique ID or name of orgs. */ 'org_identifiers': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateAnalystRequest { /** * Display name of the analyst. */ 'name': string; /** * Description of the analyst. Maximum 200 characters. */ 'description': string; /** * Natural-language instructions that guide the agent\'s behavior for this analyst. Omitting this field clears any existing instructions. */ 'instructions'?: string; /** * Data sources the analyst can query. At least one is required, and the caller must have view access to every referenced source. Replaces the existing list in full. */ 'sources': Array; /** * Identifiers of MCP connectors linked to this analyst. Replaces the existing list in full; omit or pass an empty array to clear. */ 'mcp_connector_identifiers'?: Array; /** * Plain-text starter prompts (max 4, each between 10 and 250 characters; display order follows list position). Replaces the existing list in full; omit or pass an empty array to clear. */ 'starter_prompts'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateCalendarRequest { /** * Type of update operation. */ 'update_method'?: UpdateCalendarRequestUpdateMethodEnum; /** * Table reference containing connection identifier and table details in this format: `{\"connection_identifier\":\"conn1\", \"database_name\":\"db1\", \"schema_name\":\"sc1\", \"table_name\":\"tb1\"}`. */ 'table_reference': ExternalTableInput; /** * Start date for the calendar in `MM/dd/yyyy` format. This parameter is mandatory if `update_method` is set as `FROM_INPUT_PARAMS`. */ 'start_date'?: string; /** * End date for the calendar in `MM/dd/yyyy` format. This parameter is mandatory if `update_method` is set as `FROM_INPUT_PARAMS`. */ 'end_date'?: string; /** * Type of the calendar. */ 'calendar_type'?: UpdateCalendarRequestCalendarTypeEnum; /** * 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). */ 'month_offset'?: UpdateCalendarRequestMonthOffsetEnum; /** * Specify the starting day of the week */ 'start_day_of_week'?: UpdateCalendarRequestStartDayOfWeekEnum; /** * Prefix to add before the quarter. */ 'quarter_name_prefix'?: string; /** * Prefix to add before the year. */ 'year_name_prefix'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateCalendarRequestUpdateMethodEnum = "FROM_INPUT_PARAMS" | "FROM_EXISTING_TABLE"; type UpdateCalendarRequestCalendarTypeEnum = "MONTH_OFFSET" | "FOUR_FOUR_FIVE" | "FOUR_FIVE_FOUR" | "FIVE_FOUR_FOUR"; type UpdateCalendarRequestMonthOffsetEnum = "January" | "February" | "March" | "April" | "May" | "June" | "July" | "August" | "September" | "October" | "November" | "December"; type UpdateCalendarRequestStartDayOfWeekEnum = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateCollectionRequest { /** * Name of the collection. */ 'name'?: string; /** * Description of the collection. */ 'description'?: string; /** * Metadata objects to add, remove, or replace in the collection. */ 'metadata'?: Array; /** * Type of update operation. Default operation type is REPLACE. */ 'operation'?: UpdateCollectionRequestOperationEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateCollectionRequestOperationEnum = "ADD" | "REMOVE" | "REPLACE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateColumnSecurityRulesRequest { /** * GUID or name of the table for which we want to create column security rules */ 'identifier'?: string; /** * The object ID of the table */ 'obj_identifier'?: string; /** * If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed */ 'clear_csr'?: boolean | null; /** * Array where each object defines the security rule for a specific column */ 'column_security_rules': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateConfigRequest { /** * Username to authenticate connection to version control system */ 'username'?: string; /** * Access token corresponding to the user to authenticate connection to version control system */ 'access_token'?: string; /** * Applicable when Orgs is enabled in the cluster List of Org ids or name. Provide value -1 for cluster level. Example : [\"OrgID1-or-Name1\", \"OrgID2-or-Name2\"] Note: If no value is specified, then the configurations will be returned for all orgs the user has access to Version: 9.5.0.cl or later */ 'org_identifier'?: string; /** * List the remote branches to configure. Example:[development, production] */ 'branch_names'?: Array; /** * Name of the remote branch where objects from this Thoughtspot instance will be versioned. Version: 9.7.0.cl or later */ 'commit_branch_name'?: string; /** * Maintain mapping of guid for the deployment to an instance Version: 9.4.0.cl or later */ 'enable_guid_mapping'?: boolean | null; /** * Name of the branch where the configuration files related to operations between Thoughtspot and version control repo should be maintained. Version: 9.7.0.cl or later */ 'configuration_branch_name'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateConnectionConfigurationRequest { /** * Unique ID or name of the connection. */ 'connection_identifier': string; /** * Name of the configuration to update. */ 'name'?: string; /** * Description of the configuration. */ 'description'?: string; /** * 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 */ 'same_as_parent'?: boolean | null; /** * 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 */ 'policy_process_options'?: PolicyProcessOptionsInput; /** * Type of authentication. */ 'authentication_type'?: UpdateConnectionConfigurationRequestAuthenticationTypeEnum; /** * Configuration properties in JSON. */ 'configuration'?: any | null; /** * Type of policy. */ 'policy_type'?: UpdateConnectionConfigurationRequestPolicyTypeEnum; /** * Unique ID or name of the User and User Groups. */ 'policy_principals'?: Array; /** * Action that the query performed on the data warehouse, such as SAGE_INDEXING, ROW_COUNT_STATS, and SCHEDULED_LIVEBOARDS. */ 'policy_processes'?: Array; /** * Indicates whether the configuration enable/disable. */ 'disable'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateConnectionConfigurationRequestAuthenticationTypeEnum = "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"; type UpdateConnectionConfigurationRequestPolicyTypeEnum = "NO_POLICY" | "PRINCIPALS" | "PROCESSES"; type UpdateConnectionConfigurationRequestPolicyProcessesEnum = "SAGE_INDEXING" | "ROW_COUNT_STATS" | "SCHEDULED_LIVEBOARDS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateConnectionRequest { /** * Unique ID or name of the connection. */ 'connection_identifier': string; /** * Updated name of the connection. */ 'name'?: string; /** * Updated description of the connection. */ 'description'?: string; /** * Configuration of the data warehouse in JSON. */ 'data_warehouse_config'?: any | null; /** * Indicates whether to validate the connection details. */ 'validate'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateConnectionStatusRequest { /** * Status to set for the connection. Use ACTIVATED to enable the connection or DEACTIVATED to disable it. */ 'status'?: UpdateConnectionStatusRequestStatusEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateConnectionStatusRequestStatusEnum = "ACTIVATED" | "DEACTIVATED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateConnectionV2Request { /** * Updated name of the connection. */ 'name'?: string; /** * Updated description of the connection. */ 'description'?: string; /** * Configuration of the data warehouse in JSON. */ 'data_warehouse_config'?: any | null; /** * Indicates whether to validate the connection details. */ 'validate'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateConversationRequest { /** * New display title for the conversation. Omit to leave the title unchanged. An empty or whitespace-only value is replaced with a default title rather than rejected. */ 'title'?: string; /** * Pinned state of the conversation for the current user. Pinning marks a conversation for quick access: pinned conversations are surfaced first in `getConversationList`. Set to `true` to pin the conversation, `false` to unpin it, or omit to leave the pinned state unchanged. Applying the state the conversation is already in is a no-op success. Version: 26.10.0.cl or later */ 'is_pinned'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateCustomActionRequest { /** * Action details includes `Type` and Configuration for Custom Actions, either Callback or URL is required. */ 'action_details'?: ActionDetailsInput; /** * Metadata objects to which the custom action needs to be associated. */ 'associate_metadata'?: Array; /** * Default Custom action configuration. This includes if the custom action available on visualizations and Answers. By default, a custom action is added to all visualizations and Answers. */ 'default_action_config'?: DefaultActionConfigInput; /** * Unique ID or name of the groups that can view and access the custom action. */ 'group_identifiers'?: Array; /** * Name of the custom action. The custom action name must be unique. */ 'name'?: string; /** * Type of update operation. Default operation type is ADD */ 'operation'?: UpdateCustomActionRequestOperationEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateCustomActionRequestOperationEnum = "ADD" | "REMOVE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateEmailCustomizationRequest { /** * Email customization configuration as key value pair */ 'template_properties': TemplatePropertiesInputCreate; /** * Unique ID or name of org */ 'org_identifier'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateFeatureAssignmentsRequest { /** * User-friendly feature name (feature_name) or the underlying feature ID (feature_id) of the feature whose Org assignments should be updated. */ 'feature_identifier': string; /** * Numeric IDs of the Orgs to assign to the feature. Send an empty array with operation REPLACE to clear all Org assignments for this feature. */ 'org_identifiers': Array; /** * Type of update to apply to the Org assignments. ADD assigns the given Orgs in addition to existing ones; REMOVE unassigns the given Orgs; REPLACE sets the assignment to exactly the given Orgs. Defaults to REPLACE. */ 'operation'?: UpdateFeatureAssignmentsRequestOperationEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateFeatureAssignmentsRequestOperationEnum = "ADD" | "REMOVE" | "REPLACE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateFeatureValueRequest { /** * Determines the scope at which the value is set. Use CLUSTER to set the cluster-level value; use ORG to set a per-Org value override. */ 'scope': UpdateFeatureValueRequestScopeEnum; /** * Numeric ID of the Org for which to set the value. Required when scope is ORG; ignored when scope is CLUSTER. */ 'org_identifier'?: number; /** * User-friendly feature name (feature_name) or the underlying feature ID (feature_id) of the feature whose value should be set. */ 'feature_identifier': string; /** * New value to set for the feature. */ 'feature_value': string; /** * Applicable only when `scope` is `CLUSTER`. When `true`, any existing per-Org value overrides for this feature are removed so that all Orgs inherit the new cluster-level value. Required when `scope` is `CLUSTER` for an org-aware feature. Must be omitted when `scope` is `ORG`; passing it at `ORG` scope returns a 400 error. */ 'reset_org_overrides'?: boolean | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateFeatureValueRequestScopeEnum = "CLUSTER" | "ORG"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateMetadataHeaderRequest { /** * List of header objects to update. */ 'headers_update': Array; /** * Unique ID or name of the organization. */ 'org_identifier'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for updating object ID of a metadata object. */ declare class UpdateObjIdInput { /** * GUID or name of the metadata object. */ 'metadata_identifier'?: string | null; /** * Type of metadata. Required if metadata_identifier is name of the object. */ 'type'?: UpdateObjIdInputTypeEnum | null; /** * Current object ID value. */ 'current_obj_id'?: string | null; /** * New object ID value to set. */ 'new_obj_id': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateObjIdInputTypeEnum = "ANSWER" | "LOGICAL_TABLE" | "LOGICAL_COLUMN" | "LIVEBOARD" | "ACTION_OBJECT" | "DATA_SOURCE" | "USER" | "USER_GROUP" | "COLLECTION" | "ROLE" | "TEMPLATE_VARIABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateMetadataObjIdRequest { /** * List of metadata objects to update their object IDs. */ 'metadata': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateOrgRequest { /** * Name of the Org */ 'name'?: string; /** * Description of the Org */ 'description'?: string; /** * Add Users to an Org */ 'user_identifiers'?: Array; /** * Add Default Groups to an Org */ 'group_identifiers'?: Array; /** * Type of update operation. Default operation type is ADD */ 'operation'?: UpdateOrgRequestOperationEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateOrgRequestOperationEnum = "ADD" | "REMOVE" | "REPLACE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateRoleRequest { /** * Name of the Role. */ 'name': string; /** * Description of the Role. */ 'description'?: string; /** * Privileges granted to the role. See [Documentation](https://developers.thoughtspot.com/docs/rbac#_role_categories_and_privileges)for supported roles privileges. Note: AUTHORING is a no-op — always inherited via ALL_GROUP, assigning it has no effect. */ 'privileges'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateRoleRequestPrivilegesEnum = "USERDATAUPLOADING" | "DATADOWNLOADING" | "DATAMANAGEMENT" | "SHAREWITHALL" | "JOBSCHEDULING" | "A3ANALYSIS" | "BYPASSRLS" | "DISABLE_PINBOARD_CREATION" | "DEVELOPER" | "APPLICATION_ADMINISTRATION" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "SYSTEM_INFO_ADMINISTRATION" | "SYNCMANAGEMENT" | "ORG_ADMINISTRATION" | "ROLE_ADMINISTRATION" | "AUTHENTICATION_ADMINISTRATION" | "BILLING_INFO_ADMINISTRATION" | "CONTROL_TRUSTED_AUTH" | "TAGMANAGEMENT" | "LIVEBOARD_VERIFIER" | "CAN_MANAGE_CUSTOM_CALENDAR" | "CAN_CREATE_OR_EDIT_CONNECTIONS" | "CAN_MANAGE_WORKSHEET_VIEWS_TABLES" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "CAN_CREATE_CATALOG" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "CAN_MODIFY_FOLDERS" | "CAN_MANAGE_VARIABLES" | "CAN_VIEW_FOLDERS" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "PREVIEW_DOCUMENT_SEARCH" | "PREVIEW_THOUGHTSPOT_SAGE" | "CAN_MANAGE_WEBHOOKS" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateScheduleRequest { /** * Name of the scheduled job. */ 'name'?: string; /** * Description of the scheduled job. */ 'description'?: string; /** * Type of metadata object. */ 'metadata_type'?: UpdateScheduleRequestMetadataTypeEnum; /** * Unique ID or name of the metadata object. */ 'metadata_identifier'?: string; /** * Export file format. */ 'file_format'?: UpdateScheduleRequestFileFormatEnum; /** * Options to specify the details of a Liveboard. */ 'liveboard_options'?: LiveboardOptionsInput; /** * Options for PDF export. */ 'pdf_options'?: SchedulesPdfOptionsInput; /** * Time zone */ 'time_zone'?: UpdateScheduleRequestTimeZoneEnum; /** * Frequency of the scheduled job run. */ 'frequency'?: FrequencyInput; /** * Recipients of the scheduled job notifications. You can add the ID or name of the ThoughtSpot users or groups as recipients in the `principals` array. If a recipient is not a ThoughtSpot user, specify email address. */ 'recipient_details'?: RecipientDetailsInput; /** * Status of the schedule */ 'status'?: UpdateScheduleRequestStatusEnum; /** * Personalised view id of the liveboard to be scheduled. */ 'personalised_view_id'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateScheduleRequestMetadataTypeEnum = "LIVEBOARD"; type UpdateScheduleRequestFileFormatEnum = "CSV" | "PDF" | "XLSX"; type UpdateScheduleRequestTimeZoneEnum = "Africa/Abidjan" | "Africa/Accra" | "Africa/Addis_Ababa" | "Africa/Algiers" | "Africa/Asmara" | "Africa/Asmera" | "Africa/Bamako" | "Africa/Bangui" | "Africa/Banjul" | "Africa/Bissau" | "Africa/Blantyre" | "Africa/Brazzaville" | "Africa/Bujumbura" | "Africa/Cairo" | "Africa/Casablanca" | "Africa/Ceuta" | "Africa/Conakry" | "Africa/Dakar" | "Africa/Dar_es_Salaam" | "Africa/Djibouti" | "Africa/Douala" | "Africa/El_Aaiun" | "Africa/Freetown" | "Africa/Gaborone" | "Africa/Harare" | "Africa/Johannesburg" | "Africa/Juba" | "Africa/Kampala" | "Africa/Khartoum" | "Africa/Kigali" | "Africa/Kinshasa" | "Africa/Lagos" | "Africa/Libreville" | "Africa/Lome" | "Africa/Luanda" | "Africa/Lubumbashi" | "Africa/Lusaka" | "Africa/Malabo" | "Africa/Maputo" | "Africa/Maseru" | "Africa/Mbabane" | "Africa/Mogadishu" | "Africa/Monrovia" | "Africa/Nairobi" | "Africa/Ndjamena" | "Africa/Niamey" | "Africa/Nouakchott" | "Africa/Ouagadougou" | "Africa/Porto-Novo" | "Africa/Sao_Tome" | "Africa/Timbuktu" | "Africa/Tripoli" | "Africa/Tunis" | "Africa/Windhoek" | "America/Adak" | "America/Anchorage" | "America/Anguilla" | "America/Antigua" | "America/Araguaina" | "America/Argentina/Buenos_Aires" | "America/Argentina/Catamarca" | "America/Argentina/ComodRivadavia" | "America/Argentina/Cordoba" | "America/Argentina/Jujuy" | "America/Argentina/La_Rioja" | "America/Argentina/Mendoza" | "America/Argentina/Rio_Gallegos" | "America/Argentina/Salta" | "America/Argentina/San_Juan" | "America/Argentina/San_Luis" | "America/Argentina/Tucuman" | "America/Argentina/Ushuaia" | "America/Aruba" | "America/Asuncion" | "America/Atikokan" | "America/Atka" | "America/Bahia" | "America/Bahia_Banderas" | "America/Barbados" | "America/Belem" | "America/Belize" | "America/Blanc-Sablon" | "America/Boa_Vista" | "America/Bogota" | "America/Boise" | "America/Buenos_Aires" | "America/Cambridge_Bay" | "America/Campo_Grande" | "America/Cancun" | "America/Caracas" | "America/Catamarca" | "America/Cayenne" | "America/Cayman" | "America/Chicago" | "America/Chihuahua" | "America/Coral_Harbour" | "America/Cordoba" | "America/Costa_Rica" | "America/Creston" | "America/Cuiaba" | "America/Curacao" | "America/Danmarkshavn" | "America/Dawson" | "America/Dawson_Creek" | "America/Denver" | "America/Detroit" | "America/Dominica" | "America/Edmonton" | "America/Eirunepe" | "America/El_Salvador" | "America/Ensenada" | "America/Fort_Nelson" | "America/Fort_Wayne" | "America/Fortaleza" | "America/Glace_Bay" | "America/Godthab" | "America/Goose_Bay" | "America/Grand_Turk" | "America/Grenada" | "America/Guadeloupe" | "America/Guatemala" | "America/Guayaquil" | "America/Guyana" | "America/Halifax" | "America/Havana" | "America/Hermosillo" | "America/Indiana/Indianapolis" | "America/Indiana/Knox" | "America/Indiana/Marengo" | "America/Indiana/Petersburg" | "America/Indiana/Tell_City" | "America/Indiana/Vevay" | "America/Indiana/Vincennes" | "America/Indiana/Winamac" | "America/Indianapolis" | "America/Inuvik" | "America/Iqaluit" | "America/Jamaica" | "America/Jujuy" | "America/Juneau" | "America/Kentucky/Louisville" | "America/Kentucky/Monticello" | "America/Knox_IN" | "America/Kralendijk" | "America/La_Paz" | "America/Lima" | "America/Los_Angeles" | "America/Louisville" | "America/Lower_Princes" | "America/Maceio" | "America/Managua" | "America/Manaus" | "America/Marigot" | "America/Martinique" | "America/Matamoros" | "America/Mazatlan" | "America/Mendoza" | "America/Menominee" | "America/Merida" | "America/Metlakatla" | "America/Mexico_City" | "America/Miquelon" | "America/Moncton" | "America/Monterrey" | "America/Montevideo" | "America/Montreal" | "America/Montserrat" | "America/Nassau" | "America/New_York" | "America/Nipigon" | "America/Nome" | "America/Noronha" | "America/North_Dakota/Beulah" | "America/North_Dakota/Center" | "America/North_Dakota/New_Salem" | "America/Nuuk" | "America/Ojinaga" | "America/Panama" | "America/Pangnirtung" | "America/Paramaribo" | "America/Phoenix" | "America/Port-au-Prince" | "America/Port_of_Spain" | "America/Porto_Acre" | "America/Porto_Velho" | "America/Puerto_Rico" | "America/Punta_Arenas" | "America/Rainy_River" | "America/Rankin_Inlet" | "America/Recife" | "America/Regina" | "America/Resolute" | "America/Rio_Branco" | "America/Rosario" | "America/Santa_Isabel" | "America/Santarem" | "America/Santiago" | "America/Santo_Domingo" | "America/Sao_Paulo" | "America/Scoresbysund" | "America/Shiprock" | "America/Sitka" | "America/St_Barthelemy" | "America/St_Johns" | "America/St_Kitts" | "America/St_Lucia" | "America/St_Thomas" | "America/St_Vincent" | "America/Swift_Current" | "America/Tegucigalpa" | "America/Thule" | "America/Thunder_Bay" | "America/Tijuana" | "America/Toronto" | "America/Tortola" | "America/Vancouver" | "America/Virgin" | "America/Whitehorse" | "America/Winnipeg" | "America/Yakutat" | "America/Yellowknife" | "Antarctica/Casey" | "Antarctica/Davis" | "Antarctica/DumontDUrville" | "Antarctica/Macquarie" | "Antarctica/Mawson" | "Antarctica/McMurdo" | "Antarctica/Palmer" | "Antarctica/Rothera" | "Antarctica/South_Pole" | "Antarctica/Syowa" | "Antarctica/Troll" | "Antarctica/Vostok" | "Arctic/Longyearbyen" | "Asia/Aden" | "Asia/Almaty" | "Asia/Amman" | "Asia/Anadyr" | "Asia/Aqtau" | "Asia/Aqtobe" | "Asia/Ashgabat" | "Asia/Ashkhabad" | "Asia/Atyrau" | "Asia/Baghdad" | "Asia/Bahrain" | "Asia/Baku" | "Asia/Bangkok" | "Asia/Barnaul" | "Asia/Beirut" | "Asia/Bishkek" | "Asia/Brunei" | "Asia/Calcutta" | "Asia/Chita" | "Asia/Choibalsan" | "Asia/Chongqing" | "Asia/Chungking" | "Asia/Colombo" | "Asia/Dacca" | "Asia/Damascus" | "Asia/Dhaka" | "Asia/Dili" | "Asia/Dubai" | "Asia/Dushanbe" | "Asia/Famagusta" | "Asia/Gaza" | "Asia/Harbin" | "Asia/Hebron" | "Asia/Ho_Chi_Minh" | "Asia/Hong_Kong" | "Asia/Hovd" | "Asia/Irkutsk" | "Asia/Istanbul" | "Asia/Jakarta" | "Asia/Jayapura" | "Asia/Jerusalem" | "Asia/Kabul" | "Asia/Kamchatka" | "Asia/Karachi" | "Asia/Kashgar" | "Asia/Kathmandu" | "Asia/Katmandu" | "Asia/Khandyga" | "Asia/Kolkata" | "Asia/Krasnoyarsk" | "Asia/Kuala_Lumpur" | "Asia/Kuching" | "Asia/Kuwait" | "Asia/Macao" | "Asia/Macau" | "Asia/Magadan" | "Asia/Makassar" | "Asia/Manila" | "Asia/Muscat" | "Asia/Nicosia" | "Asia/Novokuznetsk" | "Asia/Novosibirsk" | "Asia/Omsk" | "Asia/Oral" | "Asia/Phnom_Penh" | "Asia/Pontianak" | "Asia/Pyongyang" | "Asia/Qatar" | "Asia/Qostanay" | "Asia/Qyzylorda" | "Asia/Rangoon" | "Asia/Riyadh" | "Asia/Saigon" | "Asia/Sakhalin" | "Asia/Samarkand" | "Asia/Seoul" | "Asia/Shanghai" | "Asia/Singapore" | "Asia/Srednekolymsk" | "Asia/Taipei" | "Asia/Tashkent" | "Asia/Tbilisi" | "Asia/Tehran" | "Asia/Tel_Aviv" | "Asia/Thimbu" | "Asia/Thimphu" | "Asia/Tokyo" | "Asia/Tomsk" | "Asia/Ujung_Pandang" | "Asia/Ulaanbaatar" | "Asia/Ulan_Bator" | "Asia/Urumqi" | "Asia/Ust-Nera" | "Asia/Vientiane" | "Asia/Vladivostok" | "Asia/Yakutsk" | "Asia/Yangon" | "Asia/Yekaterinburg" | "Asia/Yerevan" | "Atlantic/Azores" | "Atlantic/Bermuda" | "Atlantic/Canary" | "Atlantic/Cape_Verde" | "Atlantic/Faeroe" | "Atlantic/Faroe" | "Atlantic/Jan_Mayen" | "Atlantic/Madeira" | "Atlantic/Reykjavik" | "Atlantic/South_Georgia" | "Atlantic/St_Helena" | "Atlantic/Stanley" | "Australia/ACT" | "Australia/Adelaide" | "Australia/Brisbane" | "Australia/Broken_Hill" | "Australia/Canberra" | "Australia/Currie" | "Australia/Darwin" | "Australia/Eucla" | "Australia/Hobart" | "Australia/LHI" | "Australia/Lindeman" | "Australia/Lord_Howe" | "Australia/Melbourne" | "Australia/NSW" | "Australia/North" | "Australia/Perth" | "Australia/Queensland" | "Australia/South" | "Australia/Sydney" | "Australia/Tasmania" | "Australia/Victoria" | "Australia/West" | "Australia/Yancowinna" | "Brazil/Acre" | "Brazil/DeNoronha" | "Brazil/East" | "Brazil/West" | "CET" | "CST6CDT" | "Canada/Atlantic" | "Canada/Central" | "Canada/Eastern" | "Canada/Mountain" | "Canada/Newfoundland" | "Canada/Pacific" | "Canada/Saskatchewan" | "Canada/Yukon" | "Chile/Continental" | "Chile/EasterIsland" | "Cuba" | "EET" | "EST5EDT" | "Egypt" | "Eire" | "Etc/GMT" | "Etc/GMT+0" | "Etc/GMT+1" | "Etc/GMT+10" | "Etc/GMT+11" | "Etc/GMT+12" | "Etc/GMT+2" | "Etc/GMT+3" | "Etc/GMT+4" | "Etc/GMT+5" | "Etc/GMT+6" | "Etc/GMT+7" | "Etc/GMT+8" | "Etc/GMT+9" | "Etc/GMT-0" | "Etc/GMT-1" | "Etc/GMT-10" | "Etc/GMT-11" | "Etc/GMT-12" | "Etc/GMT-13" | "Etc/GMT-14" | "Etc/GMT-2" | "Etc/GMT-3" | "Etc/GMT-4" | "Etc/GMT-5" | "Etc/GMT-6" | "Etc/GMT-7" | "Etc/GMT-8" | "Etc/GMT-9" | "Etc/GMT0" | "Etc/Greenwich" | "Etc/UCT" | "Etc/UTC" | "Etc/Universal" | "Etc/Zulu" | "Europe/Amsterdam" | "Europe/Andorra" | "Europe/Astrakhan" | "Europe/Athens" | "Europe/Belfast" | "Europe/Belgrade" | "Europe/Berlin" | "Europe/Bratislava" | "Europe/Brussels" | "Europe/Bucharest" | "Europe/Budapest" | "Europe/Busingen" | "Europe/Chisinau" | "Europe/Copenhagen" | "Europe/Dublin" | "Europe/Gibraltar" | "Europe/Guernsey" | "Europe/Helsinki" | "Europe/Isle_of_Man" | "Europe/Istanbul" | "Europe/Jersey" | "Europe/Kaliningrad" | "Europe/Kiev" | "Europe/Kirov" | "Europe/Kyiv" | "Europe/Lisbon" | "Europe/Ljubljana" | "Europe/London" | "Europe/Luxembourg" | "Europe/Madrid" | "Europe/Malta" | "Europe/Mariehamn" | "Europe/Minsk" | "Europe/Monaco" | "Europe/Moscow" | "Europe/Nicosia" | "Europe/Oslo" | "Europe/Paris" | "Europe/Podgorica" | "Europe/Prague" | "Europe/Riga" | "Europe/Rome" | "Europe/Samara" | "Europe/San_Marino" | "Europe/Sarajevo" | "Europe/Saratov" | "Europe/Simferopol" | "Europe/Skopje" | "Europe/Sofia" | "Europe/Stockholm" | "Europe/Tallinn" | "Europe/Tirane" | "Europe/Tiraspol" | "Europe/Ulyanovsk" | "Europe/Uzhgorod" | "Europe/Vaduz" | "Europe/Vatican" | "Europe/Vienna" | "Europe/Vilnius" | "Europe/Volgograd" | "Europe/Warsaw" | "Europe/Zagreb" | "Europe/Zaporozhye" | "Europe/Zurich" | "GB" | "GB-Eire" | "GMT" | "GMT0" | "Greenwich" | "Hongkong" | "Iceland" | "Indian/Antananarivo" | "Indian/Chagos" | "Indian/Christmas" | "Indian/Cocos" | "Indian/Comoro" | "Indian/Kerguelen" | "Indian/Mahe" | "Indian/Maldives" | "Indian/Mauritius" | "Indian/Mayotte" | "Indian/Reunion" | "Iran" | "Israel" | "Jamaica" | "Japan" | "Kwajalein" | "Libya" | "MET" | "MST7MDT" | "Mexico/BajaNorte" | "Mexico/BajaSur" | "Mexico/General" | "NZ" | "NZ-CHAT" | "Navajo" | "PRC" | "PST8PDT" | "Pacific/Apia" | "Pacific/Auckland" | "Pacific/Bougainville" | "Pacific/Chatham" | "Pacific/Chuuk" | "Pacific/Easter" | "Pacific/Efate" | "Pacific/Enderbury" | "Pacific/Fakaofo" | "Pacific/Fiji" | "Pacific/Funafuti" | "Pacific/Galapagos" | "Pacific/Gambier" | "Pacific/Guadalcanal" | "Pacific/Guam" | "Pacific/Honolulu" | "Pacific/Johnston" | "Pacific/Kanton" | "Pacific/Kiritimati" | "Pacific/Kosrae" | "Pacific/Kwajalein" | "Pacific/Majuro" | "Pacific/Marquesas" | "Pacific/Midway" | "Pacific/Nauru" | "Pacific/Niue" | "Pacific/Norfolk" | "Pacific/Noumea" | "Pacific/Pago_Pago" | "Pacific/Palau" | "Pacific/Pitcairn" | "Pacific/Pohnpei" | "Pacific/Ponape" | "Pacific/Port_Moresby" | "Pacific/Rarotonga" | "Pacific/Saipan" | "Pacific/Samoa" | "Pacific/Tahiti" | "Pacific/Tarawa" | "Pacific/Tongatapu" | "Pacific/Truk" | "Pacific/Wake" | "Pacific/Wallis" | "Pacific/Yap" | "Poland" | "Portugal" | "ROK" | "Singapore" | "SystemV/AST4" | "SystemV/AST4ADT" | "SystemV/CST6" | "SystemV/CST6CDT" | "SystemV/EST5" | "SystemV/EST5EDT" | "SystemV/HST10" | "SystemV/MST7" | "SystemV/MST7MDT" | "SystemV/PST8" | "SystemV/PST8PDT" | "SystemV/YST9" | "SystemV/YST9YDT" | "Turkey" | "UCT" | "US/Alaska" | "US/Aleutian" | "US/Arizona" | "US/Central" | "US/East-Indiana" | "US/Eastern" | "US/Hawaii" | "US/Indiana-Starke" | "US/Michigan" | "US/Mountain" | "US/Pacific" | "US/Samoa" | "UTC" | "Universal" | "W-SU" | "WET" | "Zulu" | "EST" | "HST" | "MST" | "ACT" | "AET" | "AGT" | "ART" | "AST" | "BET" | "BST" | "CAT" | "CNT" | "CST" | "CTT" | "EAT" | "ECT" | "IET" | "IST" | "JST" | "MIT" | "NET" | "NST" | "PLT" | "PNT" | "PRT" | "PST" | "SST" | "VST"; type UpdateScheduleRequestStatusEnum = "ACTIVE" | "PAUSE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateStyleFontRequest { /** * Scope of the font library containing this font. CLUSTER targets the cluster-level library. ORG targets the authenticated user\'s org library. Defaults to ORG if omitted. */ 'scope'?: UpdateStyleFontRequestScopeEnum; /** * New display name for the font. */ 'name'?: string; /** * New weight for the font. Supported values: NORMAL, LIGHT, BOLD. */ 'weight'?: UpdateStyleFontRequestWeightEnum; /** * New style for the font. Supported values: NORMAL, ITALIC, OBLIQUE. */ 'style'?: UpdateStyleFontRequestStyleEnum; /** * New color for the font as a 6-digit hex string (e.g. \"#333333\"). Returns an error if the value is malformed. */ 'color'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateStyleFontRequestScopeEnum = "CLUSTER" | "ORG"; type UpdateStyleFontRequestWeightEnum = "NORMAL" | "LIGHT" | "BOLD"; type UpdateStyleFontRequestStyleEnum = "NORMAL" | "ITALIC" | "OBLIQUE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateSystemConfigRequest { /** * Configuration JSON with the key-value pair of configuration attributes to be updated. */ 'configuration': any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateTagRequest { /** * Name of the tag. */ 'name'?: string; /** * Hex color code to be assigned to the tag. For example, #ff78a9. */ 'color'?: string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateUserGroupRequest { /** * Name of the group to modify. */ 'name'?: string; /** * ID of the Liveboards to be assigned as default Liveboards to the users in the group. */ 'default_liveboard_identifiers'?: Array; /** * Description for the group. */ 'description'?: string; /** * Display name of the group. */ 'display_name'?: string; /** * Privileges to assign to the group. Note: AUTHORING is a no-op — always inherited via ALL_GROUP, assigning it has no effect. */ 'privileges'?: Array; /** * GUID or name of the sub groups. A subgroup is a group assigned to a parent group. */ 'sub_group_identifiers'?: Array; /** * Type of the group */ 'type'?: UpdateUserGroupRequestTypeEnum; /** * GUID or name of the users to assign to the group. */ 'user_identifiers'?: Array; /** * Visibility of the group. To make a group visible to other users and groups, set the visibility to SHAREABLE. */ 'visibility'?: UpdateUserGroupRequestVisibilityEnum; /** * Role identifiers of the Roles that should be assigned to the group. */ 'role_identifiers'?: Array; /** * Type of update operation. Default operation type is REPLACE */ 'operation'?: UpdateUserGroupRequestOperationEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateUserGroupRequestPrivilegesEnum = "ADMINISTRATION" | "AUTHORING" | "USERDATAUPLOADING" | "DATADOWNLOADING" | "USERMANAGEMENT" | "DATAMANAGEMENT" | "SHAREWITHALL" | "JOBSCHEDULING" | "A3ANALYSIS" | "EXPERIMENTALFEATUREPRIVILEGE" | "BYPASSRLS" | "RANALYSIS" | "DEVELOPER" | "USER_ADMINISTRATION" | "GROUP_ADMINISTRATION" | "SYNCMANAGEMENT" | "CAN_CREATE_CATALOG" | "DISABLE_PINBOARD_CREATION" | "LIVEBOARD_VERIFIER" | "PREVIEW_THOUGHTSPOT_SAGE" | "CAN_MANAGE_VERSION_CONTROL" | "THIRDPARTY_ANALYSIS" | "ALLOW_NON_EMBED_FULL_APP_ACCESS" | "CAN_ACCESS_ANALYST_STUDIO" | "CAN_MANAGE_ANALYST_STUDIO" | "CAN_MODIFY_FOLDERS" | "CAN_MANAGE_VARIABLES" | "CAN_VIEW_FOLDERS" | "CAN_MANAGE_AGENTSPOT" | "CAN_ACCESS_AGENTSPOT" | "PREVIEW_DOCUMENT_SEARCH" | "CAN_SETUP_VERSION_CONTROL" | "CAN_DOWNLOAD_VISUALS" | "CAN_DOWNLOAD_DETAILED_DATA" | "CAN_USE_SPOTTER" | "CAN_MANAGE_SPOTTER" | "CAN_CREATE_LIVEBOARD" | "CAN_CREATE_ANSWERS" | "CAN_ANALYZE_DATA" | "CAN_ADMINISTER_SCHEDULES" | "CAN_CREATE_KPI_ALERTS"; type UpdateUserGroupRequestTypeEnum = "LOCAL_GROUP" | "LDAP_GROUP" | "TEAM_GROUP" | "TENANT_GROUP"; type UpdateUserGroupRequestVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; type UpdateUserGroupRequestOperationEnum = "ADD" | "REMOVE" | "REPLACE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateUserRequest { /** * Name of the user. The username string must be unique. */ 'name'?: string; /** * A unique display name string for the user account, usually their first and last name */ 'display_name'?: string; /** * Visibility of the users. When set to SHARABLE, the user is visible to other users and groups when they try to share an object. */ 'visibility'?: UpdateUserRequestVisibilityEnum; /** * Email of the user account */ 'email'?: string; /** * Current status of the user account. The `SUSPENDED` user state indicates a transitional state applicable to IAMv2 users only. */ 'account_status'?: UpdateUserRequestAccountStatusEnum; /** * User preference for receiving email notifications when another ThoughtSpot user shares a metadata object such as Answer, Liveboard, or Worksheet. */ 'notify_on_share'?: boolean | null; /** * The user preference for revisiting the onboarding experience. */ 'show_onboarding_experience'?: boolean | null; /** * Indicates if the user has completed the onboarding and allows turning off the onboarding walkthrough. */ 'onboarding_experience_completed'?: boolean | null; /** * Type of the account. */ 'account_type'?: UpdateUserRequestAccountTypeEnum; /** * GUIDs or names of the groups. */ 'group_identifiers'?: Array; /** * GUID of the Liveboard to set a default Liveboard for the user. ThoughtSpot displays this Liveboard on the Home page when the user logs in. */ 'home_liveboard_identifier'?: string; /** * Metadata objects to add to the user\'s favorites list. */ 'favorite_metadata'?: Array; /** * IDs of the Orgs. */ 'org_identifiers'?: Array; /** * Type of update operation. Default operation type is REPLACE */ 'operation'?: UpdateUserRequestOperationEnum; /** * Locale for the user. When setting this value, do not set use_browser_language to true, otherwise the browser\'s language setting will take precedence and the preferred_locale value will be ignored. */ 'preferred_locale'?: UpdateUserRequestPreferredLocaleEnum; /** * Flag to indicate whether to use the browser locale for the user in the UI. When set to true, the preferred_locale value is unset and the browser\'s language setting takes precedence. Version: 26.3.0.cl or later */ 'use_browser_language'?: boolean | null; /** * Properties for the user */ 'extended_properties'?: any | null; /** * Preferences for the user */ 'extended_preferences'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateUserRequestVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; type UpdateUserRequestAccountStatusEnum = "ACTIVE" | "INACTIVE" | "EXPIRED" | "LOCKED" | "PENDING" | "SUSPENDED"; type UpdateUserRequestAccountTypeEnum = "LOCAL_USER" | "LDAP_USER" | "SAML_USER" | "OIDC_USER" | "REMOTE_USER"; type UpdateUserRequestOperationEnum = "ADD" | "REMOVE" | "REPLACE"; type UpdateUserRequestPreferredLocaleEnum = "en-CA" | "en-GB" | "en-US" | "de-DE" | "ja-JP" | "zh-CN" | "pt-BR" | "fr-FR" | "fr-CA" | "es-US" | "da-DK" | "es-ES" | "fi-FI" | "sv-SE" | "nb-NO" | "pt-PT" | "nl-NL" | "it-IT" | "ru-RU" | "en-IN" | "de-CH" | "en-NZ" | "es-MX" | "en-AU" | "zh-Hant" | "ko-KR" | "en-DE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateVariableRequest { /** * New name of the variable. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for variable value update in batch operations */ declare class VariableUpdateAssignmentInput { /** * ID, name, or object ID of the variable */ 'variable_identifier': string; /** * Values of the variable */ 'variable_values': Array; /** * Operation to perform */ 'operation': VariableUpdateAssignmentInputOperationEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type VariableUpdateAssignmentInputOperationEnum = "ADD" | "REMOVE" | "REPLACE" | "RESET"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Input for defining the scope of variable value assignments in batch update operations */ declare class VariableUpdateScopeInput { /** * The unique name of the org */ 'org_identifier': string; /** * Type of principal to which the variable value applies. Use USER to assign values to a specific user, or USER_GROUP to assign values to a group. */ 'principal_type'?: VariableUpdateScopeInputPrincipalTypeEnum | null; /** * Unique ID or name of the principal */ 'principal_identifier'?: string | null; /** * Unique ID or name of the model. Required for FORMULA_VARIABLE type to scope the variable value to a specific worksheet. */ 'model_identifier'?: string | null; /** * The priority level for this scope assignment, used for conflict resolution when multiple values match. Higher priority values (larger numbers) take precedence. */ 'priority'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type VariableUpdateScopeInputPrincipalTypeEnum = "USER" | "USER_GROUP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateVariableValuesRequest { /** * Array of variable assignment objects specifying the variable identifier, values to assign, and the operation type (ADD, REMOVE, REPLACE, or RESET) to perform on each variable. */ 'variable_assignment': Array; /** * Array of scope objects defining where the variable values apply, including organization context, optional principal constraints (user or group), model reference for formula variables, and priority for conflict resolution. */ 'variable_value_scope': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UpdateWebhookConfigurationRequest { /** * Name of the webhook configuration. */ 'name'?: string; /** * Description of the webhook configuration. */ 'description'?: string; /** * The webhook endpoint URL. */ 'url'?: string; /** * Additional URL parameters as key-value pairs. */ 'url_params'?: any | null; /** * List of events to subscribe to. */ 'events'?: Array; /** * Authorization configuration for the webhook. */ 'authentication'?: WebhookAuthenticationInput; /** * Configuration for webhook signature verification. */ 'signature_verification'?: WebhookSignatureVerificationInput; /** * Configuration for storage destination. AWS S3 example: {\"storage_type\": \"AWS_S3\", \"storage_config\": {\"aws_s3_config\": {\"bucket_name\": \"my-webhook-files\", \"region\": \"us-west-2\", \"role_arn\": \"arn:aws:iam::123456789012:role/ThoughtSpotDeliveryRole\", \"external_id\": \"ts-webhook-a1b2c3d4-7890\", \"path_prefix\": \"thoughtspot-webhooks/\"}}} GCP GCS example: {\"storage_type\": \"GCP_GCS\", \"storage_config\": {\"gcp_gcs_config\": {\"bucket_name\": \"my-webhook-files\", \"service_account_email\": \"my-sa@my-project.iam.gserviceaccount.com\", \"path_prefix\": \"webhooks/\"}}} Version: 26.3.0.cl or later */ 'storage_destination'?: StorageDestinationInput; /** * Additional headers as an array of key-value pairs. Example: [{\"key\": \"X-Custom-Header\", \"value\": \"custom_value\"}] Version: 26.4.0.cl or later */ 'additional_headers'?: Array; /** * Status of the webhook (ENABLED or DISABLED). Version: 26.7.0.cl or later */ 'status'?: UpdateWebhookConfigurationRequestStatusEnum; /** * List of optional configuration sections to clear. Each value removes the corresponding configuration entirely from the webhook: AUTHENTICATION removes the authentication config, SIGNATURE_VERIFICATION removes the signature verification config, STORAGE_DESTINATION removes the storage destination config. Version: 26.11.0.cl or later */ 'reset_options'?: Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UpdateWebhookConfigurationRequestEventsEnum = "LIVEBOARD_SCHEDULE"; type UpdateWebhookConfigurationRequestStatusEnum = "ENABLED" | "DISABLED"; type UpdateWebhookConfigurationRequestResetOptionsEnum = "AUTHENTICATION" | "SIGNATURE_VERIFICATION" | "STORAGE_DESTINATION"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class User { /** * Unique identifier of the user. */ 'id': string; /** * Name of the user. */ 'name': string; /** * Display name of the user. */ 'display_name': string; /** * Visibility of the users. The `SHARABLE` property makes a user visible to other users and group, who can share objects with the user. */ 'visibility': UserVisibilityEnum; /** * Unique identifier of author of the user. */ 'author_id'?: string | null; /** * Defines whether the user can change their password. */ 'can_change_password'?: boolean | null; /** * Defines whether the response has complete detail of the user. */ 'complete_detail'?: boolean | null; /** * Creation time of the user in milliseconds. */ 'creation_time_in_millis'?: number | null; 'current_org'?: Org; /** * Indicates whether the user is deleted. */ 'deleted'?: boolean | null; /** * Indicates whether the user is deprecated. */ 'deprecated'?: boolean | null; /** * Type of the user account. */ 'account_type'?: UserAccountTypeEnum | null; /** * Status of the user account. */ 'account_status'?: UserAccountStatusEnum | null; /** * Email of the user. */ 'email'?: string | null; /** * Expiration time of the user in milliseconds. */ 'expiration_time_in_millis'?: number | null; /** * Indicates whether the user is external. */ 'external'?: boolean | null; /** * Metadata objects to add to the users\' favorites list. */ 'favorite_metadata'?: Array | null; /** * Timestamp of the first login session of the user in milliseconds. */ 'first_login_time_in_millis'?: number | null; /** * Group mask of the user. */ 'group_mask'?: number | null; /** * Indicates whether the user is hidden. */ 'hidden'?: boolean | null; 'home_liveboard'?: ObjectIDAndName; /** * Incomplete details of user if any present. */ 'incomplete_details'?: any | null; /** * Indicates whether it is first login of the user. */ 'is_first_login'?: boolean | null; /** * Last modified time of the user in milliseconds. */ 'modification_time_in_millis'?: number | null; /** * Unique identifier of modifier of the user. */ 'modifier_id'?: string | null; /** * User preference for receiving email notifications on shared Answers or Liveboard. */ 'notify_on_share'?: boolean | null; /** * The user preference for turning off the onboarding experience. */ 'onboarding_experience_completed'?: boolean | null; /** * Orgs to which the user belongs. */ 'orgs'?: Array | null; /** * Unique identifier of owner of the user. */ 'owner_id'?: string | null; /** * Parent type of the user. */ 'parent_type'?: UserParentTypeEnum | null; /** * Privileges which are assigned to the user. */ 'privileges'?: Array | null; /** * User\'s preference to revisit the new user onboarding experience. */ 'show_onboarding_experience'?: boolean | null; /** * Indicates whether the user is a super user. */ 'super_user'?: boolean | null; /** * Indicates whether the user is a system user. */ 'system_user'?: boolean | null; /** * Tags associated with the user. */ 'tags'?: Array | null; /** * Unique identifier of tenant of the user. */ 'tenant_id'?: string | null; /** * Groups to which the user is assigned. */ 'user_groups'?: Array | null; /** * Inherited User Groups which the user is part of. */ 'user_inherited_groups'?: Array | null; /** * Indicates whether welcome email is sent for the user. */ 'welcome_email_sent'?: boolean | null; /** * Privileges which are assigned to the user with org. */ 'org_privileges'?: any | null; /** * Locale for the user. */ 'preferred_locale'?: string | null; /** * Flag to indicate whether to use the browser locale for the user in the UI. When set to true, the preferred_locale value is unset and the browser\'s language setting takes precedence. Version: 26.3.0.cl or later */ 'use_browser_language'?: boolean | null; /** * Properties for the user */ 'extended_properties'?: any | null; /** * Preferences for the user */ 'extended_preferences'?: any | null; /** * User Parameters which are specified for the user via JWToken */ 'user_parameters'?: any | null; /** * Access Control Properties which are specified for the user via JWToken */ 'access_control_properties'?: any | null; /** * Formula Variables which are specified for the user via JWToken */ 'variable_values'?: any | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UserVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; type UserAccountTypeEnum = "LOCAL_USER" | "LDAP_USER" | "SAML_USER" | "OIDC_USER" | "REMOTE_USER"; type UserAccountStatusEnum = "ACTIVE" | "INACTIVE" | "EXPIRED" | "LOCKED" | "PENDING" | "SUSPENDED"; type UserParentTypeEnum = "USER" | "GROUP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class UserGroupResponse { /** * Custom object ID (obj_id) of the group, if one is set. Version: 26.9.0.cl or later */ 'obj_id'?: string | null; /** * The unique identifier of the object */ 'author_id'?: string | null; /** * Indicates whether the response has complete detail of the group. */ 'complete_detail'?: boolean | null; /** * Content details of the group */ 'content'?: any | null; /** * Creation time of the group in milliseconds */ 'creation_time_in_millis'?: number | null; /** * Liveboards that are assigned as default Liveboards to the group. */ 'default_liveboards'?: Array | null; /** * Indicates whether the group is deleted */ 'deleted'?: boolean | null; /** * Indicates whether the group is deprecated */ 'deprecated'?: boolean | null; /** * Description of the group */ 'description'?: string | null; /** * Display name of the group. */ 'display_name': string; /** * Indicates whether the group is external */ 'external'?: boolean | null; /** * Generation number of the group */ 'generation_number'?: number | null; /** * Indicates whether the group is hidden */ 'hidden'?: boolean | null; /** * The unique identifier of the object */ 'id': string; /** * Index number of the group */ 'index'?: number | null; /** * Index version number of the group */ 'index_version'?: number | null; /** * Metadata version number of the group */ 'metadata_version'?: number | null; /** * Last modified time of the group in milliseconds. */ 'modification_time_in_millis'?: number | null; /** * The unique identifier of the object */ 'modifier_id'?: string | null; /** * Name of the group. */ 'name': string; /** * Orgs in which group exists. */ 'orgs'?: Array | null; /** * The unique identifier of the object */ 'owner_id'?: string | null; /** * Parent type of the group. */ 'parent_type'?: UserGroupResponseParentTypeEnum | null; /** * Privileges which are assigned to the group */ 'privileges'?: Array | null; /** * Groups who are part of the group */ 'sub_groups'?: Array | null; /** * Indicates whether the group is a system group. */ 'system_group'?: boolean | null; /** * Tags associated with the group. */ 'tags'?: Array | null; /** * Type of the group. */ 'type'?: UserGroupResponseTypeEnum | null; /** * Users who are part of the group. */ 'users'?: Array | null; /** * Visibility of the group. The SHARABLE makes a group visible to other users and groups, and thus allows them to share objects. */ 'visibility': UserGroupResponseVisibilityEnum; /** * List of roles assgined to the user */ 'roles'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type UserGroupResponseParentTypeEnum = "USER" | "GROUP"; type UserGroupResponseTypeEnum = "LOCAL_GROUP" | "LDAP_GROUP" | "TEAM_GROUP" | "TENANT_GROUP"; type UserGroupResponseVisibilityEnum = "SHARABLE" | "NON_SHARABLE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ValidateCommunicationChannelRequest { /** * Type of communication channel to validate (e.g., WEBHOOK). */ 'channel_type': ValidateCommunicationChannelRequestChannelTypeEnum; /** * Unique identifier or name for the communication channel. */ 'channel_identifier': string; /** * Event type to validate for this channel. */ 'event_type': ValidateCommunicationChannelRequestEventTypeEnum; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type ValidateCommunicationChannelRequestChannelTypeEnum = "WEBHOOK"; type ValidateCommunicationChannelRequestEventTypeEnum = "LIVEBOARD_SCHEDULE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ValidateMergeRequest { /** * Name of the branch from which changes need to be picked for validation */ 'source_branch_name': string; /** * Name of the branch where files will be merged */ 'target_branch_name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class ValidateTokenRequest { 'token': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class VariableOrgInfo { /** * ID of the Org. */ 'id': number; /** * Name of the Org. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class VariableValue { /** * The value of the variable */ 'value'?: string | null; /** * The value of the variable if it is a list type */ 'value_list'?: Array | null; /** * The unique name of the org */ 'org_identifier': string; /** * Type of principal to which this value applies. Use USER to assign the value to a specific user, or USER_GROUP to assign it to a group. */ 'principal_type'?: VariableValuePrincipalTypeEnum | null; /** * Unique ID or name of the principal */ 'principal_identifier'?: string | null; /** * Unique ID of the model Version: 26.3.0.cl or later */ 'model_identifier'?: string | null; /** * The priority assigned to this value. If there are 2 matching values, the one with the higher priority will be picked. */ 'priority'?: number | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type VariableValuePrincipalTypeEnum = "USER" | "USER_GROUP"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Variable object */ declare class Variable { /** * Unique identifier of the variable */ 'id': string; /** * Name of the variable */ 'name': string; /** * Custom object identifier (obj_id) of the variable Version: 26.10.0.cl or later */ 'obj_id'?: string | null; /** * Type of the variable */ 'variable_type'?: VariableVariableTypeEnum | null; /** * If the variable is sensitive */ 'sensitive'?: boolean | null; /** * Values of the variable */ 'values'?: Array | null; 'org'?: VariableOrgInfo; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type VariableVariableTypeEnum = "CONNECTION_PROPERTY" | "TABLE_MAPPING" | "CONNECTION_PROPERTY_PER_PRINCIPAL" | "FORMULA_VARIABLE" | "USER_PROPERTY"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Font assignments grouped by visualization type. */ declare class VisualizationFontsInput { /** * Font assignments for chart visualization areas. Provide only the areas to update; omitted areas remain unchanged. */ 'chart_visualization_fonts'?: Array | null; /** * Font assignments for table visualization areas. Provide only the areas to update; omitted areas remain unchanged. */ 'table_visualization_fonts'?: Array | null; /** * Font assignments for advanced chart visualization areas. Provide only the areas to update; omitted areas remain unchanged. Version: 26.7.0.cl or later */ 'advanced_chart_visualization_fonts'?: Array | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookAuthApiKey { /** * The header or query parameter name for the API key. */ 'key': string; /** * The API key value. */ 'value': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookAuthBasicAuth { /** * Username for basic authentication. */ 'username': string; /** * Password for basic authentication. */ 'password': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookAuthOAuth2 { /** * OAuth2 authorization server URL. */ 'authorization_url': string; /** * OAuth2 client identifier. */ 'client_id': string; /** * OAuth2 client secret key. */ 'client_secret': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookAuthentication { 'API_KEY'?: WebhookAuthApiKey; 'BASIC_AUTH'?: WebhookAuthBasicAuth; /** * Redacted Bearer token authentication configuration. */ 'BEARER_TOKEN'?: string | null; 'OAUTH2'?: WebhookAuthOAuth2; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookDeleteFailure { /** * Unique identifier of the webhook that failed to delete. */ 'id': string; /** * Name of the webhook that failed to delete. */ 'name': string; /** * Error message describing why the deletion failed. */ 'error': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Key-value pair for additional webhook headers. */ declare class WebhookKeyValuePair { /** * Header name. */ 'key': string; /** * Header value. */ 'value': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookOrg { /** * Unique identifier of the org. */ 'id': string; /** * Name of the org. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookSignatureVerification { /** * Signature verification method type. */ 'type': WebhookSignatureVerificationTypeEnum; /** * HTTP header where the signature is sent. */ 'header': string; /** * Hash algorithm used for signature verification. */ 'algorithm': WebhookSignatureVerificationAlgorithmEnum; /** * Shared secret used for HMAC signature generation. */ 'secret': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type WebhookSignatureVerificationTypeEnum = "HMAC_SHA256"; type WebhookSignatureVerificationAlgorithmEnum = "SHA256"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookUser { /** * Unique identifier of the user. */ 'id': string; /** * Name of the user. */ 'name': string; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookResponse { /** * Unique identifier of the webhook configuration. */ 'id': string; /** * Name of the webhook configuration. */ 'name': string; /** * Description of the webhook configuration. */ 'description'?: string | null; 'org'?: WebhookOrg; /** * The webhook endpoint URL. */ 'url': string; /** * Additional URL parameters as key-value pairs. */ 'url_params'?: any | null; /** * List of events this webhook subscribes to. */ 'events': Array; 'authentication'?: WebhookAuthentication; 'signature_verification'?: WebhookSignatureVerification; /** * Additional headers as an array of key-value pairs. Version: 26.4.0.cl or later */ 'additional_headers'?: Array | null; /** * Creation time of the webhook configuration in milliseconds. */ 'creation_time_in_millis': number; /** * Last modified time of the webhook configuration in milliseconds. */ 'modification_time_in_millis': number; 'created_by'?: WebhookUser; 'last_modified_by'?: WebhookUser; 'storage_destination'?: StorageDestination; /** * Status of the webhook (ENABLED or DISABLED). Only present when explicitly set. Version: 26.7.0.cl or later */ 'status'?: WebhookResponseStatusEnum | null; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type WebhookResponseEventsEnum = "LIVEBOARD_SCHEDULE"; type WebhookResponseStatusEnum = "ENABLED" | "DISABLED"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookDeleteResponse { /** * Number of webhooks successfully deleted. */ 'deleted_count': number; /** * Number of webhooks that failed to delete. */ 'failed_count': number; /** * List of successfully deleted webhooks. */ 'deleted_webhooks': Array; /** * List of webhooks that failed to delete with error details. */ 'failed_webhooks': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookPagination { /** * The starting record number from where the records are included. */ 'record_offset': number; /** * The number of records included in the response. */ 'record_size': number; /** * Total number of webhook configurations available. */ 'total_count': number; /** * Indicates whether more records are available beyond the current response. */ 'has_more': boolean; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ declare class WebhookSearchResponse { /** * List of webhook configurations matching the search criteria. */ 'webhooks': Array; 'pagination': WebhookPagination; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Storage setup configuration for a specific upload path. The populated fields depend on config_type: AWS_TO_S3_STORAGE: aws_account_id, trust_policy_template, setup_instructions. GCP_TO_S3_STORAGE: gcp_service_account_id, oidc_provider, trust_policy_template, setup_instructions. GCP_TO_GCS_STORAGE: service_account_email, required_role, setup_instructions. */ declare class WebhookStorageSetupConfig { /** * Discriminator identifying the upload path. One of: AWS_TO_S3_STORAGE, GCP_TO_S3_STORAGE, GCP_TO_GCS_STORAGE. */ 'config_type': WebhookStorageSetupConfigConfigTypeEnum; /** * AWS Account ID of the platform. Populated for AWS_TO_S3_STORAGE. Include in your IAM role trust policy. */ 'aws_account_id'?: string | null; /** * GCP service account numeric ID of the platform (the \'sub\' claim in OIDC tokens). Populated for GCP_TO_S3_STORAGE. */ 'gcp_service_account_id'?: string | null; /** * OIDC identity provider URL. Populated for GCP_TO_S3_STORAGE; always \'accounts.google.com\' for GCP. */ 'oidc_provider'?: string | null; /** * Sample IAM trust policy JSON. Populated for AWS_TO_S3_STORAGE and GCP_TO_S3_STORAGE. */ 'trust_policy_template'?: any | null; /** * GCP service account email of the platform. Populated for GCP_TO_GCS_STORAGE. Grant it roles/iam.serviceAccountTokenCreator on your service account. */ 'service_account_email'?: string | null; /** * IAM role the customer must grant to the platform service account. Populated for GCP_TO_GCS_STORAGE. */ 'required_role'?: string | null; /** * Step-by-step instructions to configure the storage destination. */ 'setup_instructions': Array; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type WebhookStorageSetupConfigConfigTypeEnum = "AWS_TO_S3_STORAGE" | "GCP_TO_S3_STORAGE" | "GCP_TO_GCS_STORAGE"; /** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Cluster-level storage setup information for configuring customer-managed storage. */ declare class WebhookStorageConfigInfo { /** * Type of storage destination. */ 'storage_type': WebhookStorageConfigInfoStorageTypeEnum; /** * Storage destination provider. */ 'provider': WebhookStorageConfigInfoProviderEnum; 'config': WebhookStorageSetupConfig; static readonly discriminator: string | undefined; static readonly mapping: { [index: string]: string; } | undefined; static readonly attributeTypeMap: Array<{ name: string; baseName: string; type: string; format: string; }>; static getAttributeTypeMap(): { name: string; baseName: string; type: string; format: string; }[]; constructor(); } type WebhookStorageConfigInfoStorageTypeEnum = "OBJECT_STORAGE"; type WebhookStorageConfigInfoProviderEnum = "AWS_S3" | "GCP_GCS"; /** * Defines the contract for a middleware intercepting requests before * they are sent (but after the RequestContext was created) * and before the ResponseContext is unwrapped. * */ interface Middleware { /** * Modifies the request before the request is sent. * * @param context RequestContext of a request which is about to be sent to the server * @returns an observable of the updated request context * */ pre(context: RequestContext): Observable; /** * Modifies the returned response before it is deserialized. * * @param context ResponseContext of a sent request * @returns an observable of the modified response context */ post(context: ResponseContext): Observable; } /** * Defines the contract for a middleware intercepting requests before * they are sent (but after the RequestContext was created) * and before the ResponseContext is unwrapped. * */ interface PromiseMiddleware { /** * Modifies the request before the request is sent. * * @param context RequestContext of a request which is about to be sent to the server * @returns an observable of the updated request context * */ pre(context: RequestContext): Promise; /** * Modifies the returned response before it is deserialized. * * @param context ResponseContext of a sent request * @returns an observable of the modified response context */ post(context: ResponseContext): Promise; } interface BaseServerConfiguration { makeRequestContext(endpoint: string, httpMethod: HttpMethod): RequestContext; } /** * * Represents the configuration of a server including its * url template and variable configuration based on the url. * */ declare class ServerConfiguration implements BaseServerConfiguration { private url; private variableConfiguration; constructor(url: string, variableConfiguration: T); /** * Sets the value of the variables of this server. Variables are included in * the `url` of this ServerConfiguration in the form `{variableName}` * * @param variableConfiguration a partial variable configuration for the * variables contained in the url */ setVariables(variableConfiguration: Partial): void; getConfiguration(): T; private getUrl; /** * Creates a new request context for this server using the url with variables * replaced with their respective values and the endpoint of the request appended. * * @param endpoint the endpoint to be queried on the server * @param httpMethod httpMethod to be used * */ makeRequestContext(endpoint: string, httpMethod: HttpMethod): RequestContext; } declare const server1: ServerConfiguration<{ "base-url": string; }>; declare const servers: ServerConfiguration<{ "base-url": string; }>[]; interface Configuration { readonly baseServer: BaseServerConfiguration; readonly httpApi: HttpLibrary; readonly middleware: M[]; readonly authMethods: AuthMethods; } interface MiddlewareMergeOptions { middlewareMergeStrategy?: "replace" | "append" | "prepend"; } type ConfigurationOptions$1 = Partial> & MiddlewareMergeOptions; type PromiseConfigurationOptions = ConfigurationOptions$1; /** * Interface with which a configuration object can be configured. */ interface ConfigurationParameters { /** * Default server to use - a list of available servers (according to the * OpenAPI yaml definition) is included in the `servers` const in `./servers`. You can also * create your own server with the `ServerConfiguration` class from the same * file. */ baseServer?: BaseServerConfiguration; /** * HTTP library to use e.g. IsomorphicFetch. This can usually be skipped as * all generators come with a default library. * If available, additional libraries can be imported from `./http/*` */ httpApi?: HttpLibrary; /** * The middlewares which will be applied to requests and responses. You can * add any number of middleware components to modify requests before they * are sent or before they are deserialized by implementing the `Middleware` * interface defined in `./middleware` */ middleware?: Middleware[]; /** * Configures middleware functions that return promises instead of * Observables (which are used by `middleware`). Otherwise allows for the * same functionality as `middleware`, i.e., modifying requests before they * are sent and before they are deserialized. */ promiseMiddleware?: PromiseMiddleware[]; /** * Configuration for the available authentication methods (e.g., api keys) * according to the OpenAPI yaml definition. For the definition, please refer to * `./auth/auth` */ authMethods?: AuthMethodsConfiguration; } /** * Provide your `ConfigurationParameters` to this function to get a `Configuration` * object that can be used to configure your APIs (in the constructor or * for each request individually). * * If a property is not included in conf, a default is used: * - baseServer: server1 * - httpApi: IsomorphicFetchHttpLibrary * - middleware: [] * - promiseMiddleware: [] * - authMethods: {} * * @param conf partial configuration */ declare function createConfiguration(conf?: ConfigurationParameters): Configuration; /** * Represents an error caused by an api call i.e. it has attributes for a HTTP status code * and the returned body object. * * Example * API returns a ErrorMessageObject whenever HTTP status code is not in [200, 299] * => ApiException(404, someErrorMessageObject) * */ declare class ApiException extends Error { code: number; body: T; headers: { [key: string]: string; }; constructor(code: number, message: string, body: T, headers: { [key: string]: string; }); } /** * * @export * @class BaseAPI */ declare class BaseAPIRequestFactory { protected configuration: Configuration; constructor(configuration: Configuration); } /** * * @export * @class RequiredError * @extends {Error} */ declare class RequiredError extends Error { api: string; method: string; field: string; name: "RequiredError"; constructor(api: string, method: string, field: string); } /** * no description */ declare class AIApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 26.2.0.cl or later Creates a new Spotter agent conversation based on the provided context and settings. The endpoint was in Beta from 26.2.0.cl through 26.4.0.cl. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The conversation context is defined by exactly one of the following parameters: - `metadata_context`: defines the conversation context by data source. The context type can be one of: - `DATA_SOURCE` *(available from 26.5.0.cl)*: targets a specific data source. Provide `data_source_identifier` in `data_source_context` for a single data source, or `data_source_identifiers` for multi-data-source context. The deprecated `guid` field is accepted for backwards compatibility. - `AUTO_MODE` *(available from 26.5.0.cl)*: automatically discovers and selects the most relevant datasets for the user\'s queries. - `analyst_identifier` *(available from 26.10.0.cl)*: unique identifier of a Spotter Analyst to start the conversation from. The conversation uses the analyst\'s configuration — its data sources, agent instructions, and connectors — so `metadata_context` must be omitted. The caller must be the analyst\'s author, have the analyst shared with them, or hold admin / Spotter-management privileges. Passing both `analyst_identifier` and `metadata_context`, or neither, is rejected. > **Note for callers on versions 26.2.0.cl – 26.4.0.cl (Beta):** use the lowercase `data_source` enum value with the `guid` field instead of the above. Example: `{ \"type\": \"data_source\", \"data_source_context\": { \"guid\": \"\" } }`. The `conversation_settings` parameter controls which Spotter capabilities are enabled for the conversation: - `enable_contextual_change_analysis` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_natural_language_answer_generation` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_reasoning` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_save_chat` (default: `false`, *available from 26.5.0.cl*) — enables saving the conversation for later retrieval via conversation history If the request is successful, the response includes a unique `conversation_identifier` that must be passed to `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming` to send messages within this conversation. The response also includes `conversation_id` with the same value for backwards compatibility; use `conversation_identifier` for new integrations. When the conversation is started from an analyst, the response additionally carries the analyst\'s `analyst_id`; it is `null` otherwise. #### Example request ```json { \"metadata_context\": { \"type\": \"DATA_SOURCE\", \"data_source_context\": { \"data_source_identifier\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\" } }, \"conversation_settings\": {} } ``` #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view permission on the specified metadata object, or has no access to the analyst specified in `analyst_identifier`. | | 404 | Not found — no analyst with the given `analyst_identifier` exists in the caller\'s Org. | | 422 | Unprocessable entity — the request fails validation: both `analyst_identifier` and `metadata_context` were provided, neither was provided, or `metadata_context` is malformed (for example, `DATA_SOURCE` context without a data source identifier). | > ###### Note: > > - This endpoint was in Beta from 26.2.0.cl through 26.4.0.cl and is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createAgentConversationRequest */ createAgentConversation(createAgentConversationRequest: CreateAgentConversationRequest, _options?: Configuration): Promise; /** * Creates a Spotter Analyst: a configured agent with a name, description, at least one data source, and optional agent instructions, MCP connectors, and starter prompts. Analysts created via API use the default icon until one is set in the UI. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Version: 26.10.0.cl or later Creates a Spotter Analyst: a configured agent with a name, description, data sources, and optional agent instructions, MCP connectors, and starter prompts that your users converse with in Spotter. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Use a bearer token for the Org in which the analyst should be created. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior for this analyst. Instructions that conflict with system guardrails are rejected with `409`. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). The caller must have view access to every referenced source. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors to link to the analyst. - `starter_prompts` (optional): up to 4 plain-text prompts shown on the analyst landing page, each between 10 and 250 characters. Display order follows list position. If the request is successful, the response contains the created analyst, including the server-assigned `id`. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`), the last-update time as `updated_time_in_millis` (epoch milliseconds), and the `created_by` and `updated_by` users. #### Error conditions - `403` — missing privileges, or no view access to a referenced data source. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param createAnalystRequest */ createAnalyst(createAnalystRequest: CreateAnalystRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Creates a new conversation session tied to a specific data model for AI-driven natural language querying. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `metadata_identifier`: the unique ID of the data source that provides context for the conversation Optionally, you can provide: - `tokens`: a token string to set initial context for the conversation (e.g., `\"[sales],[item type],[state]\"`) If the request is successful, ThoughtSpot returns a unique `conversation_identifier` that must be passed to `sendMessage` to continue the conversation. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createConversationRequest */ createConversation(createConversationRequest: CreateConversationRequest, _options?: Configuration): Promise; /** * Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. The request has no body; the response contains the `id` of the deleted analyst. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot delete it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request has no body — the analyst to delete is identified by the `analyst_identifier` path parameter, as returned by the create analyst API. A successful request returns the `id` of the deleted analyst. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to delete. */ deleteAnalyst(analystIdentifier: string, _options?: Configuration): Promise; /** * Deletes an existing agent conversation. Version: 26.7.0.cl or later Permanently deletes an existing saved agent conversation and all its associated messages. This operation is irreversible — deleted conversations cannot be recovered. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being deleted. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to delete, as returned by `createAgentConversation` or `getConversationList` A successful request returns an empty `204 No Content` response. The deleted conversation no longer appears in `getConversationList`. #### Example request ```bash DELETE /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/delete ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | > ###### Note: > > - Deletion is permanent and cannot be undone. Ensure the correct `conversation_identifier` is used before calling this endpoint. > - Only conversations created with `enable_save_chat: true` are persisted and can be deleted via this endpoint. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to delete. */ deleteConversation(conversationIdentifier: string, _options?: Configuration): Promise; /** * Exports memory entries (rules, recipes, and always-apply rules) for the specified data-models as a single YAML payload. The payload can be edited locally and re-submitted through `importMemory`. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to export data-model memories for a given list of data-models. This exported yaml file can then be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To export memory for one or more data-models, the request may include: - `sources`: A list of typed scope groups identifying which data-models to export memory for. Each group contains: - `type`: The source object type for this group — `DATA_MODEL`. - `identifiers`: An array of GUIDs or human-readable `obj_id`s of the data-models to export memory for. obj_ids are resolved server-side before forwarding. The API returns a response object with: - `content`: The serialized memory payload (YAML) — exactly the shape that the `importMemory` API consumes. Edit it locally and pass it back through `importMemory` to apply changes. #### Source Type - **DATA_MODEL**: The `identifiers` are data-model GUIDs. This is the default source type for Spotter memory and covers the rules, recipes and always-apply rules attached directly to a data-model. #### File format The exported `content` is a YAML document with a single top-level `memories` key holding a list of memory items — exactly the format the `importMemory` API consumes. The full format reference (an annotated example, memory item fields, per-type content, and `datamodel_sources` identification) is documented in the `importMemory` API\'s **File format** section. Exported files populate each source\'s `guid` and, if present, `obj_id` as well. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have necessary permissions, or lacks read access on a referenced data-model, or the bearer token does not correspond to the data-model\'s org. | > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param exportMemoryRequest */ exportMemory(exportMemoryRequest: ExportMemoryRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Retrieves the admin instructions currently configured for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. Requires admin privileges. Only users with org admin access can retrieve agent instructions. #### Usage guidelines No input parameters are required. The API returns the stored `AgentInstructions` record for the caller\'s tenant and org. If no instructions have been configured yet, the API returns a record with an empty `instructions` field and `null` values for `id`, `created_at`, `updated_at`, and `last_updated_by`. If the request is successful, the response includes: - `id`: unique identifier of the instructions record - `instructions`: the configured instructions text - `created_at`: ISO timestamp when the instructions were first saved - `updated_at`: ISO timestamp when the instructions were last updated - `last_updated_by`: user ID of the admin who last updated the instructions (may be `null` for older records) #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to read agent instructions. | > ###### Note: > > - Use `setAgentInstructions` to create or update agent instructions. > - Available from version 26.6.0.cl and later. */ getAgentInstructions(_options?: Configuration): Promise; /** * Retrieves the full public-safe content of a saved agent conversation: ordered turns (user messages and agent response items) and sanitized code-execution file metadata. Internal graph or branch state, Azure file identifiers, and messages with a `SYSTEM` source are omitted. The full answer payload is not embedded; fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Retrieves the full public-safe content of a saved agent conversation. Returns ordered conversation messages — each carrying an optional user prompt (the user\'s message and any attachments) and the agent response items produced for that turn — plus sanitized metadata for any files generated by the code-execution tool. Use this endpoint to render a persisted conversation in a UI, build an audit trail, or post-process a completed conversation. The full answer payload is not embedded — fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` _(path parameter)_: the unique ID of the conversation, as returned by `createAgentConversation` or `getConversationList`. If the request is successful, the response contains two top-level fields: | Field | Type | Description | | ---------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | | `messages` | `ConversationMessage[]` | Ordered oldest to newest. Empty array when the conversation has no messages. | | `code_execution_files` | `CodeExecutionFileMetadata[]` | List of sanitized file metadata entries (one per `file_id`). Covers all code-execution-generated files referenced anywhere in the conversation. Empty array when there are none. | No other top-level fields are returned. #### ConversationMessage fields | Field | Type | Description | | --------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------- | | `message_id` | `String` | Stable identifier for the turn. For liveboard-started synthetic first turns, this is the root node identifier. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch for the turn. | | `user_prompt` | `UserPrompt` | User-authored prompt that started the turn (message and attachments). `null` for liveboard-started synthetic first turns. | | `response_items` | `ConversationResponseItem[]` | Agent-side output produced in response to this turn. Empty array for in-progress turns. | #### UserPrompt fields | Field | Type | Description | | ------------- | ---------------------- | ---------------------------------------------------------------------------------------------------- | | `message` | `UserMessage` | User query that started the turn. `null` for liveboard-started synthetic first turns. | | `attachments` | `UserAttachmentItem[]` | Files or connector resources attached to the user message. Empty array when there are no attachments. | #### UserMessage fields | Field | Type | Description | | ------------ | -------- | --------------------------------------------- | | `message_id` | `String` | Unique identifier of the user-source message. | | `content` | `String` | Text body of the user query. | #### UserAttachmentItem fields Discriminated by `type`. Only `\"file\"` or `\"resource\"` are valid values. Only the fields for the indicated variant are populated. See `ConversationResponseItem` below for the field definitions of the `file` and `resource` variants — `UserAttachmentItem` uses the same fields. #### ConversationResponseItem fields Every item carries a `type` discriminator and these shared fields: | Field | Type | Description | | --------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ | | `type` | `String` | Discriminator. One of `\"text\"`, `\"tool_call\"`, `\"tool_result\"`, `\"answer\"`, `\"file\"`, `\"resource\"`, `\"search_datasets\"`. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch when this item was produced. | | `is_thinking` | `Boolean` | `true` when the item represents internal agent reasoning rather than user-facing output. Consumers may hide or collapse these. | | `step_title` | `String` | Human-readable label for the agent step producing this item (e.g. `\"Searching\"`, `\"Visualising\"`). | Variant-specific fields: - **`text`** — agent text output: `content` (String), `content_type` (`ContentMimeType` enum), `file_reference` (FileReference). - **`tool_call`** — agent invoked a tool: `tool_call_id` (String), `tool_name` (String), `arguments` (JSON object). - **`tool_result`** — result returned from a tool invocation: `tool_call_id`, `tool_name`, `content`, `content_type` (`ContentMimeType` enum), `success` (Boolean). - **`answer`** — slim reference to a saved answer: `answer_id` (String), `tool_call_id`, `tool_name`. - **`file`** — uploaded or generated files: `files` (`PublicFileInfo[]`). - **`resource`** — MCP connector resource: `title`, `uri`, `name`, `mime_type`, `description`, `size` (Int), `connector_id`, `connector_name`, `connector_slug`, `transport_type` (`TransportType` enum). - **`search_datasets`** — dataset discovery result: `text` (String), `data_sources` (`DataSourceInfo[]`). Clients should switch on `type` and ignore unknown variants for forward-compatibility. #### content_type values `content_type` is the `ContentMimeType` enum. The following values are defined: | Value | Wire MIME | Meaning | | --------------------------- | --------------------------- | ---------------------------------------------------- | | `TEXT_PLAIN` | `text/plain` | Plain text. Default for `tool_result`. | | `TEXT_MARKDOWN` | `text/markdown` | Markdown. Default for `text`. | | `TEXT_X_MARKDOWN_WITH_CODE` | `text/x-markdown-with-code` | Markdown whose body starts with a fenced code block. | | `TEXT_HTML` | `text/html` | Raw HTML. | #### transport_type values `transport_type` is the `TransportType` enum used on the `resource` variant. | Value | Meaning | | ------------------ | --------------------------------------------- | | `STREAMABLE_HTTP` | Streamable HTTP transport (default for MCP). | | `SSE` | Server-sent events transport. | #### FileReference fields | Field | Type | Description | | ------------------------ | -------- | ------------------------------------------------------------ | | `file_id` | `String` | Unique identifier of the code-execution-generated file. | | `display_name` | `String` | Human-readable file name. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | Cross-reference `file_id` against `code_execution_files` to retrieve full metadata including the `expired` flag before attempting a download. #### PublicFileInfo fields | Field | Type | Description | | ------------------------ | -------- | -------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `size_bytes` | `Int` | File size in bytes. | #### CodeExecutionFileMetadata fields Each entry in the `code_execution_files` array contains: | Field | Type | Description | | ------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `expired` | `Boolean` | When `true`, the underlying file is no longer retrievable from code-execution storage; UIs should disable download and preview. | #### Loading answer payloads Each `AnswerResponseItem` in the response contains an `answer_id` field. Pass this value as the `answer_identifier` parameter to `loadAnswer` to retrieve the full answer payload (TML tokens, visualization metadata) for that item. #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/messages ``` #### Example response ```json { \"messages\": [ { \"message_id\": \"node_u_01\", \"timestamp_in_millis\": 1744000000000, \"user_prompt\": { \"message\": { \"message_id\": \"msg_u_01\", \"content\": \"Show me revenue by region as a chart.\" }, \"attachments\": [] }, \"response_items\": [ { \"type\": \"tool_call\", \"tool_call_id\": \"toolu_01ABC\", \"tool_name\": \"search_datasets\", \"step_title\": \"Searching datasets\", \"arguments\": { \"query\": \"revenue\" }, \"timestamp_in_millis\": 1744000001000, \"is_thinking\": false }, { \"type\": \"answer\", \"answer_id\": \"ans_01XYZ\", \"tool_call_id\": \"toolu_02DEF\", \"tool_name\": \"fetch_and_visualize\", \"step_title\": \"Visualising\", \"timestamp_in_millis\": 1744000004000, \"is_thinking\": false }, { \"type\": \"text\", \"content\": \"Revenue is highest in APAC.\", \"content_type\": \"TEXT_MARKDOWN\", \"timestamp_in_millis\": 1744000005000, \"is_thinking\": false, \"step_title\": null, \"file_reference\": { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"created_time_in_millis\": 1744027200000 } } ] } ], \"code_execution_files\": [ { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"file_type\": \"csv\", \"created_time_in_millis\": 1744027200000, \"expired\": false } ] } ``` #### Example: liveboard-started conversation When a conversation is initiated from a saved liveboard visualization rather than a user query, the first turn is synthetic. `user_prompt` is `null`, and `response_items` contains a single `answer` item referencing the seed visualization. ```json { \"messages\": [ { \"message_id\": \"ROOT_NODE\", \"timestamp_in_millis\": 1743999000000, \"user_prompt\": null, \"response_items\": [ { \"type\": \"answer\", \"answer_id\": \"lb_seed_01\", \"tool_call_id\": null, \"tool_name\": null, \"step_title\": null, \"timestamp_in_millis\": 1743999000000, \"is_thinking\": false } ] } ], \"code_execution_files\": [] } ``` Subsequent turns follow the normal user-to-agent pattern. #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation exists with the given identifier for the authenticated user. | > ###### Note: > > - Messages with an internal `SYSTEM` source are always dropped from the response. > - In-progress turns are still returned with an empty `response_items` array so clients can render the user message immediately. > - Do not assume every `tool_call` has a paired `tool_result` or `answer` — an interrupted conversation can leave a dangling call. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to load. */ getConversation(conversationIdentifier: string, _options?: Configuration): Promise; /** * Retrieves the list of saved agent conversations for the currently authenticated user. Only conversations created with `enable_save_chat: true` are returned. Version: 26.7.0.cl or later Retrieves a paginated list of saved agent conversations for the currently authenticated user. Only conversations that were created with `enable_save_chat: true` in `createAgentConversation` are returned. Requires `CAN_USE_SPOTTER` privilege. #### Usage guidelines The request supports the following optional query parameters: - `limit`: maximum number of conversations to return. Use this together with `offset` for pagination. - `offset`: number of conversations to skip before returning results. Defaults to `0`. - `skip_empty`: when `true` (default), conversations with no messages are excluded from the results. Set to `false` to include empty conversations. If the request is successful, the response includes a `conversations` array. Each entry contains: - `conversation_identifier`: the unique ID of the conversation, used as input to `sendAgentConversationMessage`, `updateConversation`, `deleteConversation`, `stopConversation`, and `loadAnswer` - `conversation_title`: the display name of the conversation - `created_at`: ISO 8601 timestamp of when the conversation was created - `updated_at`: ISO 8601 timestamp of the most recent update to the conversation - `data_source_identifiers`: list of unique IDs of the data sources associated with the conversation - `data_source_names`: array of `{ id, name }` objects for the data sources associated with the conversation - `is_pinned`: whether the current user has pinned this conversation. Pinned conversations are surfaced first in the list. Available from version 26.10.0.cl. - `analyst_id`: unique identifier of the Spotter Analyst the conversation is associated with, or `null` when the conversation is not associated with an analyst. Available from version 26.10.0.cl. #### Pagination Use `limit` and `offset` to page through large result sets: ``` GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=0 → first page GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=20 → second page ``` #### Pagination and `has_more` The response includes a `has_more: Boolean` field. When `true`, there are additional conversations beyond the current page — increment `offset` by `limit` to fetch the next page. When `has_more` is `false`, the current page is the last. Note that `total_count` is not returned; use `has_more` to drive paging controls. #### Example response ```json { \"conversations\": [ { \"conversation_identifier\": \"abc123\", \"conversation_title\": \"Sales by Region Q1\", \"created_at\": \"2026-03-01T10:00:00Z\", \"updated_at\": \"2026-03-05T14:23:00Z\", \"data_source_identifiers\": [\"ds-001\"], \"data_source_names\": [{ \"id\": \"ds-001\", \"name\": \"Retail Sales\" }], \"is_pinned\": true } ], \"has_more\": false } ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` appear in this list. Conversations created with `enable_save_chat: false` (the default) are not persisted and cannot be retrieved. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param limit Maximum number of conversations to return. Used for pagination. * @param offset Number of conversations to skip before returning results. Used for pagination. * @param skipEmpty When true, excludes conversations with no messages. Defaults to true. */ getConversationList(limit?: number, offset?: number, skipEmpty?: boolean, _options?: Configuration): Promise; /** * Version: 10.15.0.cl or later Suggests the most relevant data sources for a given natural language query, ranked by confidence with LLM-generated reasoning. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the underlying metadata entities referenced in the response. #### Usage guidelines The request must include: - `query`: the natural language question to find relevant data sources for If the request is successful, the API returns a ranked list of suggested data sources, each containing: - `confidence`: a float score indicating the model\'s confidence in the relevance of the suggestion - `details`: metadata about the data source - `data_source_identifier`: the unique ID of the data source - `data_source_name`: the display name of the data source - `description`: a description of the data source - `reasoning`: LLM-generated rationale explaining why the data source was recommended #### Error responses | Code | Description | |------|--------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the underlying metadata entities. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before it is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param getDataSourceSuggestionsRequest */ getDataSourceSuggestions(getDataSourceSuggestionsRequest: GetDataSourceSuggestionsRequest, _options?: Configuration): Promise; /** * Version: 10.15.0.cl or later Retrieves existing natural language (NL) instructions configured for a specific data model. These instructions guide the AI system in understanding data context and generating more accurate responses. Requires `CAN_USE_SPOTTER` privilege, at least view access on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines The request must include: - `data_source_identifier`: the unique ID of the data model to retrieve instructions for If the request is successful, the API returns: - `nl_instructions_info`: an array of instruction objects, each containing: - `instructions`: the configured text instructions for AI processing - `scope`: the scope of the instruction — currently only `GLOBAL` is supported #### Instructions scope - **GLOBAL**: Instructions that apply globally across the system on the given data-model (currently only global instructions are supported) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view access on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs at least view access on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Use this API to review currently configured instructions before modifying them with `setNLInstructions`. * @param getNLInstructionsRequest */ getNLInstructions(getNLInstructionsRequest: GetNLInstructionsRequest, _options?: Configuration): Promise; /** * Version: 10.13.0.cl or later Breaks down a natural language query into a series of smaller analytical sub-questions, each mapped to a relevant data source. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request must include: - `query`: the natural language question to decompose into analytical sub-questions - `metadata_context`: at least one of the following context identifiers to guide question generation: - `conversation_identifier` — an existing conversation session ID - `answer_identifiers` — a list of Answer GUIDs - `liveboard_identifiers` — a list of Liveboard GUIDs - `data_source_identifiers` — a list of data source GUIDs Optional parameters for refining the output: - `ai_context`: additional context to improve response quality - `content` — supplementary text or CSV data as string input - `instructions` — custom text instructions for the AI system - `limit_relevant_questions`: maximum number of questions to return (default: `5`) - `bypass_cache`: if `true`, forces fresh computation instead of returning cached results If the request is successful, the API returns a list of relevant analytical questions, each containing: - `query`: the generated sub-question - `data_source_identifier`: the unique ID of the data source the question targets - `data_source_name`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param getRelevantQuestionsRequest */ getRelevantQuestions(getRelevantQuestionsRequest: GetRelevantQuestionsRequest, _options?: Configuration): Promise; /** * Returns the current share state for a conversation the caller owns: whether the shared view is outdated relative to the latest conversation content, and the list of principals that currently have access. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation. */ getShareInfo(conversationIdentifier: string, _options?: Configuration): Promise; /** * Returns the full read-only view of a shared conversation, including ordered messages and data source metadata. Accessible by the conversation owner and any principal (user or group) that has been granted access. Requires `CAN_USE_SPOTTER` privilege. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the source conversation. */ getSharedContent(conversationIdentifier: string, _options?: Configuration): Promise; /** * Imports memory entries (rules, recipes, and always-apply rules) from a YAML payload, typically a payload produced by `exportMemory` and edited locally. The imported entries replace the existing memory for the data-models referenced in the payload. `dry_run` is required. Pass `true` first to validate the payload and review the preview counts and any row-level failures without making changes, then re-run with `dry_run = false` to apply the import. An import is not applied if any row fails validation. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to import data-model memories using a given yaml file. This yaml file can be obtained from the export memory API in source env and can be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To import memory, the request must include: - `content`: The full serialized memory payload to import (YAML). Typically the `content` value returned by the `exportMemory` API, edited locally and re-submitted. The payload itself identifies which data-models the memory applies to, so no separate identifier list is required. - `dry_run`: Required. When `true`, validate the payload and return preview counts without writing anything; when `false`, apply the import. Always run with `dry_run = true` first, then re-run with `dry_run = false` once you are satisfied with the preview. The import replaces the existing global memories on the data-models referenced in the payload with the entries supplied in the payload. The API returns a response object with: - `status`: The terminal status of the import (`SUCCESS`, `VALIDATION_FAILED`, or `FAILED`). - `summary`: Per `(memory_type, source)` counts. In a dry run the `deleted_record_count`/`inserted_record_count` are previews; in a real import they are actuals. On `VALIDATION_FAILED`, `summary` is `null` when validation fails before any item is processed (e.g. an unresolved or inaccessible data-model source) and an empty list otherwise — treat both as \"no counts available\". - `validation_failures`: Per-item validation failures, each with `line_number`, `reason`, `field_name`, and `message` for click-to-locate and inline highlighting. - `diagnostics`: Groups of diagnostic messages, each with a `sub_status` (`WARNING`, `FAILURE`, `ROLLED_BACK`, or `UNKNOWN`) and a `messages` list. This is the single channel for both non-fatal warnings (under `WARNING`, e.g. when some older memory entries could not be fully cleaned up) and fatal causes (e.g. the failure reason under `FAILURE`, or a `ROLLED_BACK` group when new entries were undone). - `operation_id`: A server-generated identifier for this import operation; include it when contacting support to help correlate server-side logs. Populated once the server registers the import operation; `null` when the request fails earlier (e.g. while parsing the payload or resolving its data-model sources). #### File format The payload is a YAML document with a single top-level `memories` key holding a list of memory items. Each item is self-contained: a `type`, a typed `content` block, a `datamodel_sources` list, and optional `tags`. Typically you don\'t hand-author this file — you obtain it from `exportMemory`, edit it, and submit it back through `importMemory`. ```yaml memories: - type: RULE content: rule_definition: \"Always filter revenue to closed-won deals.\" datamodel_sources: - guid: 11111111-1111-1111-1111-111111111111 obj_id: sales_data_model tags: - finance - type: RULE content: rule_definition: \"Exclude internal test accounts from all results.\" datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"top accounts by revenue\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"monthly new customer count\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: ALWAYS_APPLY_RULES content: rules: - \"Never show internal test accounts.\" - \"Round currency to whole dollars.\" datamodel_sources: - guid: 22222222-2222-2222-2222-222222222222 ``` A file can contain multiple `RULE` and multiple `RECIPE` items for a data-model, but at most one `ALWAYS_APPLY_RULES` item per data-model. ##### Memory item fields | Field | Required | Type | Description | |-------|----------|------|-------------| | `type` | Yes | String enum | One of `RULE`, `RECIPE`, or `ALWAYS_APPLY_RULES`. | | `content` | Yes | Mapping | Type-specific content block (see below). | | `datamodel_sources` | Yes | Non-empty list | The data-model(s) the memory attaches to. | | `tags` | No | List of strings | Free-form labels. | ##### Memory types and content | `type` | Content fields | Notes | |--------|----------------|-------| | `RULE` | `rule_definition` — required, non-empty string | A single semantic rule. | | `RECIPE` | `recipe` and `user_query` — both required, non-empty strings | `recipe` is an opaque serialized blob; `user_query` is the natural-language query it answers. | | `ALWAYS_APPLY_RULES` | `rules` — required, non-empty list of non-empty strings | Data-model-wide always-apply rules. At most one `ALWAYS_APPLY_RULES` item per data-model. | ##### Identifying data-models (`datamodel_sources`) Each item must list at least one source. Each entry identifies a data-model by at least one of: - `guid` — the data-model GUID. - `obj_id` — a stable object ID, resolved to a GUID server-side. If both are supplied, `obj_id` takes precedence and `guid` is ignored entirely; `guid` takes effect only when `obj_id` is absent. Exported files populate `guid` and, if present, `obj_id` as well. > ⚠️ **Cross-environment import:** When `obj_id` is present it is > authoritative — the accompanying `guid` is **not** used as a fallback. > If an `obj_id` does not exist in the target environment, that item > fails with `UNRESOLVED_SOURCE`. Remove or correct stale `obj_id` > values before importing across environments. #### Validations reference The payload is fully validated before anything is written. This applies to `dry_run = true` and `dry_run = false` alike: if any item fails validation, the entire import is rejected — no partial writes — and all failures are returned together so you can fix them in one pass. ##### Limits Default limits (may be adjusted in future if the need arises): | Limit | Default | |-------|---------| | Uploaded file size | 10 MiB | | Total memory items | 10,000 | | `rule_definition` length | 1,000 characters | | `user_query` length | 1,000 characters | | `recipe` length | 2,000 characters | | `rules` combined length (`ALWAYS_APPLY_RULES`) | 2,000 characters | | Tags per item | 10 | | Characters per tag | 50 | The `rules` limit in `ALWAYS_APPLY_RULES` is a combined budget across all entries in the list, not per entry. ##### Structural rules - The document must be a mapping with a `memories` key whose value is a list. - Unknown keys — at the top level, within an item, or under `content` — are rejected. - Each item\'s `type` must be one of the three supported values, and `content` must match that type\'s shape. - Null, empty-string, or wrong-typed values in a required field are treated as missing. - Non-string or empty `tags` entries are dropped silently; certain tags reserved for internal use are stripped automatically before the item is stored. ##### Cross-item rules - A data-model referenced by more than one `ALWAYS_APPLY_RULES` item is rejected — combine them into a single item\'s `rules` list. ##### Failure reasons Each entry in `validation_failures` carries one of: | Reason | Meaning | |--------|---------| | `SCHEMA` | YAML structure is invalid or unsupported. | | `VALIDATION` | A required field is missing/empty, a count exceeds a limit, or a GUID is malformed. | | `CHAR_LIMIT` | A content field or tag exceeds its size limit. | | `UNRESOLVED_SOURCE` | A `guid` or `obj_id` could not be resolved to an existing data-model. | | `ACCESS_DENIED` | The caller lacks sufficient access on the referenced data-model. | #### Dry run `dry_run` is required and has no default, so the import is always a deliberate two-step flow: 1. **First, call with `dry_run = true`.** This validates the payload and previews what would happen — the counts in `summary` and any `validation_failures` — without writing anything. 2. **Then, after reviewing a clean preview, call again with `dry_run = false`** (same `content`). This applies the import. It refuses to write when any item fails validation, so fix the reported `validation_failures` and resubmit. > ###### Important: > Never call `dry_run = false` without first inspecting a `dry_run = true` preview. A real import deletes and replaces existing global memories on the referenced data-models. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have the necessary Spotter permissions, or the bearer token does not correspond to the data-model\'s org. Per-data-model access failures do not use this code — they surface as `ACCESS_DENIED` validation failures with HTTP `200` (see Logical failures below). | #### Logical failures Validation and write failures are not returned in the error envelope. The call returns `200` with a terminal `status` of `VALIDATION_FAILED` or `FAILED`, and the details live in `validation_failures` / `diagnostics`: - **VALIDATION_FAILED** — one or more items failed schema/semantic validation; nothing was written. Inspect `validation_failures`, fix the items, and resubmit. - **FAILED** — the import did not complete. Inspect `diagnostics`: a `ROLLED_BACK` group means writing the new entries failed and any entries written before the failure were undone (existing memory is intact, no destructive change), while a `FAILURE` group carries another non-validation cause. Sample `VALIDATION_FAILED` responses (HTTP 200): **Invalid data-model (unresolved source):** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"UNRESOLVED_SOURCE\", \"field_name\": \"datamodel_sources[0].guid\", \"message\": \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" ] } ], \"operation_id\": null } ``` **Inaccessible data-models:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'\" }, { \"line_number\": 8, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Memory import validation failed with 2 error(s): Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'; Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" ] } ], \"operation_id\": null } ``` **Character-limit validations:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": [], \"validation_failures\": [ { \"line_number\": 3, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.rule_definition\", \"message\": \"content.rule_definition is 1073 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.user_query\", \"message\": \"content.user_query is 1150 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.recipe\", \"message\": \"content.recipe is 3574 characters; max allowed is 2000\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Validation failures present; fix them and re-run to see the DRY_RUN preview.\" ] } ], \"operation_id\": \"66666666-6666-6666-6666-666666666666\" } ``` > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param importMemoryRequest */ importMemory(importMemoryRequest: ImportMemoryRequest, _options?: Configuration): Promise; /** * Loads the full answer payload for a specific answer item in an agent conversation. Returns structured answer data including the TML query, token breakdown, visualization metadata, and agent context state. Pass the `answer_id` from an `AnswerResponseItem` in the `getConversation` response as the `answer_identifier` parameter. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Loads the answer details for a specific answer item in an agent conversation. Returns structured answer data including the TML token list, visualization metadata, and agent context state. Use this endpoint to retrieve the full answer representation for an answer item — for example, to re-render a chart, export a query, or inspect the generated TML. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation, as returned by `createAgentConversation` - `answer_identifier` *(path parameter)*: the `answer_id` field from an `AnswerResponseItem` in the `getConversation` response If the request is successful, the response contains an `answer` object with the following fields: | Field | Type | Description | |-------|------|-------------| | `title` | `String` | Display title of the generated answer (e.g., `\"sales by month\"`). | | `description` | `String` | Optional description of the answer. | | `session_identifier` | `String` | Unique identifier of the session in which this answer was generated. | | `generation_number` | `Int` | Generation sequence number of this answer within the session. | | `tokens` | `[String]` | Ordered list of TML token strings that make up the answer query (e.g., `[\"[sales]\", \"[date].\'monthly\'\"]`). | | `visualization_type` | `VizType` | Suggested visualization type: `Chart`, `Table`, or `Undefined`. `null` if no suggestion is available. | | `formulas` | `[String]` | List of formula names referenced in the answer. Empty if none are used. | | `parameters` | `[String]` | List of parameter names applied to the answer. Empty if none are used. | | `sub_queries` | `[JSON]` | List of sub-query objects used in the answer. Empty if none are present. | | `ac_state` | `ACState` | Agent context state, including `transaction_identifier` and `generation_number`, used to correlate this answer with a specific agent turn. | #### ACState fields | Field | Type | Description | |-------|------|-------------| | `transaction_identifier` | `String` | Unique identifier of the agent transaction that produced this answer. | | `generation_number` | `Int` | Generation number within the transaction. | #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/answers/{answer_identifier}/details ``` #### Example response ```json { \"answer\": { \"title\": \"sales by month\", \"description\": \"\", \"session_identifier\": \"7b00b801-73f4-4639-af5e-e775584ceba6\", \"generation_number\": 1, \"tokens\": [\"[sales]\", \"[date].\'monthly\'\"], \"visualization_type\": null, \"formulas\": [], \"parameters\": [], \"sub_queries\": [], \"ac_state\": { \"transaction_identifier\": \"7f6c9948-b4c7-4098-bb1f-6c67bc0e5699\", \"generation_number\": 1 } } } ``` #### Typical usage scenario 1. Call `getConversation` to retrieve the full conversation history. 2. Locate an `AnswerResponseItem` in `response_items` — note its `answer_id` field. 3. Call `loadAnswer` with the `conversation_identifier` and `answer_id` as `answer_identifier`. 4. The returned `tokens` array can be used to open the answer in the ThoughtSpot search interface or rendered as pill chips in the UI. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation or message exists with the given identifiers for the authenticated user. | | 422 | Unprocessable Entity — the message does not contain an answer of the expected type. | > ###### Note: > > - This endpoint only loads answer-type messages. Other message types are not supported. > - `visualization_type` may be `null` if the agent did not produce a visualization suggestion for this answer. > - `formulas`, `parameters`, and `sub_queries` are returned as empty arrays when not applicable — they are never `null`. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param answerIdentifier Unique identifier of the answer to load. Use the `answer_id` field from an `AnswerResponseItem` returned by `getConversation`. */ loadAnswer(conversationIdentifier: string, answerIdentifier: string, _options?: Configuration): Promise; /** * @deprecated * * Version: 10.7.0.cl or later **Deprecated** — Use `getRelevantQuestions` instead (available from 10.13.0.cl). Breaks down a topical or goal-oriented natural language question into smaller, actionable analytical sub-questions, each mapped to a relevant data source for independent execution. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request accepts the following parameters: - `nlsRequest`: contains the user `query` to decompose, along with optional `instructions` and `bypassCache` flag - `worksheetIds`: list of data source identifiers to scope the decomposition - `answerIds`: list of Answer GUIDs whose data guides the response - `liveboardIds`: list of Liveboard GUIDs whose data guides the response - `conversationId`: an existing conversation session ID for context continuity - `content`: supplementary text or CSV data to improve response quality - `maxDecomposedQueries`: maximum number of sub-questions to return (default: `5`) If the request is successful, the API returns a `decomposedQueryResponse` containing a list of `decomposedQueries`, each with: - `query`: the generated analytical sub-question - `worksheetId`: the unique ID of the data source the question targets - `worksheetName`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is deprecated since 10.13.0.cl. Use `getRelevantQuestions` for new integrations. > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot support to enable Spotter on your cluster. * @param queryGetDecomposedQueryRequest */ queryGetDecomposedQuery(queryGetDecomposedQueryRequest: QueryGetDecomposedQueryRequest, _options?: Configuration): Promise; /** * Searches Spotter Analysts. Two modes: - Fetch mode: when `analyst_identifier` is provided, the response contains exactly that analyst and all other filters are ignored. - List mode: returns a paginated list of analysts visible to the caller, optionally filtered by a case-insensitive substring match on the analyst name (`query`) and by ownership (`type`). Results are ordered by most recently accessed. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Version: 26.10.0.cl or later Searches Spotter Analysts. Use this endpoint to page through the analysts visible to you, or to fetch a single analyst by its identifier. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Use a bearer token for the Org whose analysts should be searched. #### Usage guidelines The endpoint operates in one of two modes: **Fetch mode** — when `analyst_identifier` is provided, the response contains exactly that analyst (`total_size` is 1) and all other filters are ignored. The caller must have access to the analyst (owner, shared with, or admin/Spotter-management privileges). **List mode** — when `analyst_identifier` is omitted, the response is a paginated list of analysts the caller can see, ordered by most recently accessed: - `record_size` (optional): number of records per page. Default 50, between 1 and 500. - `record_offset` (optional): zero-based index of the first record. Default 0, maximum 10000. - `query` (optional): case-insensitive substring match applied to the analyst **name only**. - `type` (optional): ownership filter — `ALL` (default; created by or shared with me), `CREATED_BY_ME`, or `SHARED_TO_ME`. The response contains `analysts` — the page of matching analysts — and `total_size`, the total number of matches before pagination. Each analyst includes its `id`, `name`, `description`, `instructions`, `sources` (with `id`, `type`, and display `name`), enriched `mcp_connectors` (with `id`, `name`, and `icon_url`), `icon_id`, `starter_prompts` (including the server-managed fixed prompt, marked `is_fixed`), `updated_time_in_millis` and `last_accessed_time_in_millis` (epoch milliseconds), and `created_by` / `updated_by` user references (with `id`, `name`, and `display_name`). #### Error conditions - `403` — missing privileges, or (fetch mode) no access to the requested analyst. - `404` — (fetch mode) no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as `record_size` or `record_offset` out of range. * @param searchAnalystsRequest */ searchAnalysts(searchAnalystsRequest: SearchAnalystsRequest, _options?: Configuration): Promise; /** * Version: 26.5.0.cl or later Sends natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - For real-time streamed responses, use `sendAgentConversationMessageStreaming` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageRequest */ sendAgentConversationMessage(conversationIdentifier: string, sendAgentConversationMessageRequest: SendAgentConversationMessageRequest, _options?: Configuration): Promise; /** * Version: 26.5.0.cl or later Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | | ---- | -------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). > - For the complete response in a single payload, use `sendAgentConversationMessage` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageStreamingRequest */ sendAgentConversationMessageStreaming(conversationIdentifier: string, sendAgentConversationMessageStreamingRequest: SendAgentConversationMessageStreamingRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessage` instead. Send natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessage` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentMessageRequest */ sendAgentMessage(conversationIdentifier: string, sendAgentMessageRequest: SendAgentMessageRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessageStreaming` instead. Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessageStreaming` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). * @param sendAgentMessageStreamingRequest */ sendAgentMessageStreaming(sendAgentMessageStreamingRequest: SendAgentMessageStreamingRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Sends a follow-up message to an existing conversation within the context of a data model. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. A conversation must first be created using the `createConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createConversation` - `metadata_identifier`: the unique ID of the data source used for the conversation - `message`: a natural language string with the follow-up question If the request is successful, the API returns an array of response messages, each containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param sendMessageRequest */ sendMessage(conversationIdentifier: string, sendMessageRequest: SendMessageRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Creates or updates the admin instructions for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. If instructions already exist for the org, they are replaced (upsert semantics). Requires admin privileges. Only users with org admin access can set agent instructions. #### Usage guidelines The request must include: - `instructions`: the instructions text to apply to the agent (maximum 5000 characters) Instructions are validated against system guardrails before being saved. If the instructions contain content that conflicts with guardrails, the request is rejected with a `409` error and the existing instructions remain unchanged. If the request is successful, the response includes the saved `AgentInstructions` record: - `id`: unique identifier of the record - `instructions`: the saved instructions text - `created_at`: ISO timestamp when the instructions were first created - `updated_at`: ISO timestamp of this update - `last_updated_by`: user ID of the admin who performed this update #### Error responses | Code | Description | |------|-------------| | 400 | Bad request — the request body is missing required fields or the `instructions` field exceeds the maximum allowed length of 5000 characters. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to set agent instructions. | | 409 | Conflict — the provided instructions conflict with system guardrails. Review and revise the instructions text before retrying. | | 500 | Internal server error. | > ###### Note: > > - This operation uses upsert semantics: it creates the instructions record if none exists, or replaces the existing one. > - Instructions take effect immediately for new conversations created after the update. > - Use `getAgentInstructions` to retrieve the current instructions before making changes. > - Available from version 26.6.0.cl and later. * @param setAgentInstructionsRequest */ setAgentInstructions(setAgentInstructionsRequest: SetAgentInstructionsRequest, _options?: Configuration): Promise; /** * Version: 10.15.0.cl or later This API allows users to set natural language (NL) instructions for a specific data-model to improve AI-generated answers and query processing. These instructions help guide the AI system to better understand the data context and provide more accurate responses. Requires `CAN_USE_SPOTTER` privilege, either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines To set NL instructions for a data-model, the request must include: - `data_source_identifier`: The unique ID of the data-model for which to set NL instructions - `nl_instructions_info`: An array of instruction objects, each containing: - `instructions`: Array of text instructions for the LLM - `scope`: The scope of the instruction (`GLOBAL`). Currently only `GLOBAL` is supported. It can be extended to data-model-user scope in future. #### Instructions scope - **GLOBAL**: instructions that apply to all users querying this data model If the request is successful, the API returns: - `success`: a boolean indicating whether the operation completed successfully #### Error responses | Code | Description | |------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Instructions help improve the accuracy and relevance of AI-generated responses for the specified data-model. * @param setNLInstructionsRequest */ setNLInstructions(setNLInstructionsRequest: SetNLInstructionsRequest, _options?: Configuration): Promise; /** * Updates share permissions on a Spotter Analyst, one entry per principal (user or group). `READ_ONLY` and `MODIFY` grant or change the principal\'s access; `NO_ACCESS` revokes it. Granting access also shares the analyst\'s data sources with the principal so the analyst keeps working for them. A successful share returns an empty `204 No Content` response. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Updates share permissions on a Spotter Analyst for one or more principals (users or groups). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The analyst is identified by the `analyst_identifier` path parameter. The request body contains a `permissions` array with one entry per principal: - `principal.identifier` (required): unique identifier of the user or group. - `principal.type` (required): `USER` or `USER_GROUP`. - `share_mode` (required): `READ_ONLY` or `MODIFY` grants (or changes) the principal\'s access; `NO_ACCESS` revokes it. A principal may appear at most once per request. When access is granted, the analyst\'s data sources are automatically shared with the principal as well, so the analyst keeps working for them. A successful request returns an empty `204 No Content` response. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as an empty `permissions` array, a duplicate principal, or a missing field. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to share. * @param shareAnalystRequest */ shareAnalyst(analystIdentifier: string, shareAnalystRequest: ShareAnalystRequest, _options?: Configuration): Promise; /** * Grants or revokes access to a shared conversation for one or more principals (users or groups). When principals are added, a read-only shared view of the conversation is created from its current state. Use `refresh_shared_content` to regenerate the shared view with the latest conversation content. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation to share. * @param shareConversationRequest */ shareConversation(conversationIdentifier: string, shareConversationRequest: ShareConversationRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Processes a natural language query against a specified data model and returns a single AI-generated answer without requiring a conversation session. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `query`: a natural language question (e.g., \"What were total sales last quarter?\") - `metadata_identifier`: the unique ID of the data source to query against If the request is successful, the API returns a response message containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param singleAnswerRequest */ singleAnswer(singleAnswerRequest: SingleAnswerRequest, _options?: Configuration): Promise; /** * Stops an in-progress agent conversation response. Version: 26.6.0.cl or later Version: 26.6.0.cl or later Stops an in-progress agent response for the specified conversation. Use this endpoint to cancel a response that is actively being generated — for example, when the user navigates away, reformulates their question, or no longer needs the current result. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation whose active response should be stopped, as returned by `createAgentConversation` A successful request returns an empty `204 No Content` response. If there is no active response in progress at the time of the call, the request is still treated as successful. After stopping a response, the conversation session remains active. You can continue sending messages using `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming`. #### Example request ```bash POST /api/rest/2.0/ai/agent/conversation/{conversation_identifier}/stop-response ``` #### Typical usage scenario This endpoint is useful when integrating Spotter into a chat UI where users can cancel a long-running query. For example: 1. User sends a message via `sendAgentConversationMessageStreaming`. 2. User clicks a \"Stop generating\" button while the response is streaming. 3. Your client calls `stopConversation` with the active `conversation_identifier`. 4. The stream is terminated and the user can ask a new question. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | > ###### Note: > > - Calling this endpoint when no response is in progress does not return an error. > - The conversation context is preserved after stopping — previous messages and answers remain accessible. > - Available from version 26.6.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - This feature is available only for **Spotter 3** (`SPOTTER3`) version. * @param conversationIdentifier Unique identifier of the conversation to stop. */ stopConversation(conversationIdentifier: string, _options?: Configuration): Promise; /** * Updates a Spotter Analyst. The request body is identical to `createAnalyst` and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset (no instructions, no MCP connectors, no starter prompts). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot edit it. Version: 26.10.0.cl or later Updates a Spotter Analyst. The request body is identical to the create analyst API, and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with can use it but cannot edit it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior. Instructions that conflict with system guardrails are rejected with `409`. Omitting this field clears any existing instructions. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). Replaces the existing list in full. When new sources are added, they are automatically shared with users the analyst was previously shared with, so those users keep a working analyst. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors. Replaces the existing list in full; omit or pass an empty array to clear. - `starter_prompts` (optional): up to 4 plain-text prompts, each between 10 and 250 characters; display order follows list position. Replaces the existing list in full; omit or pass an empty array to clear. If the request is successful, the response contains the updated analyst, including the refreshed `updated_time_in_millis` timestamp (epoch milliseconds) and `updated_by` user. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, and starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`). #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to update. * @param updateAnalystRequest */ updateAnalyst(analystIdentifier: string, updateAnalystRequest: UpdateAnalystRequest, _options?: Configuration): Promise; /** * Updates attributes of an existing agent conversation. Supports updating the display title and the pinned state; additional conversation attributes may be supported in future versions. At least one updatable attribute must be provided in the request body. Each attribute is applied independently, so omitted attributes are left unchanged. Version: 26.7.0.cl or later Updates attributes of an existing saved agent conversation. Supports updating the conversation\'s display `title` and its `is_pinned` state; additional updatable attributes may be supported in future versions. At least one updatable attribute must be supplied in the request body. Use this endpoint to rename a conversation, or to pin a conversation so that it is surfaced first in the conversation list for quick access. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being updated. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to update, as returned by `createAgentConversation` or `getConversationList` - At least one updatable attribute in the request body: - `title` *(optional)*: the new display name for the conversation. An empty or whitespace-only value is replaced with a default title rather than rejected. - `is_pinned` *(optional)*: `true` to pin the conversation, `false` to unpin it. Available from version 26.10.0.cl. Each attribute is applied independently: omitted attributes are left unchanged, so you can update the title and the pinned state in a single request or in separate requests. Updating `is_pinned` is idempotent — pinning an already-pinned conversation, or unpinning an already-unpinned one, succeeds with no side effects. A successful request returns an empty `204 No Content` response. Updated attributes are reflected immediately in subsequent calls to `getConversationList`. #### Example request Rename a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\" } ``` Pin a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"is_pinned\": true } ``` Update both attributes in a single request: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\", \"is_pinned\": true } ``` #### Error responses | Code | Description | |------|-------------| | 400 | Bad Request — the request body supplies neither `title` nor `is_pinned`, or `is_pinned` is not a boolean. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | | 422 | Unprocessable Entity — the request body is malformed or contains an invalid field value. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` can be updated. Unsaved conversations are not persisted and do not have a retrievable identifier. > - There is no limit on the number of conversations a user can pin. > - Available from version 26.7.0.cl and later. The `is_pinned` attribute is available from version 26.10.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to update. * @param updateConversationRequest */ updateConversation(conversationIdentifier: string, updateConversationRequest: UpdateConversationRequest, _options?: Configuration): Promise; } declare class AIApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createAgentConversation * @throws ApiException if the response code was not in [200, 299] */ createAgentConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createAnalyst * @throws ApiException if the response code was not in [200, 299] */ createAnalystWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createConversation * @throws ApiException if the response code was not in [200, 299] */ createConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteAnalyst * @throws ApiException if the response code was not in [200, 299] */ deleteAnalystWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConversation * @throws ApiException if the response code was not in [200, 299] */ deleteConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportMemory * @throws ApiException if the response code was not in [200, 299] */ exportMemoryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getAgentInstructions * @throws ApiException if the response code was not in [200, 299] */ getAgentInstructionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getConversation * @throws ApiException if the response code was not in [200, 299] */ getConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getConversationList * @throws ApiException if the response code was not in [200, 299] */ getConversationListWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getDataSourceSuggestions * @throws ApiException if the response code was not in [200, 299] */ getDataSourceSuggestionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getNLInstructions * @throws ApiException if the response code was not in [200, 299] */ getNLInstructionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getRelevantQuestions * @throws ApiException if the response code was not in [200, 299] */ getRelevantQuestionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getShareInfo * @throws ApiException if the response code was not in [200, 299] */ getShareInfoWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getSharedContent * @throws ApiException if the response code was not in [200, 299] */ getSharedContentWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importMemory * @throws ApiException if the response code was not in [200, 299] */ importMemoryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to loadAnswer * @throws ApiException if the response code was not in [200, 299] */ loadAnswerWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to queryGetDecomposedQuery * @throws ApiException if the response code was not in [200, 299] */ queryGetDecomposedQueryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchAnalysts * @throws ApiException if the response code was not in [200, 299] */ searchAnalystsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendAgentConversationMessage * @throws ApiException if the response code was not in [200, 299] */ sendAgentConversationMessageWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendAgentConversationMessageStreaming * @throws ApiException if the response code was not in [200, 299] */ sendAgentConversationMessageStreamingWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendAgentMessage * @throws ApiException if the response code was not in [200, 299] */ sendAgentMessageWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendAgentMessageStreaming * @throws ApiException if the response code was not in [200, 299] */ sendAgentMessageStreamingWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendMessage * @throws ApiException if the response code was not in [200, 299] */ sendMessageWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to setAgentInstructions * @throws ApiException if the response code was not in [200, 299] */ setAgentInstructionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to setNLInstructions * @throws ApiException if the response code was not in [200, 299] */ setNLInstructionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to shareAnalyst * @throws ApiException if the response code was not in [200, 299] */ shareAnalystWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to shareConversation * @throws ApiException if the response code was not in [200, 299] */ shareConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to singleAnswer * @throws ApiException if the response code was not in [200, 299] */ singleAnswerWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to stopConversation * @throws ApiException if the response code was not in [200, 299] */ stopConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateAnalyst * @throws ApiException if the response code was not in [200, 299] */ updateAnalystWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConversation * @throws ApiException if the response code was not in [200, 299] */ updateConversationWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class AuthenticationApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 26.6.0.cl or later Enables or disables authentication at cluster or org level for the specified auth type. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `cluster_preferences` to enable or disable authentication at the cluster level. Cluster-level settings can only be configured from the Primary Org. - `ENABLED` — Generates a new access token if one does not exist. An existing token is preserved. - `DISABLED` — Revokes the existing cluster-level access token. Use `org_preferences` to enable or disable authentication for one or more Orgs. Each entry must include an `org_identifier` (unique ID or name) and an `auth_status`. Org-level configuration requires the per-Org authentication feature to be enabled on your instance. - `ENABLED` — Generates a new org-level access token if one does not exist. - `DISABLED` — Revokes the existing org-level access token for that Org. Both `cluster_preferences` and `org_preferences` are optional. Omitting a field leaves the corresponding settings unchanged. If both are omitted, the API returns `204 No Content` without making any changes. **Note**: Cluster-level and org-level settings are independent of each other. Enabling or disabling one does not affect the other. * @param configureAuthSettingsRequest */ configureAuthSettings(configureAuthSettingsRequest: ConfigureAuthSettingsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Retrieves details of the current user session for the token provided in the request header. Any ThoughtSpot user can access this endpoint and send an API request. The data returned in the API response varies according to user\'s privilege and object access permissions. **NOTE**: In ThoughtSpot, users with cluster administration privileges can access all Orgs by default. However, unless the administrator is explicitly added to an Org, the Orgs list in the session information returned by the API will include only the Primary Org. To include other Orgs in the API response, you must explicitly add the administrator to each Org in the Admin settings page in the UI or via user REST API. */ getCurrentUserInfo(_options?: Configuration): Promise; /** * Version: 9.4.0.cl or later Generates a new bearer token from an existing authenticated session. #### Required privileges Any ThoughtSpot user with a valid bearer token can access this endpoint and send an API request. Requires no additional privileges. #### Usage guidelines This endpoint doesn\'t return the caller\'s existing session token. Instead, it issues a new token based on the current authenticated session and returns the new token string, its creation and expiration timestamps, and the associated user details in response. The token generated from this API request is valid for 24 hours. Use this endpoint when your application needs a new token without requiring the user to re-authenticate. If you need a token with a specific expiration or a different security scope, use `POST /api/rest/2.0/auth/token/full`, `POST /api/rest/2.0/auth/token/custom`, or `POST /api/rest/2.0/auth/token/object` instead. */ getCurrentUserToken(_options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Creates an authentication token that provides values for the formula variables in the Row Level Security (RLS) rules for a given user. Recommended for use cases that require Attribute-based access control (ABAC) via RLS. #### Required privileges To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege and edit access to the data source are required. To configure formula variables for all Orgs on your instance or the Primary Org, cluster administration privileges are required. Org administrators can configure formula variables for their respective Orgs. If Role-Based Access Control (RBAC) is enabled, users with the `CAN_MANAGE_VARIABLES` (**Can manage variables**) role privilege can also create and manage variables for their Org context. #### Usage guidelines You can generate a token by providing a `username` and `password`, or by using a `secret_key`. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### ABAC via RLS To implement ABAC via RLS and assign security entitlements to users during session creation, generate a token with custom variable values. The values set in the authentication token are applied to the formula variables referenced in RLS rules at the table level, which determines the data each user can access based on their entitlements. The variable values can be configured to persist for a specific set of Models in user sessions initiated with the token, allowing different RLS rules to be set for different data models. Once defined, the rules are added to the user\'s `variable_values` object, after which all sessions will use the persisted values. For more information, see [ABAC via tokens Documentation](https://developers.thoughtspot.com/docs/abac-via-rls-variables). ##### Formula variables Before defining variable values, ensure the variables are created and available on your instance. To create a formula variable, you can use the **Create variable** (`/api/rest/2.0/template/variables/create`) REST API endpoint, with the variable `type` set as `Formula_Variable` in the API request. The API doesn\'t support `\"persist_option\": \"RESET\"` and `\"persist_option\": \"NONE\"` when `variable_values` are defined in the request. If you are using `variable_values` for token generation, you must use other supported persist options such as `APPEND` or `REPLACE`. If you want to use `RESET` or `NONE`, do not pass any `variable_values`. In such cases, `variable_values` will remain unaffected. #### Supported objects The supported object type is `LOGICAL_TABLE`. When using `object_id` with `variable_values`, models are supported. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `groups` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the username already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email, Org and group entitlements will not be updated with new values. Setting `auto_create` to `true` does not create formula variables. Hence, this setting will not be applicable to `variable_values`. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. Persist options such as `APPEND` and `REPLACE` will persist `variable_values` on the user profile when the token is created. * @param getCustomAccessTokenRequest */ getCustomAccessToken(getCustomAccessTokenRequest: GetCustomAccessTokenRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Generates an authentication token for creating a full session in ThoughtSpot for a given user. Recommended for use cases that do not require Attribute-based access control (ABAC) via Row Level Security (RLS). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the user already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email and group assignment will be updated. To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getFullAccessTokenRequest */ getFullAccessToken(getFullAccessTokenRequest: GetFullAccessTokenRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Generates an authentication token that provides access to a specific metadata object. This object list is intersected with the list of objects the user is allowed to access via group membership. For more information, see [Object security](https://docs.thoughtspot.com/cloud/latest/security-data-object#object_security). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the user is not available in ThoughtSpot. If the user already exists in ThoughtSpot and the `auto_create` parameter is set to `true`, user properties such as display name, email, and group assignment will be updated. To add a new user and assign privileges, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH`(**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getObjectAccessTokenRequest */ getObjectAccessToken(getObjectAccessTokenRequest: GetObjectAccessTokenRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Creates a login session for a ThoughtSpot user with Basic authentication. In Basic authentication method, REST clients log in to ThoughtSpot using `username` and `password` attributes. On a multi-tenant cluster with Orgs, users can pass the ID of the Org in the API request to log in to a specific Org context. **Note**: If Multi-Factor Authentication (MFA) is enabled on your instance, the API login request with basic authentication (`username` and `password` ) returns an error. Contact ThoughtSpot Support for assistance. A successful login returns a session cookie that can be used in your subsequent API requests. #### Redirecting after login To send a browser to a specific page once the session is created, pass `redirect_url`. It must be a path on the same ThoughtSpot instance that served the login request, for example `/pinboards`. An absolute URL is rejected with `400`, so that a login cannot be used to forward a newly issued session cookie to another host. The path is resolved against the host the caller actually reached, which means the same request works unchanged on a custom domain, behind a proxy, or on an Org-specific subdomain. * **Browser flows** — omit `no_url_redirection`. The API answers `302` with the resolved path in the `location` header, and the browser follows it on its own. This is the usual choice when the login is submitted as an HTML form or opened as a top-level navigation. * **SPA and non-browser clients** — set `no_url_redirection` to `true`. The API keeps its normal `204` response and returns the resolved path in the `location` header without redirecting, leaving the client to decide when and where to navigate. Use this from `fetch`/`XMLHttpRequest` calls, which follow a `302` internally and never expose it to your code. When `redirect_url` is omitted the response is unchanged, and `no_url_redirection` has no effect on its own. * @param loginRequest */ login(loginRequest: LoginRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Logs out a user from their current session. */ logout(_options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Revokes the authentication token issued for current user session. The token of your current session expires when you make a call to the `/api/rest/2.0/auth/token/revoke` endpoint. the users will not be able to access ThoughtSpot objects until a new token is obtained. To restart your session, request for a new token from ThoughtSpot. See [Get Full Access Token](#/http/api-endpoints/authentication/get-full-access-token). * @param revokeTokenRequest */ revokeToken(revokeTokenRequest: RevokeTokenRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Returns the authentication configuration for the specified auth type at cluster and org level. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `scope` to control which level of settings are returned: - `CLUSTER` — Returns cluster-level authentication status and access tokens. Accessible only from the Primary Org. - `ORG` — Returns org-level authentication status and access tokens for the current Org. Requires the per-Org authentication feature to be enabled on your instance. - If `scope` is omitted, both cluster and org-level settings are returned based on the caller\'s org context and feature availability. The `access_tokens` array in `cluster_preferences` or `org_preferences` is omitted when no token is configured at that level. **Note**: Access tokens returned in the response are sensitive credentials. Treat them with the same care as passwords. * @param searchAuthSettingsRequest */ searchAuthSettings(searchAuthSettingsRequest: SearchAuthSettingsRequest, _options?: Configuration): Promise; /** * Version: 9.12.0.cl or later Validates the authentication token specified in the API request. If your token is not valid, [Get a new token](#/http/api-endpoints/authentication/get-full-access-token). * @param validateTokenRequest */ validateToken(validateTokenRequest: ValidateTokenRequest, _options?: Configuration): Promise; } declare class AuthenticationApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to configureAuthSettings * @throws ApiException if the response code was not in [200, 299] */ configureAuthSettingsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getCurrentUserInfo * @throws ApiException if the response code was not in [200, 299] */ getCurrentUserInfoWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getCurrentUserToken * @throws ApiException if the response code was not in [200, 299] */ getCurrentUserTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getCustomAccessToken * @throws ApiException if the response code was not in [200, 299] */ getCustomAccessTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getFullAccessToken * @throws ApiException if the response code was not in [200, 299] */ getFullAccessTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getObjectAccessToken * @throws ApiException if the response code was not in [200, 299] */ getObjectAccessTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to login * @throws ApiException if the response code was not in [200, 299] */ loginWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to logout * @throws ApiException if the response code was not in [200, 299] */ logoutWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to revokeToken * @throws ApiException if the response code was not in [200, 299] */ revokeTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchAuthSettings * @throws ApiException if the response code was not in [200, 299] */ searchAuthSettingsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to validateToken * @throws ApiException if the response code was not in [200, 299] */ validateTokenWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class CollectionsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 26.4.0.cl or later Creates a new collection in ThoughtSpot. Collections allow you to organize and group related metadata objects such as Liveboards, Answers, worksheets, and other data objects. You can also create nested collections (sub-collections) to build a hierarchical structure. #### Supported operations The API endpoint lets you perform the following operations: * Create a new collection * Add metadata objects (Liveboards, Answers, Logical Tables) to the collection * Create nested collections by adding sub-collections * @param createCollectionRequest */ createCollection(createCollectionRequest: CreateCollectionRequest, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Deletes one or more collections from ThoughtSpot. #### Delete options * **delete_children**: When set to `true`, deletes the child objects (metadata items) within the collection that the user has access to. Objects that the user does not have permission to delete will be skipped. * **dry_run**: When set to `true`, performs a preview of the deletion operation without actually deleting anything. The response shows what would be deleted, allowing you to review before committing the deletion. #### Response The response includes: * **metadata_deleted**: List of metadata objects that were successfully deleted * **metadata_skipped**: List of metadata objects that were skipped due to lack of permissions or other constraints * @param deleteCollectionRequest */ deleteCollection(deleteCollectionRequest: DeleteCollectionRequest, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Gets a list of collections available in ThoughtSpot. To get details of a specific collection, specify the collection GUID or name. You can also filter the API response based on the collection name pattern, author, and other criteria. #### Search options * **name_pattern**: Use \'%\' as a wildcard character to match collection names * **collection_identifiers**: Search for specific collections by their GUIDs or names * **include_metadata**: When set to `true`, includes the metadata objects within each collection in the response **NOTE**: In addition to the GUID and name, `collection_identifiers` accepts a Custom object ID if one is configured for the collection. The response also includes the `obj_id` field for each collection that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCollectionsRequest */ searchCollections(searchCollectionsRequest: SearchCollectionsRequest, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Updates an existing collection in ThoughtSpot. #### Supported operations This API endpoint lets you perform the following operations: * Update collection name and description * Change visibility settings * Add metadata objects to the collection (operation: ADD) * Remove metadata objects from the collection (operation: REMOVE) * Replace all metadata objects in the collection (operation: REPLACE) #### Operation types * **ADD**: Adds the specified metadata objects to the existing collection without removing current items * **REMOVE**: Removes only the specified metadata objects from the collection * **REPLACE**: Replaces all existing metadata objects with the specified items (default behavior) * @param collectionIdentifier Unique GUID of the collection. Note: Collection names cannot be used as identifiers since duplicate names are allowed. * @param updateCollectionRequest */ updateCollection(collectionIdentifier: string, updateCollectionRequest: UpdateCollectionRequest, _options?: Configuration): Promise; } declare class CollectionsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createCollection * @throws ApiException if the response code was not in [200, 299] */ createCollectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteCollection * @throws ApiException if the response code was not in [200, 299] */ deleteCollectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCollections * @throws ApiException if the response code was not in [200, 299] */ searchCollectionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateCollection * @throws ApiException if the response code was not in [200, 299] */ updateCollectionWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class ConnectionConfigurationsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 10.12.0.cl or later Gets connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * 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. * To fetch details of a configuration object, specify the configuration object name or GUID. * @param connectionConfigurationSearchRequest */ connectionConfigurationSearch(connectionConfigurationSearchRequest: ConnectionConfigurationSearchRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Creates an additional configuration to an existing connection to a data warehouse. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * A JSON map of configuration attributes in `configuration`. The following example shows the configuration attributes: ``` { \"user\":\"DEV_USER\", \"password\":\"TestConn123\", \"role\":\"DEV\", \"warehouse\":\"DEV_WH\" } ``` * If the `policy_type` is `PRINCIPALS`, then `policy_principals` is a required field. * If the `policy_type` is `PROCESSES`, then `policy_processes` is a required field. * If the `policy_type` is `NO_POLICY`, then `policy_principals` and `policy_processes` are not required fields. #### Parameterized Connection Support For 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. * @param createConnectionConfigurationRequest */ createConnectionConfiguration(createConnectionConfigurationRequest: CreateConnectionConfigurationRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Deletes connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param deleteConnectionConfigurationRequest */ deleteConnectionConfiguration(deleteConnectionConfigurationRequest: DeleteConnectionConfigurationRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Updates a connection configuration object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit the name or description of the configuration * Edit the configuration properties * Edit the `policy_type` * Edit the type of authentication * Enable or disable a configuration #### Parameterized Connection Support For 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. **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`. * @param configurationIdentifier Unique ID or name of the configuration. * @param updateConnectionConfigurationRequest */ updateConnectionConfiguration(configurationIdentifier: string, updateConnectionConfigurationRequest: UpdateConnectionConfigurationRequest, _options?: Configuration): Promise; } declare class ConnectionConfigurationsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to connectionConfigurationSearch * @throws ApiException if the response code was not in [200, 299] */ connectionConfigurationSearchWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createConnectionConfiguration * @throws ApiException if the response code was not in [200, 299] */ createConnectionConfigurationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConnectionConfiguration * @throws ApiException if the response code was not in [200, 299] */ deleteConnectionConfigurationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConnectionConfiguration * @throws ApiException if the response code was not in [200, 299] */ updateConnectionConfigurationWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class ConnectionsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.2.0.cl or later Creates a connection to a data warehouse for live query services. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Create a connection without tables To create a connection without tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a SnowFlake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` 2. Set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. #### Create a connection with tables If [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**) and `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. To create a connection with tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\", \"AllDatatypes\"], \"externalDatabases\":[ { \"name\":\"AllDatatypes\", \"isAutoCreated\":false, \"schemas\":[ { \"name\":\"alldatatypes\", \"tables\":[ { \"name\":\"allDatatypes\", \"type\":\"TABLE\", \"description\":\"\", \"selected\":true, \"linked\":true, \"columns\":[ { \"name\":\"CNUMBER\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" }, { \"name\":\"CDECIMAL\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" } ] } ] } ] } ] } ``` 2. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param createConnectionRequest */ createConnection(createConnectionRequest: CreateConnectionRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Delete Connection V2](#/http/api-endpoints/connections/delete-connection-v2) endpoint to delete your connection objects. #### Usage guidelines Deletes a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. * @param deleteConnectionRequest */ deleteConnection(deleteConnectionRequest: DeleteConnectionRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Deletes a connection object. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param connectionIdentifier Unique ID or name of the connection. */ deleteConnectionV2(connectionIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Exports the difference in connection metadata between CDW and ThoughtSpot Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) To download the connection metadata difference between ThoughtSpot and CDW, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ downloadConnectionMetadataChanges(connectionIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Validates the difference in connection metadata between CDW and ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) Returns a boolean indicating whether there is any difference between the connection metadata at ThoughtSpot and CDW. To get the connection metadata difference status, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ fetchConnectionDiffStatus(connectionIdentifier: string, _options?: Configuration): Promise; /** * Version: 26.2.0.cl or later Revokes OAuth refresh tokens for users who no longer require access to a data warehouse connection. When a token is revoked, the affected user\'s session for that connection is terminated, and they must re-authenticate to regain access. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on the ThoughtSpot instance, users with `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege can also make API requests to revoke tokens for connection users. #### Usage guidelines You can specify different combinations of identifiers to control which refresh tokens are revoked. - **connection_identifier**: Revokes refresh tokens for all users of the connection, except the connection author. - **connection_identifier** and **user_identifiers**: Revokes refresh tokens only for the users specified in the request. If the name or ID of the connection author is included in the request, their token will also be revoked. - **connection_identifier** and **configuration_identifiers**: Revokes refresh tokens for all users on the specified configurations, except the configuration author. - **connection_identifier**, **configuration_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users on the specified configurations. - **connection_identifier** and **org_identifiers**: Revokes refresh tokens for the specified Orgs. Applicable only for published connections. - **connection_identifier**, **org_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users in the specified Orgs. Applicable only for published connections. **NOTE**: The `org_identifiers` parameter is only applicable for published connections. Using this parameter for unpublished connections will result in an error. Ensure that the connections are published before making the API request. * @param connectionIdentifier Unique ID or name of the connection whose refresh tokens need to be revoked. All the users associated with the connection will have their refresh tokens revoked except the author. * @param revokeRefreshTokensRequest */ revokeRefreshTokens(connectionIdentifier: string, revokeRefreshTokensRequest: RevokeRefreshTokensRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Gets connection objects. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. - To get a list of all connections available in the ThoughtSpot system, send the API request without any attributes in the request body. - To get the connection objects for a specific type of data warehouse, specify the type in `data_warehouse_types`. - To fetch details of a connection object, specify the connection object GUID or name. The `name_pattern` attribute allows passing partial text with `%` for a wildcard match. - To get details of the database, schemas, tables, or columns from a data connection object, specify `data_warehouse_object_type`. - To get a specific database, schema, table, or column from a connection object, define the object type in `data_warehouse_object_type` and object properties in the `data_warehouse_objects` array. For example, to search for a column, you must pass the database, schema, and table names in the API request. Note that in the following example, object properties are set in a hierarchical order (`database` > `schema` > `table` > `column`). ``` { \"connections\": [ { \"identifier\": \"b9d1f2ef-fa65-4a4b-994e-30fa2d57b0c2\", \"data_warehouse_objects\": [ { \"database\": \"NEBULADEV\", \"schema\": \"INFORMATION_SCHEMA\", \"table\": \"APPLICABLE_ROLES\", \"column\": \"ROLE_NAME\" } ] } ], \"data_warehouse_object_type\": \"COLUMN\" } ``` - To fetch data by `configuration`, specify `data_warehouse_object_type`. For example, to fetch columns from the `DEVELOPMENT` database, specify the `data_warehouse_object_type` as `DATABASE` and define the `configuration` string as `{\"database\":\"DEVELOPMENT\"}`. To get column data for a specific table, specify the table, for example,`{\"database\":\"RETAILAPPAREL\",\"table\":\"PIPES\"}`. - To query connections by `authentication_type`, specify `data_warehouse_object_type`. Supported values for `authentication_type` are: - `SERVICE_ACCOUNT`: For connections that require service account credentials to authenticate to the Cloud Data Warehouse and fetch data. - `OAUTH`: For connections that require OAuth credentials to authenticate to the Cloud Data Warehouse and fetch data. Teradata, Oracle, and Presto Cloud Data Warehouses do not support the OAuth authentication type. - `IAM`: For connections that have the IAM OAuth set up. This authentication type is supported on Amazon Redshift connections only. - `EXTOAUTH`: For connections that have External OAuth set up. ThoughtSpot supports external [OAuth with Microsoft Azure Active Directory (AD)](https://docs.thoughtspot.com/cloud/latest/ connections-snowflake-azure-ad-oauth) and [Okta for Snowflake data connections](https://docs.thoughtspot.com/cloud/latest/connections-snowflake-okta-oauth). - `KEY_PAIR`: For connections that require Key Pair account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PKCE`: For connections that require OAuth with PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake, Starburst, Databricks, Denodo connections only. - `EXTOAUTH_WITH_PKCE`: For connections that require External OAuth With PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PEZ`: For connections that require OAuth With PEZ account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Amazon Redshift connections only. - `OAUTH_WITH_SERVICE_PRINCIPAL`: For connections that require OAuth With Service Principal account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `PERSONAL_ACCESS_TOKEN`: For connections that require Personal Access Token account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `OAUTH_CLIENT_CREDENTIALS`: For connections that require OAuth Client Credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - To include more details about connection objects in the API response, set `include_details` to `true`. - You can also sort the output by field names and filter connections by tags. **NOTE**: In addition to the connection GUID and name, the `identifier` field on each entry in `connections` accepts a Custom object ID if one is configured for the connection. The response also includes the `obj_id` field for each connection that has one set. **NOTE**: When filtering connection records by parameters other than `data_warehouse_types` or `tag_identifiers`, ensure that you set `record_size` to `-1` and `record_offset` to `0` for precise results. * @param searchConnectionRequest */ searchConnection(searchConnectionRequest: SearchConnectionRequest, _options?: Configuration): Promise; /** * Version: 26.5.0.cl or later Synchronizes connection metadata attributes from your Cloud Data Warehouse (CDW) with ThoughtSpot. Requires the `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. #### Usage guidelines To synchronize attributes from a CDW, specify the connection GUID or name in the `connection_identifier` path parameter and `sync_attributes` in the request body. Default attribute is `[\"DESCRIPTION\"]`. ##### Hierarchical schema * Connection: The connection object for the sync operation. * Tables: Tables for the sync operation. When no table is specified, all tables are synchronized. * Columns: If the table is specified, you can add the columns for the sync operation. If no columns are specified, all columns in the specified table are considered for the sync operation. To set the scope for the sync operation: * Connection-level: To sync all tables and columns, pass an empty request body, or only the attributes in the request body. * Table-level: To synchronize specific tables and their columns, specify the table identifiers in the `tables` array. * Column-level: To synchronize specific columns, specify the table identifier as the key and column identifiers as the value in the `tables` array. ``` { \"tables\": [ {\"table-guid-1\": [\"column-guid-1\", \"column-guid-2\"]}, \"table-guid-2\" ], \"sync_attributes\": [\"DESCRIPTION\"] } ``` ##### API response If the sync operation is successful, the API returns the following information: * Status of the sync operation. For example, `SUCCESS`, `PARTIAL_SUCCESS`, or `NO_UPDATE`. * Number of tables and columns that were updated. * Number of tables and columns with the sync failed status when the overall sync status is `PARTIAL_SUCCESS`. * Message text indicating the sync results. * @param connectionIdentifier Unique ID or name of the connection. * @param syncMetadataRequest */ syncMetadata(connectionIdentifier: string, syncMetadataRequest: SyncMetadataRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Update connection V2](#/http/api-endpoints/connections/update-connection-v2) endpoint to update your connection objects. #### Usage guidelines Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. * @param updateConnectionRequest */ updateConnection(updateConnectionRequest: UpdateConnectionRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Activates or deactivates a connection. A deactivated connection cannot be used for queries or operations until it is activated again. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [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. Only the connection owner or an administrator can perform this operation. #### Usage guidelines To update the status of a connection, specify the connection GUID or name in the `connection_identifier` path parameter and the desired `status` in the request body. - **ACTIVATED**: Enables the connection. Queries and operations can resume on an activated connection. - **DEACTIVATED**: Disables the connection. It does not remove the connection metadata, but only makes the connection unavailable for queries and operations. You can reactivate a deactivated connection by setting \"status\": \"ACTIVATED\". * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionStatusRequest */ updateConnectionStatus(connectionIdentifier: string, updateConnectionStatusRequest: UpdateConnectionStatusRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: * This is an example of updating a single table in a empty connection: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"DEMORENAME\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"Col1\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col2\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col3\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col312\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col4\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` * This is an example of updating a single table in an existing connection with tables: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"CUSTOMER\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [], \"relationships\": [] }, { \"name\": \"tpch5k_falcon_default_schema_users\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"user_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"product_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"user_cost\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a Snowflake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"databases\":[\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionV2Request */ updateConnectionV2(connectionIdentifier: string, updateConnectionV2Request: UpdateConnectionV2Request, _options?: Configuration): Promise; } declare class ConnectionsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createConnection * @throws ApiException if the response code was not in [200, 299] */ createConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConnection * @throws ApiException if the response code was not in [200, 299] */ deleteConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConnectionV2 * @throws ApiException if the response code was not in [200, 299] */ deleteConnectionV2WithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to downloadConnectionMetadataChanges * @throws ApiException if the response code was not in [200, 299] */ downloadConnectionMetadataChangesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchConnectionDiffStatus * @throws ApiException if the response code was not in [200, 299] */ fetchConnectionDiffStatusWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to revokeRefreshTokens * @throws ApiException if the response code was not in [200, 299] */ revokeRefreshTokensWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchConnection * @throws ApiException if the response code was not in [200, 299] */ searchConnectionWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to syncMetadata * @throws ApiException if the response code was not in [200, 299] */ syncMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConnection * @throws ApiException if the response code was not in [200, 299] */ updateConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConnectionStatus * @throws ApiException if the response code was not in [200, 299] */ updateConnectionStatusWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConnectionV2 * @throws ApiException if the response code was not in [200, 299] */ updateConnectionV2WithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class CustomActionApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Creates a custom action that appears as a menu action on a saved Answer or Liveboard visualization. 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. #### Usage Guidelines The API lets you create the following types of custom actions: * URL-based action Allows pushing data to an external URL. * Callback action Triggers a callback to the host application and initiates a response payload on an embedded ThoughtSpot instance. By default, custom actions are visible to only administrator or developer users. To make a custom action available to other users, and specify the groups in `group_identifiers`. By default, the custom action is set as a _global_ action on all visualizations and saved Answers. To assign a custom action to specific Liveboard visualization, saved Answer, or Worksheet, set `visibility` to `false` in `default_action_config` property and specify the GUID or name of the object in `associate_metadata`. For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param createCustomActionRequest */ createCustomAction(createCustomActionRequest: CreateCustomActionRequest, _options?: Configuration): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Removes the custom action specified in the API request. 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. * @param customActionIdentifier Unique ID or name of the custom action. */ deleteCustomAction(customActionIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Gets custom actions configured on the cluster. 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. * @param searchCustomActionsRequest */ searchCustomActions(searchCustomActionsRequest: SearchCustomActionsRequest, _options?: Configuration): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Updates a custom action. 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. #### Usage Guidelines The API allows you to modify the following properties: * Name of the custom action * Action availability to groups * Association to metadata objects * Authentication settings for a URL-based action For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param customActionIdentifier Unique ID or name of the custom action. * @param updateCustomActionRequest */ updateCustomAction(customActionIdentifier: string, updateCustomActionRequest: UpdateCustomActionRequest, _options?: Configuration): Promise; } declare class CustomActionApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createCustomAction * @throws ApiException if the response code was not in [200, 299] */ createCustomActionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteCustomAction * @throws ApiException if the response code was not in [200, 299] */ deleteCustomActionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCustomActions * @throws ApiException if the response code was not in [200, 299] */ searchCustomActionsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateCustomAction * @throws ApiException if the response code was not in [200, 299] */ updateCustomActionWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class CustomCalendarsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 10.12.0.cl or later Creates a new [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can create a custom calendar from scratch or an existing Table in ThoughtSpot. For both methods of calendar creation, the following parameters are required: * Name of the custom calendar. * Calendar creation method. To create a calendar from an existing table, specify the method: - `FROM_EXISTING_TABLE` - Creates calendar from the table reference provided in the API request. - `FROM_INPUT_PARAMS` - Creates a calendar from the parameters defined in the API request. * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. **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. ##### Calendar type The API allows you to create the following types of calendars: * `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. * `4-4-5`. Each quarter in the calendar will include two 4-week months followed by one 5-week month. * `4-5-4`. Each quarter in the calendar will include two 4-week months with a 5-week month between. * `5-4-4`. Each quarter begins with a 5-week month, followed by two 4-week months. To 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. You can also set the starting day of the week and customize the prefixes for year and quarter labels. #### Examples To create a calendar from an existing table: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_EXISTING_TABLE\", } ``` To create a calendar from scratch: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_INPUT_PARAMS\", \"calendar_type\": \"MONTH_OFFSET\", \"month_offset\": \"April\", \"start_day_of_week\": \"Monday\", \"quarter_name_prefix\": \"Q\", \"year_name_prefix\": \"FY\", \"start_date\": \"04/01/2025\", \"end_date\": \"04/31/2025\" } ``` * @param createCalendarRequest */ createCalendar(createCalendarRequest: CreateCalendarRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Deletes a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines To delete a custom calendar, specify the calendar ID as a path parameter in the request URL. * @param calendarIdentifier Unique ID or name of the Calendar. */ deleteCalendar(calendarIdentifier: string, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Exports a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal) in the CSV format. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines Use this API to download a custom calendar in the CSV file format. In your API request, specify the following parameters. * Start and end date of the calendar. For \"month offset\" calendars, the start date must match the month defined in the `month_offset` attribute. You can also specify optional parameters such as the starting day of the week and prefixes for the quarter and year labels. * @param generateCSVRequest */ generateCSV(generateCSVRequest: GenerateCSVRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Gets a list of [custom calendars](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines By 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. The `name_pattern` parameter filters and returns only those objects that match the specified pattern. Use `%` as a wildcard for pattern matching. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCalendarsRequest */ searchCalendars(searchCalendarsRequest: SearchCalendarsRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Updates the properties of a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can update the properties of a calendar using one of the following methods: * `FROM_INPUT_PARAMS` to update the calendar properties with the values defined in the API request. * `FROM_EXISTING_TABLE` Creates a calendar from the parameters defined in the API request. To update a custom calendar, specify the calendar ID as a path parameter in the request URL and the following parameters in the request body: * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. The 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. #### Examples Update a custom calendar using an existing Table in ThoughtSpot: ``` { \"update_method\": \"FROM_EXISTING_TABLE\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" } } ``` Update a custom calendar with the attributes defined in the API request: ``` { \"update_method\": \"FROM_INPUT_PARAMS\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" }, \"month_offset\": \"August\", \"start_day_of_week\": \"Monday\", \"start_date\": \"08/01/2025\", \"end_date\": \"07/31/2026\" } ``` * @param calendarIdentifier Unique Id or name of the calendar. * @param updateCalendarRequest */ updateCalendar(calendarIdentifier: string, updateCalendarRequest: UpdateCalendarRequest, _options?: Configuration): Promise; } declare class CustomCalendarsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createCalendar * @throws ApiException if the response code was not in [200, 299] */ createCalendarWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteCalendar * @throws ApiException if the response code was not in [200, 299] */ deleteCalendarWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to generateCSV * @throws ApiException if the response code was not in [200, 299] */ generateCSVWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCalendars * @throws ApiException if the response code was not in [200, 299] */ searchCalendarsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateCalendar * @throws ApiException if the response code was not in [200, 299] */ updateCalendarWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class DBTApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.9.0.cl or later Creates a DBT connection object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About create DBT connection DBT connection in ThoughtSpot is used by the user to define DBT credentials for cloud . The API needs embrace connection, embrace database name, DBT url, import type, DBT account identifier, DBT project identifier, DBT access token and environment details (or) embrace connection, embrace database name, import type, file_content to create a connection object. To know more about DBT, see ThoughtSpot Product Documentation. * @param connectionName Name of the connection. * @param databaseName Name of the Database. * @param importType Mention type of Import * @param accessToken Access token is mandatory when Import_Type is DBT_CLOUD. * @param dbtUrl DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param accountId Account ID is mandatory when Import_Type is DBT_CLOUD * @param projectId Project ID is mandatory when Import_Type is DBT_CLOUD * @param dbtEnvId DBT Environment ID\\\" * @param projectName Name of the project * @param fileContent Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ dbtConnection(connectionName: string, databaseName: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Resynchronize the existing list of models, tables, worksheet tml’s and import them to Thoughtspot based on the DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param fileContent Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param includeSemanticReport If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateSyncTml(dbtConnectionIdentifier: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Generate required table and worksheet and import them. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About generate TML Models and Worksheets to be imported can be selected by the user as part of the API. * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param modelTables List of Models and their respective Tables Example: \\\'[{\\\"model_name\\\": \\\"model_name\\\", \\\"model_path\\\": \\\"model_path\\\", \\\"tables\\\": [\\\"table_name\\\"]}]\\\' * @param importWorksheets Mention the worksheet tmls to import * @param worksheets List of worksheets is mandatory when import_Worksheets is type SELECTED Example: [\\\"worksheet_name\\\"] * @param fileContent Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param includeSemanticReport If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateTml(dbtConnectionIdentifier: string, modelTables: string, importWorksheets: string, worksheets?: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Gets a list of DBT connection objects by user and organization, available on the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About search DBT connection To get details of a specific DBT connection identifier, database connection identifier, database connection name, database name, project name, project identifier, environment identifier , import type and author. */ dbtSearch(_options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Removes the specified DBT connection object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT Connection. */ deleteDbtConnection(dbtConnectionIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Updates a DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About update DBT connection You can modify DBT connection object properties such as embrace connection name, embrace database name, import type, account identifier, access token, project identifier and environment (or) embrace connection, embrace database name, import type, file_content settings. * @param dbtConnectionIdentifier Unique ID of the DBT Connection. * @param connectionName Name of the connection. * @param databaseName Name of the Database. * @param importType Mention type of Import * @param accessToken Access token is mandatory when Import_Type is DBT_CLOUD. * @param dbtUrl DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param accountId Account ID is mandatory when Import_Type is DBT_CLOUD * @param projectId Project ID is mandatory when Import_Type is DBT_CLOUD * @param dbtEnvId DBT Environment ID\\\" * @param projectName Name of the project * @param fileContent Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ updateDbtConnection(dbtConnectionIdentifier: string, connectionName?: string, databaseName?: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: Configuration): Promise; } declare class DBTApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to dbtConnection * @throws ApiException if the response code was not in [200, 299] */ dbtConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to dbtGenerateSyncTml * @throws ApiException if the response code was not in [200, 299] */ dbtGenerateSyncTmlWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to dbtGenerateTml * @throws ApiException if the response code was not in [200, 299] */ dbtGenerateTmlWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to dbtSearch * @throws ApiException if the response code was not in [200, 299] */ dbtSearchWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteDbtConnection * @throws ApiException if the response code was not in [200, 299] */ deleteDbtConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateDbtConnection * @throws ApiException if the response code was not in [200, 299] */ updateDbtConnectionWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class DataApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.0.0.cl or later Fetches data from a saved Answer. Requires at least view access to the saved Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_apis). * @param fetchAnswerDataRequest */ fetchAnswerData(fetchAnswerDataRequest: FetchAnswerDataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets data from a Liveboard object and its visualization. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To get data for specific visualizations, add the GUIDs or names of the visualizations in the API request. To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes. If the new Liveboard experience mode, the transient content includes ad hoc changes to visualizations such as sorting, toggling of legends, and data drill down. For more information, and see [Liveboard data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_fetch_liveboard_data_api). * @param fetchLiveboardDataRequest */ fetchLiveboardData(fetchLiveboardDataRequest: FetchLiveboardDataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Generates an Answer from a given data source. Requires at least view access to the data source object (Worksheet or View). If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines To search data, specify the data source GUID in `logical_table_identifier`. The data source can be a Worksheet, View, Table, or SQL view. Pass search tokens in the `query_string` attribute in the API request as shown in the following example: ``` { \"query_string\": \"[sales] by [store]\", \"logical_table_identifier\": \"cd252e5c-b552-49a8-821d-3eadaa049cca\", } ``` For more information about the `query_string` format and data source attribute, see [Search data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_search_data_api). The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_api). * @param searchDataRequest */ searchData(searchDataRequest: SearchDataRequest, _options?: Configuration): Promise; } declare class DataApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchAnswerData * @throws ApiException if the response code was not in [200, 299] */ fetchAnswerDataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchLiveboardData * @throws ApiException if the response code was not in [200, 299] */ fetchLiveboardDataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchData * @throws ApiException if the response code was not in [200, 299] */ searchDataWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class EmailCustomizationApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 10.10.0.cl or later Creates a customization configuration for the notification email. #### 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 To create a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param createEmailCustomizationRequest */ createEmailCustomization(createEmailCustomizationRequest: CreateEmailCustomizationRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 10.10.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 `template_identifier` from the response. - Use that `template_identifier` as a parameter in this API request. * @param templateIdentifier Unique ID or name of the email customization. */ deleteEmailCustomization(templateIdentifier: string, _options?: Configuration): Promise; /** * 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. * @param deleteOrgEmailCustomizationRequest */ deleteOrgEmailCustomization(deleteOrgEmailCustomizationRequest: DeleteOrgEmailCustomizationRequest, _options?: Configuration): Promise; /** * Version: 10.10.0.cl or later Search the email customization configuration if any set for the ThoughtSpot system. #### 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. * @param searchEmailCustomizationRequest */ searchEmailCustomization(searchEmailCustomizationRequest: SearchEmailCustomizationRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Updates a customization configuration for the notification email. #### 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 To update a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param updateEmailCustomizationRequest */ updateEmailCustomization(updateEmailCustomizationRequest: UpdateEmailCustomizationRequest, _options?: Configuration): Promise; /** * Version: 10.10.0.cl or later Validates the email customization configuration if any set for the ThoughtSpot system. #### 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. */ validateEmailCustomization(_options?: Configuration): Promise; } declare class EmailCustomizationApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ createEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ deleteEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteOrgEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ deleteOrgEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ searchEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ updateEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to validateEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ validateEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class FeatureManagementApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 26.10.0.cl or later Returns the feature configurations available on the ThoughtSpot system, grouped by feature group. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To retrieve feature configurations, pass these parameters in your API request: - `scope` — Determines the administrative view. Use `CLUSTER` for the cluster-admin view (returns the Orgs assigned to each feature); use `ORG` for the org-admin view (returns the current value of each feature for a single Org). - `org_identifier` — Numeric ID of the Org. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `category` — Availability category of the features to return. `GENERAL_ACCESS` returns generally available features; `EARLY_ACCESS` returns features still in early access. Defaults to `GENERAL_ACCESS`. The response fields populated depend on the requested scope. In the cluster-admin view (`scope=CLUSTER`), each feature includes `assigned_orgs`, `is_org_aware`, and (for non-org-aware features) `feature_value`. In the org-admin view (`scope=ORG`), each feature includes `element_type`, `element_config`, and `element_value`. The following example retrieves the general-access features for the cluster-admin view: ``` { \"scope\": \"CLUSTER\", \"category\": \"GENERAL_ACCESS\" } ``` For the org-admin view, set `scope` to `ORG` and pass the `org_identifier` of the Org to scope the search to (`org_identifier` is required when `scope` is `ORG`; omitting it returns a 400 error): ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"category\": \"GENERAL_ACCESS\" } ``` * @param searchFeaturesRequest */ searchFeatures(searchFeaturesRequest: SearchFeaturesRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Updates the Org assignments for a feature. Available to cluster admins only. #### Pre-requisites Requires the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege in the cluster-admin (All-Org / default-org) context. This endpoint manages Org assignments across the cluster, so it must be called by a cluster admin; org-scoped admins cannot call it. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To update the Org assignments for a feature, pass these parameters in your API request: - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature to update. - `org_identifiers` — Numeric IDs of the Orgs to assign. Send an empty array with `operation` set to `REPLACE` to clear all Org assignments for this feature. - `operation` — Type of update to apply. `ADD` assigns the given Orgs in addition to the existing ones; `REMOVE` unassigns the given Orgs; `REPLACE` sets the assignment to exactly the given Orgs. Defaults to `REPLACE`. The following example assigns Orgs `1` and `2` to a feature, in addition to any Orgs already assigned: ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [1, 2], \"operation\": \"ADD\" } ``` Clear all Org assignments for a feature by sending an empty array with `operation` set to `REPLACE` (this is the only way to unassign every Org at once): ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [], \"operation\": \"REPLACE\" } ``` * @param updateFeatureAssignmentsRequest */ updateFeatureAssignments(updateFeatureAssignmentsRequest: UpdateFeatureAssignmentsRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Sets the value of a feature at the cluster or Org scope. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To set a feature value, pass these parameters in your API request: - `scope` — Determines the scope at which the value is set. Use `CLUSTER` to set the cluster-level value; use `ORG` to set a per-Org value override. - `org_identifier` — Numeric ID of the Org for which to set the value. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature whose value should be set. - `feature_value` — New value to set for the feature. - `reset_org_overrides` — Applicable only when `scope` is `CLUSTER`. When `true`, any existing per-Org value overrides for this feature are also removed so that all Orgs inherit the new cluster-level value. Required when `scope` is `CLUSTER` for an org-aware feature. Must be omitted when `scope` is `ORG`; passing it at `ORG` scope returns a 400 error. The following example sets a per-Org value override for Org `1`: ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\" } ``` Set the cluster-level value and clear all per-Org overrides so every Org inherits the new value (CLUSTER scope). `reset_org_overrides: true` is destructive — it strips existing per-Org overrides cluster-wide: ``` { \"scope\": \"CLUSTER\", \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\", \"reset_org_overrides\": true } ``` * @param updateFeatureValueRequest */ updateFeatureValue(updateFeatureValueRequest: UpdateFeatureValueRequest, _options?: Configuration): Promise; } declare class FeatureManagementApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchFeatures * @throws ApiException if the response code was not in [200, 299] */ searchFeaturesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateFeatureAssignments * @throws ApiException if the response code was not in [200, 299] */ updateFeatureAssignmentsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateFeatureValue * @throws ApiException if the response code was not in [200, 299] */ updateFeatureValueWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class GroupsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.0.0.cl or later Creates a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### About groups Groups in ThoughtSpot are used by the administrators to define privileges and organize users based on their roles and access requirements. To know more about groups and privileges, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/groups-privileges). #### Supported operations The API endpoint lets you perform the following operations: * Assign privileges * Add users * Define sharing visibility * Add sub-groups * Assign a default Liveboard * @param createUserGroupRequest */ createUserGroup(createUserGroupRequest: CreateUserGroupRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Removes the specified group object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. * @param groupIdentifier GUID or name of the group. */ deleteUserGroup(groupIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Imports group objects from external databases into ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. During the import operation: * If the specified group is not available in ThoughtSpot, it will be added to ThoughtSpot. * If `delete_unspecified_groups` is set to `true`, the groups not specified in the API request, excluding administrator and system user groups, are deleted. * If the specified groups are already available in ThoughtSpot, the object properties of these groups are modified and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. * @param importUserGroupsRequest */ importUserGroups(importUserGroupsRequest: ImportUserGroupsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of user group objects from the ThoughtSpot system. To get details of a specific user group, specify the user group GUID or name. You can also filter the API response based on User ID, Org ID, Role ID, type of group, sharing visibility, privileges assigned to the group, and the Liveboard IDs assigned to the users in the group. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. **NOTE**: In addition to the GUID and name, `group_identifier` accepts a Custom object ID if one is configured for the group. The response also includes the `obj_id` field for each group that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUserGroupsRequest */ searchUserGroups(searchUserGroupsRequest: SearchUserGroupsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates the properties of a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit [privileges](https://developers.thoughtspot.com/docs/?pageid=api-user-management#group-privileges) * Add or remove users * Change sharing visibility settings * Add or remove sub-groups * Assign a default Liveboard or update the existing settings * @param groupIdentifier GUID or name of the group. * @param updateUserGroupRequest */ updateUserGroup(groupIdentifier: string, updateUserGroupRequest: UpdateUserGroupRequest, _options?: Configuration): Promise; } declare class GroupsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createUserGroup * @throws ApiException if the response code was not in [200, 299] */ createUserGroupWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteUserGroup * @throws ApiException if the response code was not in [200, 299] */ deleteUserGroupWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importUserGroups * @throws ApiException if the response code was not in [200, 299] */ importUserGroupsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchUserGroups * @throws ApiException if the response code was not in [200, 299] */ searchUserGroupsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateUserGroup * @throws ApiException if the response code was not in [200, 299] */ updateUserGroupWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class JobsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 26.4.0.cl or later Searches delivery history for communication channels such as webhooks. Returns channel-level delivery status for each job execution record. Use this to monitor channel health and delivery success rates across events. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. **NOTE**: When `channel_type` is `WEBHOOK`, the following constraints apply: - `job_ids`, `channel_identifiers`, and `events` each accept at most one element. - When `job_ids` is provided, it is used as the sole lookup key and other filter fields are ignored. - When `job_ids` is not provided, `channel_identifiers` and `events` are both required, each containing exactly one element. - Records older than the configured retention period are not returned. - Use `start_epoch_time_in_millis` and/or `end_epoch_time_in_millis` to narrow results to a specific time window. * @param searchChannelHistoryRequest */ searchChannelHistory(searchChannelHistoryRequest: SearchChannelHistoryRequest, _options?: Configuration): Promise; } declare class JobsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchChannelHistory * @throws ApiException if the response code was not in [200, 299] */ searchChannelHistoryWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class LogApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.0.0.cl or later Fetches security audit logs. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the [Admin Control](https://developers.thoughtspot.com/docs/rbac#_admin_control) privileges are required. #### Usage guidelines By default, the API retrieves logs for the last 24 hours. You can set a custom duration in EPOCH time. Make sure the log duration specified in your API request doesn’t exceed 24 hours. If you must fetch logs for a longer time range, modify the duration and make multiple sequential API requests. Upon successful execution, the API returns logs with the following information: * timestamp of the event * event ID * event type * name and GUID of the user * IP address of ThoughtSpot instance For more information see [Audit logs Documentation](https://developers.thoughtspot.com/docs/audit-logs). * @param fetchLogsRequest */ fetchLogs(fetchLogsRequest: FetchLogsRequest, _options?: Configuration): Promise; } declare class LogApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchLogs * @throws ApiException if the response code was not in [200, 299] */ fetchLogsWithHttpInfo(response: ResponseContext): Promise>>; } /** * no description */ declare class ManualTranslationApiRequestFactory extends BaseAPIRequestFactory { /** * Delete manual translations. Version: 26.7.0.cl or later Deletes all manual translations for the org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - This deletes **all** translation entries for the targeted org. The operation cannot be undone. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to delete translations uploaded in the All-Org context. * @param deleteManualTranslationsRequest */ deleteManualTranslations(deleteManualTranslationsRequest: DeleteManualTranslationsRequest, _options?: Configuration): Promise; /** * Export manual translations as a CSV file. Version: 26.7.0.cl or later Downloads all manual translations for the org as a CSV file. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The response is a CSV file with columns: `content`, `locale`, `translated-content`. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to export translations from the All-Org context. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. - Returns a `400` error if no translations exist for the targeted org or cluster scope. * @param exportManualTranslationsRequest */ exportManualTranslations(exportManualTranslationsRequest: ExportManualTranslationsRequest, _options?: Configuration): Promise; /** * Get translations bundle for a locale. Version: 26.7.0.cl or later Retrieves all translations for a specific locale as a JSON map. Available to all authenticated users. No additional privileges are required. #### Usage guidelines - `locale` parameter must be a hyphenated locale code, in any case (for example, `fr-fr`, `de-de`, `JA-JP`). - Returns a JSON object with a `translations` map where each key is the original string and each value is the translated string. - If the org has no translations for the requested locale, the endpoint falls back to cluster-level translations. - Returns an empty `translations` map (not an error) if no entries exist at either level. * @param locale Locale code for which to retrieve translations. For example, `fr-fr`, `de-de`, `JA-JP`. */ getManualTranslationBundle(locale: string, _options?: Configuration): Promise; /** * Import manual translations from a CSV file. Version: 26.7.0.cl or later Uploads a CSV file containing manual translations and upserts them into the database. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The CSV file must have exactly three columns in this order: `content`, `locale`, `translated-content`. - Maximum file size: **30 MB**. Maximum rows: **10,000**. - Only `.csv` files are accepted. - The import performs an **upsert**: existing entries matched by `(org_id, locale, content)` are updated; new entries are inserted. Entries not in the upload are left untouched. - Set `scope` to `CLUSTER` to upload translations to the All-Org context. Cluster-level translations act as defaults for orgs that have no translations for a locale. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. * @param translationsFile CSV file containing translations. The file must have three columns: `content`, `locale`, `translated-content`. Max file size: 30 MB. Max rows: 10,000. * @param scope Org scope for the import. `ORG` (default) targets the calling user\\\'s current org. `CLUSTER` targets the All-Org context. */ importManualTranslations(translationsFile: HttpFile, scope?: string, _options?: Configuration): Promise; } declare class ManualTranslationApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteManualTranslations * @throws ApiException if the response code was not in [200, 299] */ deleteManualTranslationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportManualTranslations * @throws ApiException if the response code was not in [200, 299] */ exportManualTranslationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getManualTranslationBundle * @throws ApiException if the response code was not in [200, 299] */ getManualTranslationBundleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importManualTranslations * @throws ApiException if the response code was not in [200, 299] */ importManualTranslationsWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class MetadataApiRequestFactory extends BaseAPIRequestFactory { /** * Convert worksheets to models Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (Can manage data models). --- ## Usage Guidelines ### Parameters 1. **worksheet_ids** - **Description:** A comma-separated list of GUIDs (Globally Unique Identifiers) specifying the Worksheets to be converted. - **Usage:** - Used only when `convert_all` is set to `false`. - Leave empty or omit when `convert_all` is set to `true`. 2. **exclude_worksheet_ids** - **Description:** A comma-separated list of GUIDs specifying Worksheets to be excluded from conversion. - **Usage:** - Useful when `convert_all` is set to `true` and specific Worksheets should not be converted. 3. **convert_all** - **Description:** Sets the scope of conversion. - **Options:** - `true`: Converts all Worksheets in the system, except those specified in `exclude_worksheet_ids`. - `false`: Converts only the Worksheets listed in `worksheet_ids`. 4. **apply_changes** - **Description:** Specifies whether to apply changes directly to ThoughtSpot or to generate a preview before applying any changes.Used for validation of conversion. - **Options:** - `true`: Applies conversion changes directly to ThoughtSpot. - `false`: Generates only a preview of the changes and does not apply any changes to ThoughtSpot --- ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the conversion process 2. **Partial Conversion for Testing:** Test the conversion process by setting `convert_all` to `false` and specifying a small number of `worksheet_ids`. 3. **Verify Dependencies:** Check for dependent objects, such as Tables and Connections, to avoid invalid references. 4. **Review Changes:** Use `apply_changes: false` to preview the impact of the conversion before applying changes. --- ## Examples ### Convert Specific Worksheets ```json { \"worksheet_ids\": [\"guid1\", \"guid2\", \"guid3\"], \"exclude_worksheet_ids\": [], \"convert_all\": false, \"apply_changes\": true } ``` ### Convert All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [], \"convert_all\": true, \"apply_changes\": true } ``` ### Exclude Specific Worksheets While Converting All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [\"abc\"], \"convert_all\": true, \"apply_changes\": true } ``` * @param convertWorksheetToModelRequest */ convertWorksheetToModel(convertWorksheetToModelRequest: ConvertWorksheetToModelRequest, _options?: Configuration): Promise; /** * Makes a copy of an Answer or Liveboard Version: 10.3.0.cl or later Creates a copy of a metadata object. Requires at least view access to the metadata object being copied. Upon successful execution, the API creates a copy of the metadata object specified in the API request and returns the ID of the new object. * @param copyObjectRequest */ copyObject(copyObjectRequest: CopyObjectRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Removes the specified metadata object from the ThoughtSpot system. Requires edit access to the metadata object. * @param deleteMetadataRequest */ deleteMetadata(deleteMetadataRequest: DeleteMetadataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. Requires `DATADOWNLOADING` (**Can download Data**) and at least view access to the metadata object. #### Usage guidelines * You can export one or several objects by passing metadata object GUIDs in the `metadata` array. * When exporting TML content for a Liveboard or Answer object, you can set `export_associated` to `true` to retrieve TML content for underlying Worksheets, Tables, or Views, including the GUID of each object within the headers. When `export_associated` is set to `true`, consider retrieving one metadata object at a time. * Set `export_fqns` to `true` to add FQNs of the referenced objects in the TML content. For example, if you send an API request to retrieve TML for a Liveboard and its associated objects, the API returns the TML content with FQNs of the referenced Worksheet. Exporting TML with FQNs is useful if ThoughtSpot has multiple objects with the same name and you want to eliminate ambiguity when importing TML files into ThoughtSpot. It eliminates the need for adding FQNs of the referenced objects manually during the import operation. * To export only the TML of feedbacks associated with an object, set the GUID of the object as `identifier`, and set the `type` as `FEEDBACK` in the `metadata` array. * To export the TML of an object along with the feedbacks associated with it, set the GUID of the object as `identifier`, set the `type` as `LOGIAL_TABLE` in the `metadata` array, and set `export_with_associated_feedbacks` in `export_options` to true. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_export_a_tml). For more information on feedbacks, see [Feedback Documentation](https://docs.thoughtspot.com/cloud/latest/sage-feedback). * @param exportMetadataTMLRequest */ exportMetadataTML(exportMetadataTMLRequest: ExportMetadataTMLRequest, _options?: Configuration): Promise; /** * Version: 10.1.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. ### **Permissions Required** Requires `DATAMANAGEMENT` (**Can manage data**) and `USERMANAGEMENT` (**Can manage users**) privileges. #### **Usage Guidelines** This API is only applicable for `USER`, `GROUP`, and `ROLES` metadata types. - `batch_offset` Indicates the starting position within the complete dataset from which the API should begin returning objects. Useful for paginating results efficiently. - `batch_size` Specifies the number of objects or items to retrieve in a single request. Helps control response size for better performance. - `edoc_format` Defines the format of the TML content. The exported metadata can be in JSON or YAML format. - `export_dependent` Specifies whether to include dependent metadata objects in the export. Ensures related objects are also retrieved if needed. - `all_orgs_override` Indicates whether the export operation applies across all organizations. Useful for multi-tenant environments where cross-org exports are required. * @param exportMetadataTMLBatchedRequest */ exportMetadataTMLBatched(exportMetadataTMLBatchedRequest: ExportMetadataTMLBatchedRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for an Answer object. Requires at least view access to the Answer object. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales\", \"metadata_type\":\"ANSWER\", \"sql_queries\":[ { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales -test\", \"sql_query\":\"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n \\\"ta_2\\\".\\\"PRODUCTNAME\\\" \\\"ca_2\\\", \\n \\\"ta_1\\\".\\\"STORENAME\\\" \\\"ca_3\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_4\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_5\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_3\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_3\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_PRODUCTS\\\" \\\"ta_2\\\"\\n ON \\\"ta_3\\\".\\\"PRODUCTID\\\" = \\\"ta_2\\\".\\\"PRODUCTID\\\"\\nGROUP BY \\n \\\"ca_1\\\", \\n \\\"ca_2\\\", \\n \\\"ca_3\\\"\\n\" } ] } ``` * @param fetchAnswerSqlQueryRequest */ fetchAnswerSqlQuery(fetchAnswerSqlQueryRequest: FetchAnswerSqlQueryRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Gets information about the status of the TML async import task scheduled using the `/api/rest/2.0/metadata/tml/async/import` API call. To fetch the task details, specify the ID of the TML async import task. Requires access to the task ID. The API allows users who initiated the asynchronous TML import via `/api/rest/2.0/metadata/tml/async/import` to view the status of their tasks. Users with administration privilege can view the status of all import tasks initiated by the users in their Org. #### Usage guidelines See [TML API Documentation](https://developers.thoughtspot.com/docs/tml#_fetch_status_of_the_tml_import_task) for usage guidelines. * @param fetchAsyncImportTaskStatusRequest */ fetchAsyncImportTaskStatus(fetchAsyncImportTaskStatusRequest: FetchAsyncImportTaskStatusRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for a Liveboard object and its visualizations. Requires at least view access to the Liveboard object. To get SQL query data for a Liveboard, specify the GUID of the Liveboard. Optionally, you can add an array of visualization GUIDs to retrieve the SQL query data for visualizations in the Liveboard. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\": \"fa68ae91-7588-4136-bacd-d71fb12dda69\", \"metadata_name\": \"Total Sales\", \"metadata_type\": \"LIVEBOARD\", \"sql_queries\": [ { \"metadata_id\": \"b3b6d2b9-089a-490c-8e16-b144650b7843\", \"metadata_name\": \"Total quantity purchased, Total sales by region\", \"sql_query\": \"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_2\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_3\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_2\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_2\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\nGROUP BY \\\"ca_1\\\"\" } ] } ``` * @param fetchLiveboardSqlQueryRequest */ fetchLiveboardSqlQuery(fetchLiveboardSqlQueryRequest: FetchLiveboardSqlQueryRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Imports [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines * Import all related objects in a single TML Import API call. For example, Tables that use the same Connection object and Worksheets connected to these Tables. * Include the `fqn` property to distinguish objects that have the same name. For example, if you have multiple Connections or Worksheets with the same name on ThoughtSpot and the Connection or Worksheet referenced in your TML file does not have a unique name to distinguish, it may result in invalid object references. Adding `fqn` helps ThoughtSpot differentiate a Table from another with the same name. We recommend [exporting TML with FQNs](#/http/api-endpoints/metadata/export-metadata-tml) and using these during the import operation. * You can upload multiple TML files at a time. If you import a Worksheet along with Liveboards, Answers, and other dependent objects in a single API call, the imported objects will be immediately available for use. When you import only a Worksheet object, it may take some time for the Worksheet to become available in the ThoughtSpot system. Please wait for a few minutes, and then proceed to create an Answer and Liveboard from the newly imported Worksheet. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_import_a_tml). * @param importMetadataTMLRequest */ importMetadataTML(importMetadataTMLRequest: ImportMetadataTMLRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Schedules a task to import [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. You can use this API endpoint to process TML objects asynchronously when importing TMLs of large and complex metadata objects into ThoughtSpot. Unlike the synchronous import TML operation, the API processes TML data in the background and returns a task ID, which can be used to check the status of the import task via `/api/rest/2.0/metadata/tml/async/status` API endpoint. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege, and edit access to the TML objects. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines See [Async TML API Documentation](https://developers.thoughtspot.com/docs/tml#_import_tml_objects_asynchronously) for usage guidelines. * @param importMetadataTMLAsyncRequest */ importMetadataTMLAsync(importMetadataTMLAsyncRequest: ImportMetadataTMLAsyncRequest, _options?: Configuration): Promise; /** * @deprecated * * Parameterize fields in metadata objects. Version: 10.9.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/metadata/parameterize-fields](/api/rest/2.0/metadata/parameterize-fields) instead. Allows parameterizing fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be parameterized. For Connection Config, the only supported field name is: * impersonate_user * @param parameterizeMetadataRequest */ parameterizeMetadata(parameterizeMetadataRequest: ParameterizeMetadataRequest, _options?: Configuration): Promise; /** * Parameterize multiple fields of metadata objects. For example [schemaName, databaseName] for LOGICAL_TABLE. Version: 26.10.0.cl or later Allows parameterizing multiple fields of metadata objects in ThoughtSpot. For example, you can parameterize [schemaName, databaseName] for LOGICAL_TABLE. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table, the field type must be `ATTRIBUTE` and field names can include: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_names specifies the exact properties of the Connection or Connection Config that need to be parameterized. For Connection Config, supported field names include: * impersonate_user You can parameterize multiple fields at once by providing an array of field names. * @param parameterizeMetadataFieldsRequest */ parameterizeMetadataFields(parameterizeMetadataFieldsRequest: ParameterizeMetadataFieldsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of metadata objects available on the ThoughtSpot system. This API endpoint is available to all users who have view access to the object. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view data for all metadata objects, including users and groups. #### Usage guidelines - To get all metadata objects, send the API request without any attributes. - To get metadata objects of a specific type, set the `type` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE`. - To filter metadata objects within type `LOGICAL_TABLE`, set the `subtypes` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE` & subtypes as `[WORKSHEET]`. - To get a specific metadata object, specify the GUID. - To customize your search and filter the API response, you can use several parameters. You can search for objects created or modified by specific users, by tags applied to the objects, or by using the include parameters like `include_auto_created_objects`, `include_dependent_objects`, `include_headers`, `include_incomplete_objects`, and so on. You can also define sorting options to sort the data retrieved in the API response. - To get discoverable objects when linientmodel is enabled you can use `include_discoverable_objects` as true else false. Default value is true. - For liveboard metadata type, to get the newer format, set the `liveboard_response_format` as V2. Default value is V1. - To retrieve only objects that are published, set the `include_only_published_objects` as true. Default value is false. **NOTE**: `obj_identifier` is supported for the following object types: `LIVEBOARD`, `ANSWER`, `LOGICAL_TABLE`, `LOGICAL_COLUMN`, `CONNECTION`, `USER_GROUP`, `COLLECTION`. The response includes the `metadata_obj_id` field for objects that have a Custom object ID set. **NOTE**: The following parameters support pagination of metadata records: - `tag_identifiers` - `type` - `subtypes` - `created_by_user_identifiers` - `modified_by_user_identifiers` - `owned_by_user_identifiers` - `exclude_objects` - `include_auto_created_objects` - `favorite_object_options` - `include_only_published_objects` **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchMetadataRequest */ searchMetadata(searchMetadataRequest: SearchMetadataRequest, _options?: Configuration): Promise; /** * Remove parameterization from fields in metadata objects. Version: 26.10.0.cl or later Allows removing parameterization from fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows unparameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be unparameterized. For Connection Config, the only supported field name is: * impersonate_user ## Restored value The endpoint has two mutually exclusive modes, and the value that is restored differs per mode: * Single-field mode (`field_name` + `value`) restores the supplied `value`. * Bulk mode (`metadata_entries`) ignores `value` and restores the Primary org (`org_id=0`) value of the variable bound to the field, even when the request is made from a secondary org. In bulk mode, a secret Connection field bound to a sensitive variable is restored from the variable\'s Primary-org secret. Bulk mode has no partial success. The request fails with `400` and nothing is changed if any field: * is a non-secret field bound to a sensitive variable, * is bound to a per-principal variable, whose value is user-specific or group-specific, * has a variable that cannot be read, because it is deleted or not visible to you, * has no Primary-org value, or * is a secret field whose value is unavailable from the secure store, which includes the case where the Confidant Vault is disabled, since the restored secret could then not be stored securely. Such a field can still be unparameterized individually in single-field mode with an explicit `value`. Duplicate entries for the same object and field are coalesced. * @param unparameterizeMetadataRequest */ unparameterizeMetadata(unparameterizeMetadataRequest: UnparameterizeMetadataRequest, _options?: Configuration): Promise; /** * Update header attributes for a given list of header objects. Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **headers_update** - **Description:** List of header objects with their attributes to be updated. Each object contains a list of attributes to be updated in the header. - **Usage:** - You must provide either `identifier` or `obj_identifier`, but not both. Both fields cannot be empty. - When `org_identifier` is set to `-1`, only the `identifier` value is accepted; `obj_identifier` is not allowed. 2. **org_identifier** - **Description:** GUID (Globally Unique Identifier) or name of the organization. - **Usage:** - Leaving this field empty assumes that the changes should be applied to the current organization - Provide `org_guid` or `org_name` to uniquely identify the organization where changes need to be applied. . - Provide `-1` if changes have to be applied across all the org. --- ## Note Currently, this API is enabled only for updating the `obj_identifier` attribute. Only `text` will be allowed in attribute\'s value. ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the update process --- ## Examples ### Only `identifier` is given ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"obj_identifier\": \"\", \"type\": \"LOGICAL_COLUMN\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgGuid\" } ``` ### Only `obj_identifier` is given ```json { \"headers_update\": [ { \"obj_identifier\": \"custom_object_id\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgName\" } ``` ### Executing update for all org `-1` ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` ### Optional `type` is not provided ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` * @param updateMetadataHeaderRequest */ updateMetadataHeader(updateMetadataHeaderRequest: UpdateMetadataHeaderRequest, _options?: Configuration): Promise; /** * Update object IDs for given metadata objects. Version: 10.8.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **metadata** - **Description:** List of metadata objects to update their object IDs. - **Usage:** - Use either `current_obj_id` alone OR use `metadata_identifier` with `type` (when needed). - When using `metadata_identifier`, the `type` field is required if using a name instead of a GUID. - The `new_obj_id` field is always required. --- ## Note This API is specifically designed for updating object IDs of metadata objects. It internally uses the header update mechanism to perform the changes. ## Best Practices 1. **Backup Before Update:** Always export metadata as a backup before initiating the update process. 2. **Validation:** - When using `current_obj_id`, ensure it matches the existing object ID exactly. - When using `metadata_identifier` with a name, ensure the `type` is specified correctly. - Verify that the `new_obj_id` follows your naming conventions and is unique within your system. --- ## Examples ### Using current_obj_id ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with GUID ```json { \"metadata\": [ { \"metadata_identifier\": \"01234567-89ab-cdef-0123-456789abcdef\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with name and type ```json { \"metadata\": [ { \"metadata_identifier\": \"My Answer\", \"type\": \"ANSWER\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Multiple objects update ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id_1\", \"new_obj_id\": \"new_object_id_1\" }, { \"metadata_identifier\": \"My Worksheet\", \"type\": \"LOGICAL_TABLE\", \"new_obj_id\": \"new_object_id_2\" } ] } ``` * @param updateMetadataObjIdRequest */ updateMetadataObjId(updateMetadataObjIdRequest: UpdateMetadataObjIdRequest, _options?: Configuration): Promise; } declare class MetadataApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to convertWorksheetToModel * @throws ApiException if the response code was not in [200, 299] */ convertWorksheetToModelWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to copyObject * @throws ApiException if the response code was not in [200, 299] */ copyObjectWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteMetadata * @throws ApiException if the response code was not in [200, 299] */ deleteMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportMetadataTML * @throws ApiException if the response code was not in [200, 299] */ exportMetadataTMLWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportMetadataTMLBatched * @throws ApiException if the response code was not in [200, 299] */ exportMetadataTMLBatchedWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchAnswerSqlQuery * @throws ApiException if the response code was not in [200, 299] */ fetchAnswerSqlQueryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchAsyncImportTaskStatus * @throws ApiException if the response code was not in [200, 299] */ fetchAsyncImportTaskStatusWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchLiveboardSqlQuery * @throws ApiException if the response code was not in [200, 299] */ fetchLiveboardSqlQueryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importMetadataTML * @throws ApiException if the response code was not in [200, 299] */ importMetadataTMLWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importMetadataTMLAsync * @throws ApiException if the response code was not in [200, 299] */ importMetadataTMLAsyncWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to parameterizeMetadata * @throws ApiException if the response code was not in [200, 299] */ parameterizeMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to parameterizeMetadataFields * @throws ApiException if the response code was not in [200, 299] */ parameterizeMetadataFieldsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchMetadata * @throws ApiException if the response code was not in [200, 299] */ searchMetadataWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to unparameterizeMetadata * @throws ApiException if the response code was not in [200, 299] */ unparameterizeMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateMetadataHeader * @throws ApiException if the response code was not in [200, 299] */ updateMetadataHeaderWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateMetadataObjId * @throws ApiException if the response code was not in [200, 299] */ updateMetadataObjIdWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class OrgsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.0.0.cl or later Creates an Org object. To use this API, the [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview) feature must be enabled in your cluster. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param createOrgRequest */ createOrg(createOrgRequest: CreateOrgRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Deletes an Org object from the ThoughtSpot system. Requires cluster administration (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. When you delete an Org, all its users and objects created in that Org context are removed. However, if the users in the deleted Org also exists in other Orgs, they are removed only from the deleted Org. * @param orgIdentifier ID or name of the Org */ deleteOrg(orgIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of Orgs configured on the ThoughtSpot system. To get details of a specific Org, specify the Org ID or name. You can also pass parameters such as status, visibility, and user identifiers to get a specific list of Orgs. Results are paginated: `record_size` (default `10`) sets the number of Orgs returned and `record_offset` (default `0`) sets the starting record. To retrieve all Orgs, increase `record_offset` by `record_size` until a page returns fewer than `record_size` Orgs. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param searchOrgsRequest */ searchOrgs(searchOrgsRequest: SearchOrgsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates an Org object. You can modify Org properties such as name, description, and user associations. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param orgIdentifier ID or name of the Org * @param updateOrgRequest */ updateOrg(orgIdentifier: string, updateOrgRequest: UpdateOrgRequest, _options?: Configuration): Promise; } declare class OrgsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createOrg * @throws ApiException if the response code was not in [200, 299] */ createOrgWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteOrg * @throws ApiException if the response code was not in [200, 299] */ deleteOrgWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchOrgs * @throws ApiException if the response code was not in [200, 299] */ searchOrgsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateOrg * @throws ApiException if the response code was not in [200, 299] */ updateOrgWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class ReportsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.0.0.cl or later Exports an Answer in the given file format. You can download the Answer data as a PDF, PNG, CSV, or XLSX file. Requires at least view access to the Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV`, `XLSX`, and `PDF` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. For an Answer, the `PDF` export is a table PDF, which is why it falls under `CAN_DOWNLOAD_DETAILED_DATA` rather than `CAN_DOWNLOAD_VISUALS`. #### Usage guidelines In the request body, specify the GUID or name of the Answer and set `file_format`. The default file format is CSV. Use the `type` parameter to specify whether the Answer being exported is a saved Answer (`SAVED`) or a pinned Answer on a Liveboard (`PINNED`). Defaults to `SAVED`. When using `PINNED`, the `metadata_identifier` must be the container id. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * HTML rendering is not supported for PDF exports of Answers with tables. Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * @param exportAnswerReportRequest */ exportAnswerReport(exportAnswerReportRequest: ExportAnswerReportRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Exports a Liveboard and its visualizations in PDF, PNG, CSV, or XLSX file format. The default `file_format` is CSV. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` and `PDF` require the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To generate a Liveboard report with specific visualizations, add GUIDs or names of the visualizations. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes, including ad hoc changes to visualizations. For more information, see [Liveboard Report API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_liveboard_report_api). * Starting with ThoughtSpot Cloud 10.9.0.cl release, the Liveboard can be exported in the PNG format in the resolution of your choice. To enable this on your instance, contact ThoughtSpot support. When this feature is enabled, the options `include_cover_page`,`include_filter_page` within the `png_options` will not be available for PNG exports. * Starting with the ThoughtSpot Cloud 26.2.0.cl release, * Liveboards can be exported in CSV format. * All visualizations within a Liveboard can be exported as individual CSV files. * When exporting multiple visualizations or the entire Liveboard, the system returns the report as a compressed ZIP file containing the separate CSV files for each visualization. * Liveboards can also be exported in XLSX format. * All selected visualizations are consolidated into a single Excel workbook (.xlsx), with each visualization placed in its own worksheet (tab). * XLSX exports are limited to a maximum of 255 worksheets (tabs) per workbook. * @param exportLiveboardReportRequest */ exportLiveboardReport(exportLiveboardReportRequest: ExportLiveboardReportRequest, _options?: Configuration): Promise; } declare class ReportsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportAnswerReport * @throws ApiException if the response code was not in [200, 299] */ exportAnswerReportWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportLiveboardReport * @throws ApiException if the response code was not in [200, 299] */ exportLiveboardReportWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class RolesApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.5.0.cl or later Creates a Role object in ThoughtSpot. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To create a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param createRoleRequest */ createRole(createRoleRequest: CreateRoleRequest, _options?: Configuration): Promise; /** * Version: 9.5.0.cl or later Deletes a Role object from the ThoughtSpot system. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To delete a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. ReadOnly roles cannot be deleted. */ deleteRole(roleIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.5.0.cl or later Gets a list of Role objects from the ThoughtSpot system. Available if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To search for Roles, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. To get details of a specific Role object, specify the GUID or name. You can also filter the API response based on user group and Org identifiers, privileges assigned to the Role, and deprecation status. **NOTE**: In addition to the GUID and name, `role_identifiers` accepts a Custom object ID if one is configured for the role. The response also includes the `obj_id` field for each role that has one set. * @param searchRolesRequest */ searchRoles(searchRolesRequest: SearchRolesRequest, _options?: Configuration): Promise; /** * Version: 9.5.0.cl or later Updates the properties of a Role object. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To update a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. * @param updateRoleRequest */ updateRole(roleIdentifier: string, updateRoleRequest: UpdateRoleRequest, _options?: Configuration): Promise; } declare class RolesApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createRole * @throws ApiException if the response code was not in [200, 299] */ createRoleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteRole * @throws ApiException if the response code was not in [200, 299] */ deleteRoleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchRoles * @throws ApiException if the response code was not in [200, 299] */ searchRolesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateRole * @throws ApiException if the response code was not in [200, 299] */ updateRoleWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class SchedulesApiRequestFactory extends BaseAPIRequestFactory { /** * Create schedule. Version: 9.4.0.cl or later Creates a Liveboard schedule job. Requires at least edit access to Liveboards. To create a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, creating a schedule also requires the download privilege that corresponds to the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines * The description text is mandatory. The description text appears as **Description: ** in the Liveboard schedule email notifications. * For Liveboards with both charts and tables, schedule creation is only supported in PDF and XLS formats. Schedules created in CSV formats for such Liveboards will fail to run. If `PDF` is set as the `file_format`, enable `pdf_options` to get the correct attachment. Not doing so may cause the attachment to be rendered empty. * To include only specific visualizations, specify the visualization GUIDs in the `visualization_identifiers` array. * You can schedule a Liveboard job to run periodically by setting frequency parameters. You can set the schedule to run daily, weekly, monthly or every n minutes or hours. The scheduled job can also be configured to run at a specific time of the day or on specific days of the week or month. Please ensure that when setting the schedule frequency for _minute of the object_, only values that are multiples of 5 are included. * If the `frequency` parameters are defined, you can set the time zone to a value that matches your server\'s time zone. For example, `US/Central`, `Etc/UTC`, `CET`. The default time zone is `America/Los_Angeles`. For more information about Liveboard jobs, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/liveboard-schedule). * @param createScheduleRequest */ createSchedule(createScheduleRequest: CreateScheduleRequest, _options?: Configuration): Promise; /** * Deletes a scheduled job. Version: 9.4.0.cl or later Deletes a scheduled Liveboard job. Requires at least edit access to Liveboard or `ADMINISTRATION` (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. * @param scheduleIdentifier Unique ID or name of the scheduled job. */ deleteSchedule(scheduleIdentifier: string, _options?: Configuration): Promise; /** * Search Schedules Version: 9.4.0.cl or later Gets a list of scheduled jobs configured for a Liveboard. To get details of a specific scheduled job, specify the name or GUID of the scheduled job. Requires at least view access to Liveboards. **NOTE**: When filtering schedules by parameters other than `metadata`, set `record_size` to `-1` and `record_offset` to `0` for accurate results. * @param searchSchedulesRequest */ searchSchedules(searchSchedulesRequest: SearchSchedulesRequest, _options?: Configuration): Promise; /** * Update schedule. Version: 9.4.0.cl or later Updates a scheduled Liveboard job. Requires at least edit access to Liveboards. To update a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, changing a schedule\'s `file_format` also requires the download privilege that corresponds to the selected format: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. The API endpoint allows you to pause a scheduled job, change the status of a paused job. You can also edit the recipients list, frequency of the job, format of the file to send to the recipients in email notifications, PDF options, and time zone setting. * @param scheduleIdentifier Unique ID or name of the schedule. * @param updateScheduleRequest */ updateSchedule(scheduleIdentifier: string, updateScheduleRequest: UpdateScheduleRequest, _options?: Configuration): Promise; } declare class SchedulesApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createSchedule * @throws ApiException if the response code was not in [200, 299] */ createScheduleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteSchedule * @throws ApiException if the response code was not in [200, 299] */ deleteScheduleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchSchedules * @throws ApiException if the response code was not in [200, 299] */ searchSchedulesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateSchedule * @throws ApiException if the response code was not in [200, 299] */ updateScheduleWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class SecurityApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.0.0.cl or later Transfers the ownership of one or several objects from one user to another. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege and edit access to the objects are required. * @param assignChangeAuthorRequest */ assignChangeAuthor(assignChangeAuthorRequest: AssignChangeAuthorRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Fetches column security rules for specified tables. This 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. #### Usage guidelines - Provide an array of table identifiers using either `identifier` (GUID or name) or `obj_identifier` (object ID) - At least one of `identifier` or `obj_identifier` must be provided for each table - The API returns column security rules for all specified tables - Users must have appropriate permissions to access security rules for the specified tables #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables #### Example request ```json { \"tables\": [ { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\" } ] } ``` #### Response format The API returns an array of `ColumnSecurityRuleResponse` objects wrapped in a `data` field. Each `ColumnSecurityRuleResponse` object contains: - Table information (GUID and object ID) - Array of column security rules with column details, group access, and source table information #### Example response ```json { \"data\": [ { \"guid\": \"table-guid\", \"objId\": \"table-object-id\", \"columnSecurityRules\": [ { \"column\": { \"id\": \"col_123\", \"name\": \"Salary\" }, \"groups\": [ { \"id\": \"group_1\", \"name\": \"HR Department\" } ], \"sourceTableDetails\": { \"id\": \"source-table-guid\", \"name\": \"Employee_Data\" } } ] } ] } ``` * @param fetchColumnSecurityRulesRequest */ fetchColumnSecurityRules(fetchColumnSecurityRulesRequest: FetchColumnSecurityRulesRequest, _options?: Configuration): Promise; /** * Version: 26.3.0.cl or later This API fetches the object privileges present for the given list of principals (user or group), on the given set of objects. It supports pagination, which can be enabled and configured using the request parameters. It provides users access to certain features based on privilege based access control. #### Usage guidelines - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals for which you want to retrieve object privilege information in the `principals` array. - Specify the `type` (`LOGICAL_TABLE`) and `identifier` (either GUID or name) of the metadata objects for which you want to retrieve object privilege information in the `metadata` array. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - To control the offset from where principals have to be fetched, use `record_offset`. When `record_offset` is 0, information is fetched from the beginning. - To control the number of principals to be fetched, use `record_size`. Default `record_size` is 20. - Ensure `record_offset` for a subsequent request is one more than the value of `record_size` of the previous request. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ], \"metadata\": [ { \"type\": \"metadata-type-1\", \"identifier\": \"metadata-guid-or-name-1\" }, { \"type\": \"metadata-type-2\", \"identifier\": \"metadata-guid-or-name-2\" } ], \"record_offset\": 0, \"record_size\": 20 } ``` #### Response format The API returns an array of `metadata_object_privileges` objects wrapped in JSON. Each `metadata_object_privileges` object contains: - Metadata information (GUID, name and type) - Array of `principal_object_privilege_info`. - Each `principal_object_privilege_info` contains: - Principal type. All principals of this type are listed as described below. - Array of `principal_object_privileges`. - Each `principal_object_privileges` contains: - Principal information (GUID, name, subtype) - List of applied object level privileges. #### Example response ```json { \"metadata_object_privileges\": [ { \"metadata_id\": \"metadata-guid-1\", \"metadata_name\": \"metadata-name-1\", \"metadata_type\": \"metadata-type-1\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" } ] }, { \"principal_type\": \"principal-type-2\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-3\", \"principal_name\": \"principal-guid-4\", \"principal_sub_type\": \"principal-sub-type-4\", \"object_privileges\": \"[object-privilege-1]\" } ] } ] }, { \"metadata_id\": \"metadata-guid-2\", \"metadata_name\": \"metadata-name-2\", \"metadata_type\": \"metadata-type-2\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-3, object-privilege-4]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-4]\" } ] } ] } ] } ``` * @param fetchObjectPrivilegesRequest */ fetchObjectPrivileges(fetchObjectPrivilegesRequest: FetchObjectPrivilegesRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches object permission details for a given principal object such as a user and group. Requires view access to the metadata object. #### Usage guidelines * To get a list of all metadata objects that a user or group can access, specify the `type` and GUID or name of the principal. * To get permission details for a specific object, add the `type` and GUID or name of the metadata object to your API request. Upon successful execution, the API returns a list of metadata objects and permission details for each object. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOfPrincipalsRequest */ fetchPermissionsOfPrincipals(fetchPermissionsOfPrincipalsRequest: FetchPermissionsOfPrincipalsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches permission details for a given metadata object. Requires view access to the metadata object. #### Usage guidelines * To fetch a list of users and groups for a metadata object, specify `type` and GUID or name of the metadata object. * To get permission details for a specific user or group, add `type` and GUID or name of the principal object to your API request. Upon successful execution, the API returns permission details and principal information for the object specified in the API request. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOnMetadataRequest */ fetchPermissionsOnMetadata(fetchPermissionsOnMetadataRequest: FetchPermissionsOnMetadataRequest, _options?: Configuration): Promise; /** * Version: 26.3.0.cl or later This API allows the addition or deletion of object level privileges for a set of users and groups, on a set of metadata objects. It provides users to access certain features based on privilege based access control. #### Usage guidelines - Specify the `operation`. The supported operations are: `ADD`, `REMOVE`. - Specify the type of the objects on which the object privileges are being provided in `metadata_type`. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - Specify the list of object privilege types in the `object_privilege_types` array. The supported object privilege types are: `SPOTTER_COACHING_PRIVILEGE`. - Specify the identifiers (either GUID or name) for the metadata objects in the `metadata_identifiers` array. - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals to which you want to apply the given operation and given object privileges in the `principals` array. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"operation\": \"operation-type\", \"metadata_type\": \"metadata-type\", \"object_privilege_types\": [\"privilege-type-1\", \"privilege-type-2\"], \"metadata_identifiers\": [\"metadata-guid-or-name-1\", \"metadata-guid-or-name-1\"], \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ] } ``` > ###### Note: > * Only admin users, users with edit access and users with coaching privilege on a given data-model can add or remove principals related to SPOTTER_COACHING_PRIVILEGE * @param manageObjectPrivilegeRequest */ manageObjectPrivilege(manageObjectPrivilegeRequest: ManageObjectPrivilegeRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Allows publishing metadata objects across organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows publishing the following types of metadata objects: * Liveboards * Answers * Logical Tables This API will essentially share the objects along with it\'s dependencies to the org admins of the orgs to which it is being published. * @param publishMetadataRequest */ publishMetadata(publishMetadataRequest: PublishMetadataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Allows sharing one or several metadata objects with users and groups in ThoughtSpot. Requires edit access to the metadata object. #### Supported metadata objects: * Liveboards * Visualizations * Answers * Models * Views * Connections * Collections #### Object permissions You can provide `READ_ONLY` or `MODIFY` access when sharing an object with another user or group. The `READ_ONLY` permission grants view access to the shared object, whereas `MODIFY` provides edit access. To prevent a user or group from accessing the shared object, specify the GUID or name of the principal and set `shareMode` to `NO_ACCESS`. #### Sharing a visualization * Sharing a visualization implicitly shares the entire Liveboard with the recipient. * Object permissions set for a shared visualization also apply to the Liveboard unless overridden by another API request or via UI. * If email notifications for object sharing are enabled, a notification with a link to the shared visualization will be sent to the recipient’s email address. Although this link opens the shared visualization, recipients can also access other visualizations in the Liveboard. #### Sharing a collection Collections support **dual permissions** that provide fine-grained control: * **Collection permissions** (`share_mode`) - controls access to the collection itself (view, edit, delete the collection) * **Content permissions** (`content_share_mode`) - controls access to objects within the collection (view, edit objects inside) **Default Behavior:** - If only `share_mode` is specified, the content permissions default to `READ_ONLY` (except when `share_mode` is `NO_ACCESS`, then content also gets `NO_ACCESS`) - To give users edit access to collection contents, explicitly set `content_share_mode: \"MODIFY\"` ## Examples The following JSON examples can be copy-pasted as request bodies for the REST v2 API endpoint: ```bash POST /callosum/v1/v2/security/metadata/share Content-Type: application/x-www-form-urlencoded ``` ### Basic collection sharing Share a collection with read-only access: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Sales Reports Collection\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"alice@company.com\" }, \"share_mode\": \"READ_ONLY\" }], \"notification\": { \"message\": \"I\'ve shared the Sales Reports collection with you\", \"notify_on_share\": true } } ``` ### Collection sharing with dual permissions Share a collection with different permissions for the collection vs. its contents: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Marketing Analytics\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"bob@company.com\" }, \"share_mode\": \"MODIFY\", \"content_share_mode\": \"READ_ONLY\" }, { \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Marketing Team\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"READ_ONLY\" }], \"notification\": { \"emails\": [\"bob@company.com\"], \"message\": \"You can edit the collection but content is read-only\", \"enable_custom_url\": false, \"notify_on_share\": true }, \"has_lenient_discoverability\": false } ``` ### Multiple collections sharing Share multiple collections with different users: ```json { \"metadata\": [ { \"type\": \"COLLECTION\", \"identifier\": \"Q4 Reports\" }, { \"type\": \"COLLECTION\", \"identifier\": \"Executive Dashboard Collection\" } ], \"permissions\": [{ \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Executives\" }, \"share_mode\": \"MODIFY\" }, { \"principal\": { \"type\": \"USER\", \"identifier\": \"manager@company.com\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"MODIFY\" }], \"notification\": { \"message\": \"Sharing quarterly collections with leadership team\", \"notify_on_share\": true } } ``` ### Remove collection access Remove access to a collection by setting share_mode to NO_ACCESS: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Confidential Reports\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"former-employee@company.com\" }, \"share_mode\": \"NO_ACCESS\" }], \"notification\": { \"notify_on_share\": false } } ``` ### Collection Permission Scenarios **Scenario 1: Collection Admin** - `share_mode: MODIFY` + `content_share_mode: MODIFY` = Full control over collection and its contents **Scenario 2: Collection Curator** - `share_mode: MODIFY` + `content_share_mode: READ_ONLY` = Can manage collection structure but not edit contents **Scenario 3: Content Editor** - `share_mode: READ_ONLY` + `content_share_mode: MODIFY` = Can edit objects within collection but can\'t change collection itself **Scenario 4: Viewer** - `share_mode: READ_ONLY` + `content_share_mode: READ_ONLY` = View-only access to collection and contents * @param shareMetadataRequest */ shareMetadata(shareMetadataRequest: ShareMetadataRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Allows unpublishing metadata objects from organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows unpublishing the following types of metadata objects: * Liveboards * Answers * Logical Tables When unpublishing objects, you can: * Include dependencies by setting `include_dependencies` to true - this will unpublish all dependent objects if no other published object is using them * Force unpublish by setting `force` to true - this will break all dependent objects in the unpublished organizations * @param unpublishMetadataRequest */ unpublishMetadata(unpublishMetadataRequest: UnpublishMetadataRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Creates, updates, or deletes column security rules for specified tables. This 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. #### Usage guidelines - Provide table identifier using either `identifier` (GUID or name) or `obj_identifier` (object ID) - Use `clear_csr: true` to remove all column security rules from the table - For each column, specify the security rule using `column_security_rules` array - Use `is_unsecured: true` to mark a specific column as unprotected - Use `group_access` operations to manage group associations: - `ADD`: Add groups to the column\'s access list - `REMOVE`: Remove groups from the column\'s access list - `REPLACE`: Replace all existing groups with the specified groups #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data (if RBAC is disabled) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables (if RBAC is enabled) #### Example request ```json { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\", \"clear_csr\": false, \"column_security_rules\": [ { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"ADD\", \"group_identifiers\": [\"hr_group_id\", \"hr_group_name\", \"finance_group_id\"] } ] }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": true }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"REPLACE\", \"group_identifiers\": [\"management_group_id\", \"management_group_name\"] } ] } ] } ``` #### Request Body Schema - `identifier` (string, optional): GUID or name of the table for which we want to create column security rules - `obj_identifier` (string, optional): The object ID of the table - `clear_csr` (boolean, optional): If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed - `column_security_rules` (array of objects, required): An array where each object defines the security rule for a specific column Each column security rule object contains: - `column_identifier` (string, required): Column identifier (col_id or name) - `is_unsecured` (boolean, optional): If true, the column will be marked as unprotected and all groups associated with it will be removed - `group_access` (array of objects, optional): Array of group operation objects Each group operation object contains: - `operation` (string, required): Operation type - ADD, REMOVE, or REPLACE - `group_identifiers` (array of strings, required): Array of group identifiers (name or GUID) on which the operation will be performed #### Response This API does not return any response body. A successful operation returns HTTP 200 status code. #### Operation Types - **ADD**: Adds the specified groups to the column\'s access list - **REMOVE**: Removes the specified groups from the column\'s access list - **REPLACE**: Replaces all existing groups with the specified groups * @param updateColumnSecurityRulesRequest */ updateColumnSecurityRules(updateColumnSecurityRulesRequest: UpdateColumnSecurityRulesRequest, _options?: Configuration): Promise; } declare class SecurityApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to assignChangeAuthor * @throws ApiException if the response code was not in [200, 299] */ assignChangeAuthorWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchColumnSecurityRules * @throws ApiException if the response code was not in [200, 299] */ fetchColumnSecurityRulesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchObjectPrivileges * @throws ApiException if the response code was not in [200, 299] */ fetchObjectPrivilegesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchPermissionsOfPrincipals * @throws ApiException if the response code was not in [200, 299] */ fetchPermissionsOfPrincipalsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchPermissionsOnMetadata * @throws ApiException if the response code was not in [200, 299] */ fetchPermissionsOnMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to manageObjectPrivilege * @throws ApiException if the response code was not in [200, 299] */ manageObjectPrivilegeWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to publishMetadata * @throws ApiException if the response code was not in [200, 299] */ publishMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to shareMetadata * @throws ApiException if the response code was not in [200, 299] */ shareMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to unpublishMetadata * @throws ApiException if the response code was not in [200, 299] */ unpublishMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateColumnSecurityRules * @throws ApiException if the response code was not in [200, 299] */ updateColumnSecurityRulesWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class SemanticIntegrationsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 26.9.0.cl or later Creates a new semantic integration in ThoughtSpot from a CDW semantic view. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About create semantic integration A semantic integration imports an externally defined semantic view from a Cloud Data Warehouse (CDW) into ThoughtSpot. The API resolves the source semantic view from the specified `connection_identifier`, `database_name`, `schema_name`, and `semantic_view_name`, generates a ThoughtSpot model from it, and returns the model GUID along with a per-formula import report (`semantic_report`) summarizing how many formulas were successfully imported, failed, or skipped. - `connection_identifier`, `name`, `database_name`, `schema_name`, `semantic_view_name`, and `type` are required. - `name` must be unique across the user\'s organization. The integration\'s display name is also used as the generated model name. - Supported `type` values are listed in the `SemanticIntegrationType` enum. - The response includes a `semantic_report.summary` with `total`, `imported`, `failed`, and `skipped` counts, and a `formulas` array with the per-formula translation details. > **Note:** Creating a semantic integration using a YAML file upload is not supported through the public API. * @param createSemanticIntegrationRequest */ createSemanticIntegration(createSemanticIntegrationRequest: CreateSemanticIntegrationRequest, _options?: Configuration): Promise; /** * Version: 26.9.0.cl or later Deletes a semantic integration and its associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About delete semantic integration Removes the specified semantic integration and its generated ThoughtSpot model from the system. - `semantic_integration_identifier` is the GUID or name of the integration to delete. - Deletions cannot be undone. Re-import the integration with `createSemanticIntegration` if needed. * @param semanticIntegrationIdentifier ID or name of the semantic integration to delete. */ deleteSemanticIntegration(semanticIntegrationIdentifier: string, _options?: Configuration): Promise; /** * Version: 26.9.0.cl or later Imports semantic updates for an existing semantic integration from its CDW source and refreshes the associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About import semantic integration Re-imports the semantic view from the CDW for the specified integration and rebuilds the corresponding ThoughtSpot model. Use this after the source semantic view has been updated in the CDW (added, removed, or modified formulas, dimensions, or measures) to bring the ThoughtSpot model back in line. - `semantic_integration_identifier` is the GUID or name of the integration to import updates for. - Import preserves the integration\'s GUID, name, and `model_id`; only the underlying formula set is refreshed. - The response includes the same `semantic_report` as create, with an additional `change_status` per formula indicating whether each formula is `NEW`, `UPDATED`, or `UNCHANGED` since the previous import. > **Note:** Importing updates for a semantic integration that was created using the file upload option in the ThoughtSpot UI is not supported. To refresh a file-upload-based integration, use the ThoughtSpot UI. * @param semanticIntegrationIdentifier ID or name of the semantic integration to import updates for. */ importSemanticIntegration(semanticIntegrationIdentifier: string, _options?: Configuration): Promise; /** * Version: 26.9.0.cl or later Searches and lists semantic integrations available to the authenticated user in the current organization, with optional filters, sort, and pagination. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About search semantic integrations Returns a paginated batch of semantic integrations, each with its identifier, name, description, source connection, generated model identifier, author, creation/modification timestamps, and associated tags. Use the filters to narrow results by author, connection, tag, or name pattern. - `pattern` matches the integration name as a case-insensitive substring. - `author_identifiers` and `connection_identifiers` accept either GUIDs or names. - `sort_options.field_name` defaults to `MODIFIED_TIME`; set `sort_options.order` to `ASC` or `DESC` to control sort direction. - `record_offset` and `record_size` control pagination. Use `record_size: 0` to return all matching records in a single response. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchSemanticIntegrationsRequest */ searchSemanticIntegrations(searchSemanticIntegrationsRequest: SearchSemanticIntegrationsRequest, _options?: Configuration): Promise; } declare class SemanticIntegrationsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createSemanticIntegration * @throws ApiException if the response code was not in [200, 299] */ createSemanticIntegrationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteSemanticIntegration * @throws ApiException if the response code was not in [200, 299] */ deleteSemanticIntegrationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importSemanticIntegration * @throws ApiException if the response code was not in [200, 299] */ importSemanticIntegrationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchSemanticIntegrations * @throws ApiException if the response code was not in [200, 299] */ searchSemanticIntegrationsWithHttpInfo(response: ResponseContext): Promise>>; } /** * no description */ declare class StyleCustomizationApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 26.7.0.cl or later Deletes one or more custom fonts from the cluster-level or org-level font library. If a deleted font is assigned to visualization areas, those assignments automatically fallback to the cluster/system default font. The response lists all affected areas where the font was explicitly set. Note: dry_run defaults to true. To actually delete fonts, you must explicitly pass dry_run: false. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Provide one or more font UUIDs or names in `font_identifiers`. - Set `scope` to `CLUSTER` to delete from the cluster-level library. Set `scope` to `ORG` (default) to delete from the authenticated user\'s org library. - Use `dry_run: true` to preview which visualization areas would be affected without actually deleting the font. The response lists affected assignments; no changes are applied. - Deletions cannot be undone. Re-upload the font file using `uploadStyleFont` if needed. * @param deleteStyleFontsRequest */ deleteStyleFonts(deleteStyleFontsRequest: DeleteStyleFontsRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Downloads the active logos (default and wide slots) at the requested scope as a single ZIP archive containing both logo image files. If no custom logo has been uploaded at the ORG scope, the archive contains the resolved logo falling through from the cluster. If no cluster logo has been uploaded, no file is returned. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to download cluster-level logos. - Set `scope` to `ORG` (default) to download logos for the authenticated user\'s org. - The response is a ZIP archive (`application/zip`). Save the response body directly to a `.zip` file. - The archive always contains two files — one for the DEFAULT slot and one for the WIDE slot — even if no custom logo is set at the requested scope. * @param exportStyleLogosRequest * @param accept */ exportStyleLogos(exportStyleLogosRequest: ExportStyleLogosRequest, accept?: 'application/zip', _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Retrieves style preferences at cluster level or for the authenticated user\'s org. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to retrieve cluster-level style defaults. - Set `scope` to `ORG` (default) to retrieve preferences for the authenticated user\'s org. - Each field in the response includes an `is_overridden` flag indicating whether the value was explicitly set at the requested scope or inherited from a parent scope (cluster or system default). - `app_color_theme` (_available from 26.10.0.cl_) describes the same underlying color as `navigation_panel`, in a different form: `navigation_panel` uses the `DARK`/`TWO_TONE`/`CUSTOM` theme modes, while `app_color_theme` gives the brand color and how it is applied (`brand_color`, `apply_as_top_nav_color`). They never disagree, so use whichever your integration already reads. `app_color_theme` is returned only when the app color theme is enabled on the cluster; `navigation_panel` is always returned. * @param searchStyleCustomizationsRequest */ searchStyleCustomizations(searchStyleCustomizationsRequest: SearchStyleCustomizationsRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Returns custom fonts from the cluster-level or org-level font library. Omitting all filter fields returns all fonts in the target scope. When `include_font_assignments` is `true`, the response includes only the visualization areas explicitly assigned to each font. For cluster-scoped fonts, `org` is returned as `null`. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to search the cluster-level library. Set `scope` to `ORG` (default) to search the authenticated user\'s org library. - Use `font_identifier` to look up a specific font by UUID or name. - Use `name_pattern` for partial, case-insensitive name matching. - Set `include_font_assignments` to `true` to include visualization areas this font is currently assigned to. Defaults to `false`. * @param searchStyleFontsRequest */ searchStyleFonts(searchStyleFontsRequest: SearchStyleFontsRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Updates style preferences at cluster level or for the authenticated user\'s org, including navigation panel color, chart color palette, embedded footer text, logo, and font assignments per visualization area. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Resetting an Org-level preference falls back to Cluster-level preference, which on reset falls back to system defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines Two operations are supported via the `operation` field: - **REPLACE** (default): Applies the fields provided in the request. Omitted fields remain unchanged. - **RESET**: Reverts specific fields to defaults. Specify which fields to reset using `reset_options.style` (for style fields) and `reset_options.visualization_areas` (for font assignments). Fields not listed in `reset_options` are not affected. #### Logo upload Logo files are uploaded as binary fields using `multipart/form-data`: - `default_logo`: Square app icon and favicon. Recommended size: 140×140 px. Accepted formats: PNG, JPG. - `wide_logo`: Horizontal top nav bar logo. Recommended size: 230×45 px. Accepted formats: PNG, JPG. To reset a logo to the default, use `operation: RESET` with `reset_options.style` set to `DEFAULT_LOGO` or `WIDE_LOGO`. #### Navigation panel color Set `navigation_panel.theme` to one of: - `DARK`: Default dark theme. - `TWO_TONE`: Dual-tone panel style. - `CUSTOM`: User-defined color. Provide `navigation_panel.base_color` as a 6-digit hex string (e.g. `#2359B6`). #### App color theme `app_color_theme` (_available from 26.10.0.cl_) sets the same underlying color as `navigation_panel`, expressed as a brand color plus how it is applied. Provide exactly one of `navigation_panel` or `app_color_theme` per request; providing both returns an error. `app_color_theme` is supported only when the app color theme is enabled on the cluster; using it otherwise returns an error. - `brand_color`: Brand color as a 6-digit hex string (e.g. `#2359B6`). Omit to leave the stored color unchanged. To clear it, use `operation: RESET` with `reset_options.style` set to `APP_COLOR_THEME`. - `apply_as_top_nav_color`: Whether the brand color is painted on the top navigation bar literally, instead of the surface shade generated from it. Omit to leave the stored choice unchanged. `brand_color` and `apply_as_top_nav_color` may be set independently in the same request. #### Chart color palette Provide exactly 8 color entries in `chart_color_palette.colors`. Each entry requires a `primary` hex color. If `secondary` shades are omitted, the server auto-generates 4 shades from the primary color. #### Font assignments Specify `visualization_fonts.chart_visualization_fonts`, `visualization_fonts.table_visualization_fonts`, and `visualization_fonts.advanced_chart_visualization_fonts` to assign custom fonts to specific visualization areas. Only provide the areas you want to update; omitted areas remain unchanged. * @param scope Scope at which to apply the preferences. CLUSTER sets cluster-level defaults for all orgs. ORG applies to the authenticated user\\\'s org. * @param operation Operation to perform. REPLACE (default) applies the provided fields and leaves omitted fields unchanged. RESET reverts fields listed in reset_options to defaults. * @param resetOptions Fields to reset when operation is RESET. Specify style fields and visualization areas to revert to defaults. * @param navigationPanel Navigation panel color. Provide theme and, when theme is CUSTOM, also provide base_color. * @param chartColorPalette Chart color palette. When provided with operation REPLACE, exactly 8 color entries must be specified in colors. * @param embeddedFooterText Custom footer text for the embedded application. An empty string clears the footer. * @param visualizationFonts Font assignments per visualization area. Provide only the areas to update; omitted areas remain unchanged. * @param defaultLogo Binary image for the DEFAULT logo slot (square app icon and favicon; recommended 140x140 px). Accepted formats: PNG, JPG. * @param wideLogo Binary image for the WIDE logo slot (horizontal top nav bar logo; recommended 230x45 px). Accepted formats: PNG, JPG. */ updateStyleCustomization(scope: string, operation?: string, resetOptions?: StyleResetOptionsInput, navigationPanel?: NavigationPanelInput, chartColorPalette?: StyleColorPaletteInput, embeddedFooterText?: string, visualizationFonts?: VisualizationFontsInput, defaultLogo?: HttpFile, wideLogo?: HttpFile, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Updates the metadata of an existing custom font in the cluster-level or org-level font library. Only the fields provided in the request are modified; omitted fields remain unchanged. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Identify the font using `font_identifier` (UUID or name). - Set `scope` to `CLUSTER` to target the cluster-level library. Set `scope` to `ORG` (default) to target the authenticated user\'s org library. - To replace the font file itself (WOFF/WOFF2 binary), delete the existing font and re-upload using `uploadStyleFont`. - `color` must be a valid 6-digit hex string (e.g. `#333333`) if provided. * @param fontIdentifier UUID or name of the font to update. * @param updateStyleFontRequest */ updateStyleFont(fontIdentifier: string, updateStyleFontRequest: UpdateStyleFontRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Uploads a custom font to the cluster-level or org-level font library. Cluster-level fonts are available as defaults for all orgs. Org-level fonts are only available within that org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Only **WOFF** and **WOFF2** font formats are accepted. TTF and OTF files are rejected with an error. - Set `scope` to `CLUSTER` to upload to the cluster-level library. Set `scope` to `ORG` (default) to upload to the authenticated user\'s org library. - `weight` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `LIGHT`, `BOLD`. - `style` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `ITALIC`, `OBLIQUE`. - `color` defaults to `#000000` (black) if omitted. Provide as a 6-digit hex string (e.g. `#333333`). - The uploaded font can be assigned to visualization areas using the `updateStyleCustomization` endpoint. * @param name Display name for the font (e.g. \\\"Acme Sans\\\"). * @param fileContent Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats are accepted; TTF and OTF are rejected. The file is validated on upload. * @param scope Scope of the font library to upload to. CLUSTER uploads to the cluster-level library, making the font available as a default for all orgs. ORG uploads to the authenticated user\\\'s org library. Defaults to ORG if omitted. * @param weight Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to NORMAL if omitted. * @param style Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults to NORMAL if omitted. * @param color Color of the font as a 6-digit hex string (e.g. \\\"#333333\\\"). Defaults to #000000 (black) if omitted. Returns an error if the value is malformed. */ uploadStyleFont(name: string, fileContent: HttpFile, scope?: string, weight?: string, style?: string, color?: string, _options?: Configuration): Promise; } declare class StyleCustomizationApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteStyleFonts * @throws ApiException if the response code was not in [200, 299] */ deleteStyleFontsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportStyleLogos * @throws ApiException if the response code was not in [200, 299] */ exportStyleLogosWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchStyleCustomizations * @throws ApiException if the response code was not in [200, 299] */ searchStyleCustomizationsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchStyleFonts * @throws ApiException if the response code was not in [200, 299] */ searchStyleFontsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateStyleCustomization * @throws ApiException if the response code was not in [200, 299] */ updateStyleCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateStyleFont * @throws ApiException if the response code was not in [200, 299] */ updateStyleFontWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to uploadStyleFont * @throws ApiException if the response code was not in [200, 299] */ uploadStyleFontWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class SystemApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 10.14.0.cl or later Configure communication channel preferences. - Use `cluster_preferences` to update the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to specify Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param configureCommunicationChannelPreferencesRequest */ configureCommunicationChannelPreferences(configureCommunicationChannelPreferencesRequest: ConfigureCommunicationChannelPreferencesRequest, _options?: Configuration): Promise; /** * Version: 26.2.0.cl or later Configure security settings for your ThoughtSpot application instance. - Use `cluster_preferences` to update cluster-level security settings including CORS whitelisted URLs, CSP settings, SAML redirect URLs, partitioned cookies, and non-embed access configuration. - Use `org_preferences` to configure Org-specific security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this allows configuring CORS and non-embed access settings specific to the Org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. Cluster-level SAML and script-src settings require `ADMINISTRATION` privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param configureSecuritySettingsRequest */ configureSecuritySettings(configureSecuritySettingsRequest: ConfigureSecuritySettingsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Retrieves the current configuration details of the cluster. If the request is successful, the API returns a list configuration settings applied on the cluster. Requires `ADMINISTRATION`(**Can administer ThoughtSpot**) privilege to view these complete configuration settings of the cluster. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemConfig(_options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets system information such as the release version, locale, time zone, deployment environment, date format, and date time format of the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemInformation(_options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Gets a list of configuration overrides applied on the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemOverrideInfo(_options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Fetch communication channel preferences. - Use `cluster_preferences` to fetch the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to fetch any Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param searchCommunicationChannelPreferencesRequest */ searchCommunicationChannelPreferences(searchCommunicationChannelPreferencesRequest: SearchCommunicationChannelPreferencesRequest, _options?: Configuration): Promise; /** * Version: 26.2.0.cl or later Fetch security settings for your ThoughtSpot application instance. - Use `scope: CLUSTER` to retrieve cluster-level security settings, including CORS and CSP allowlists, SAML redirect URLs, and settings that control access to non-embedded pages. - Use `scope: ORG` to retrieve Org-level security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this returns CORS and non-embed access settings specific to the Org. - If `scope` is not specified, returns both cluster and Org-specific settings based on user privileges. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param searchSecuritySettingsRequest */ searchSecuritySettings(searchSecuritySettingsRequest: SearchSecuritySettingsRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Updates the current configuration of the cluster. You must send the configuration data in JSON format. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. * @param updateSystemConfigRequest */ updateSystemConfig(updateSystemConfigRequest: UpdateSystemConfigRequest, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Validates a communication channel configuration to ensure it is properly set up and can receive events. - Use `channel_type` to specify the type of communication channel to validate (e.g., WEBHOOK). - Use `channel_identifier` to provide the unique identifier or name for the communication channel. - Use `event_type` to specify the event type to validate for this channel. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. For webhook channels, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param validateCommunicationChannelRequest */ validateCommunicationChannel(validateCommunicationChannelRequest: ValidateCommunicationChannelRequest, _options?: Configuration): Promise; } declare class SystemApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to configureCommunicationChannelPreferences * @throws ApiException if the response code was not in [200, 299] */ configureCommunicationChannelPreferencesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to configureSecuritySettings * @throws ApiException if the response code was not in [200, 299] */ configureSecuritySettingsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getSystemConfig * @throws ApiException if the response code was not in [200, 299] */ getSystemConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getSystemInformation * @throws ApiException if the response code was not in [200, 299] */ getSystemInformationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getSystemOverrideInfo * @throws ApiException if the response code was not in [200, 299] */ getSystemOverrideInfoWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCommunicationChannelPreferences * @throws ApiException if the response code was not in [200, 299] */ searchCommunicationChannelPreferencesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchSecuritySettings * @throws ApiException if the response code was not in [200, 299] */ searchSecuritySettingsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateSystemConfig * @throws ApiException if the response code was not in [200, 299] */ updateSystemConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to validateCommunicationChannel * @throws ApiException if the response code was not in [200, 299] */ validateCommunicationChannelWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class TagsApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.0.0.cl or later Assigns tags to Liveboards, Answers, Tables, and Worksheets. Requires edit access to the metadata object. * @param assignTagRequest */ assignTag(assignTagRequest: AssignTagRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Creates a tag object. Tags are labels that identify a metadata object. For example, you can create a tag to designate subject areas, such as sales, HR, marketing, and finance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param createTagRequest */ createTag(createTagRequest: CreateTagRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Deletes a tag object from the ThoughtSpot system Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Tag identifier Tag name or Tag id. */ deleteTag(tagIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of tag objects available on the ThoughtSpot system. To get details of a specific tag object, specify the GUID or name. Any authenticated user can search for tag objects. * @param searchTagsRequest */ searchTags(searchTagsRequest: SearchTagsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Removes the tags applied to a Liveboard, Answer, Table, or Worksheet. Requires edit access to the metadata object. * @param unassignTagRequest */ unassignTag(unassignTagRequest: UnassignTagRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates a tag object. You can modify the `name` and `color` properties of a tag object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Name or Id of the tag. * @param updateTagRequest */ updateTag(tagIdentifier: string, updateTagRequest: UpdateTagRequest, _options?: Configuration): Promise; } declare class TagsApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to assignTag * @throws ApiException if the response code was not in [200, 299] */ assignTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createTag * @throws ApiException if the response code was not in [200, 299] */ createTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteTag * @throws ApiException if the response code was not in [200, 299] */ deleteTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchTags * @throws ApiException if the response code was not in [200, 299] */ searchTagsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to unassignTag * @throws ApiException if the response code was not in [200, 299] */ unassignTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateTag * @throws ApiException if the response code was not in [200, 299] */ updateTagWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class ThoughtSpotRestApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.7.0.cl or later Activates a deactivated user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To activate an inactive user account, the API request body must include the following information: - Username or the GUID of the user account. - Auth token generated for the deactivated user. The auth token is sent in the API response when a user is deactivated. - Password for the user account. * @param activateUserRequest */ activateUser(activateUserRequest: ActivateUserRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Transfers the ownership of one or several objects from one user to another. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege and edit access to the objects are required. * @param assignChangeAuthorRequest */ assignChangeAuthor(assignChangeAuthorRequest: AssignChangeAuthorRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Assigns tags to Liveboards, Answers, Tables, and Worksheets. Requires edit access to the metadata object. * @param assignTagRequest */ assignTag(assignTagRequest: AssignTagRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates the current password of the user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param changeUserPasswordRequest */ changeUserPassword(changeUserPasswordRequest: ChangeUserPasswordRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Commits TML files of metadata objects to the Git branch configured on your instance. Requires at least edit access to objects used in the commit operation. Before using this endpoint to push your commits: * Enable Git integration on your instance. * Make sure the Git repository and branch details are configured on your instance. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitBranchRequest */ commitBranch(commitBranchRequest: CommitBranchRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Enables or disables authentication at cluster or org level for the specified auth type. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `cluster_preferences` to enable or disable authentication at the cluster level. Cluster-level settings can only be configured from the Primary Org. - `ENABLED` — Generates a new access token if one does not exist. An existing token is preserved. - `DISABLED` — Revokes the existing cluster-level access token. Use `org_preferences` to enable or disable authentication for one or more Orgs. Each entry must include an `org_identifier` (unique ID or name) and an `auth_status`. Org-level configuration requires the per-Org authentication feature to be enabled on your instance. - `ENABLED` — Generates a new org-level access token if one does not exist. - `DISABLED` — Revokes the existing org-level access token for that Org. Both `cluster_preferences` and `org_preferences` are optional. Omitting a field leaves the corresponding settings unchanged. If both are omitted, the API returns `204 No Content` without making any changes. **Note**: Cluster-level and org-level settings are independent of each other. Enabling or disabling one does not affect the other. * @param configureAuthSettingsRequest */ configureAuthSettings(configureAuthSettingsRequest: ConfigureAuthSettingsRequest, _options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Configure communication channel preferences. - Use `cluster_preferences` to update the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to specify Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param configureCommunicationChannelPreferencesRequest */ configureCommunicationChannelPreferences(configureCommunicationChannelPreferencesRequest: ConfigureCommunicationChannelPreferencesRequest, _options?: Configuration): Promise; /** * Version: 26.2.0.cl or later Configure security settings for your ThoughtSpot application instance. - Use `cluster_preferences` to update cluster-level security settings including CORS whitelisted URLs, CSP settings, SAML redirect URLs, partitioned cookies, and non-embed access configuration. - Use `org_preferences` to configure Org-specific security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this allows configuring CORS and non-embed access settings specific to the Org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. Cluster-level SAML and script-src settings require `ADMINISTRATION` privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param configureSecuritySettingsRequest */ configureSecuritySettings(configureSecuritySettingsRequest: ConfigureSecuritySettingsRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Gets connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * 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. * To fetch details of a configuration object, specify the configuration object name or GUID. * @param connectionConfigurationSearchRequest */ connectionConfigurationSearch(connectionConfigurationSearchRequest: ConnectionConfigurationSearchRequest, _options?: Configuration): Promise; /** * Convert worksheets to models Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (Can manage data models). --- ## Usage Guidelines ### Parameters 1. **worksheet_ids** - **Description:** A comma-separated list of GUIDs (Globally Unique Identifiers) specifying the Worksheets to be converted. - **Usage:** - Used only when `convert_all` is set to `false`. - Leave empty or omit when `convert_all` is set to `true`. 2. **exclude_worksheet_ids** - **Description:** A comma-separated list of GUIDs specifying Worksheets to be excluded from conversion. - **Usage:** - Useful when `convert_all` is set to `true` and specific Worksheets should not be converted. 3. **convert_all** - **Description:** Sets the scope of conversion. - **Options:** - `true`: Converts all Worksheets in the system, except those specified in `exclude_worksheet_ids`. - `false`: Converts only the Worksheets listed in `worksheet_ids`. 4. **apply_changes** - **Description:** Specifies whether to apply changes directly to ThoughtSpot or to generate a preview before applying any changes.Used for validation of conversion. - **Options:** - `true`: Applies conversion changes directly to ThoughtSpot. - `false`: Generates only a preview of the changes and does not apply any changes to ThoughtSpot --- ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the conversion process 2. **Partial Conversion for Testing:** Test the conversion process by setting `convert_all` to `false` and specifying a small number of `worksheet_ids`. 3. **Verify Dependencies:** Check for dependent objects, such as Tables and Connections, to avoid invalid references. 4. **Review Changes:** Use `apply_changes: false` to preview the impact of the conversion before applying changes. --- ## Examples ### Convert Specific Worksheets ```json { \"worksheet_ids\": [\"guid1\", \"guid2\", \"guid3\"], \"exclude_worksheet_ids\": [], \"convert_all\": false, \"apply_changes\": true } ``` ### Convert All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [], \"convert_all\": true, \"apply_changes\": true } ``` ### Exclude Specific Worksheets While Converting All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [\"abc\"], \"convert_all\": true, \"apply_changes\": true } ``` * @param convertWorksheetToModelRequest */ convertWorksheetToModel(convertWorksheetToModelRequest: ConvertWorksheetToModelRequest, _options?: Configuration): Promise; /** * Makes a copy of an Answer or Liveboard Version: 10.3.0.cl or later Creates a copy of a metadata object. Requires at least view access to the metadata object being copied. Upon successful execution, the API creates a copy of the metadata object specified in the API request and returns the ID of the new object. * @param copyObjectRequest */ copyObject(copyObjectRequest: CopyObjectRequest, _options?: Configuration): Promise; /** * Version: 26.2.0.cl or later Creates a new Spotter agent conversation based on the provided context and settings. The endpoint was in Beta from 26.2.0.cl through 26.4.0.cl. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The conversation context is defined by exactly one of the following parameters: - `metadata_context`: defines the conversation context by data source. The context type can be one of: - `DATA_SOURCE` *(available from 26.5.0.cl)*: targets a specific data source. Provide `data_source_identifier` in `data_source_context` for a single data source, or `data_source_identifiers` for multi-data-source context. The deprecated `guid` field is accepted for backwards compatibility. - `AUTO_MODE` *(available from 26.5.0.cl)*: automatically discovers and selects the most relevant datasets for the user\'s queries. - `analyst_identifier` *(available from 26.10.0.cl)*: unique identifier of a Spotter Analyst to start the conversation from. The conversation uses the analyst\'s configuration — its data sources, agent instructions, and connectors — so `metadata_context` must be omitted. The caller must be the analyst\'s author, have the analyst shared with them, or hold admin / Spotter-management privileges. Passing both `analyst_identifier` and `metadata_context`, or neither, is rejected. > **Note for callers on versions 26.2.0.cl – 26.4.0.cl (Beta):** use the lowercase `data_source` enum value with the `guid` field instead of the above. Example: `{ \"type\": \"data_source\", \"data_source_context\": { \"guid\": \"\" } }`. The `conversation_settings` parameter controls which Spotter capabilities are enabled for the conversation: - `enable_contextual_change_analysis` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_natural_language_answer_generation` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_reasoning` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_save_chat` (default: `false`, *available from 26.5.0.cl*) — enables saving the conversation for later retrieval via conversation history If the request is successful, the response includes a unique `conversation_identifier` that must be passed to `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming` to send messages within this conversation. The response also includes `conversation_id` with the same value for backwards compatibility; use `conversation_identifier` for new integrations. When the conversation is started from an analyst, the response additionally carries the analyst\'s `analyst_id`; it is `null` otherwise. #### Example request ```json { \"metadata_context\": { \"type\": \"DATA_SOURCE\", \"data_source_context\": { \"data_source_identifier\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\" } }, \"conversation_settings\": {} } ``` #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view permission on the specified metadata object, or has no access to the analyst specified in `analyst_identifier`. | | 404 | Not found — no analyst with the given `analyst_identifier` exists in the caller\'s Org. | | 422 | Unprocessable entity — the request fails validation: both `analyst_identifier` and `metadata_context` were provided, neither was provided, or `metadata_context` is malformed (for example, `DATA_SOURCE` context without a data source identifier). | > ###### Note: > > - This endpoint was in Beta from 26.2.0.cl through 26.4.0.cl and is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createAgentConversationRequest */ createAgentConversation(createAgentConversationRequest: CreateAgentConversationRequest, _options?: Configuration): Promise; /** * Creates a Spotter Analyst: a configured agent with a name, description, at least one data source, and optional agent instructions, MCP connectors, and starter prompts. Analysts created via API use the default icon until one is set in the UI. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Version: 26.10.0.cl or later Creates a Spotter Analyst: a configured agent with a name, description, data sources, and optional agent instructions, MCP connectors, and starter prompts that your users converse with in Spotter. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Use a bearer token for the Org in which the analyst should be created. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior for this analyst. Instructions that conflict with system guardrails are rejected with `409`. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). The caller must have view access to every referenced source. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors to link to the analyst. - `starter_prompts` (optional): up to 4 plain-text prompts shown on the analyst landing page, each between 10 and 250 characters. Display order follows list position. If the request is successful, the response contains the created analyst, including the server-assigned `id`. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`), the last-update time as `updated_time_in_millis` (epoch milliseconds), and the `created_by` and `updated_by` users. #### Error conditions - `403` — missing privileges, or no view access to a referenced data source. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param createAnalystRequest */ createAnalyst(createAnalystRequest: CreateAnalystRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Creates a new [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can create a custom calendar from scratch or an existing Table in ThoughtSpot. For both methods of calendar creation, the following parameters are required: * Name of the custom calendar. * Calendar creation method. To create a calendar from an existing table, specify the method: - `FROM_EXISTING_TABLE` - Creates calendar from the table reference provided in the API request. - `FROM_INPUT_PARAMS` - Creates a calendar from the parameters defined in the API request. * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. **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. ##### Calendar type The API allows you to create the following types of calendars: * `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. * `4-4-5`. Each quarter in the calendar will include two 4-week months followed by one 5-week month. * `4-5-4`. Each quarter in the calendar will include two 4-week months with a 5-week month between. * `5-4-4`. Each quarter begins with a 5-week month, followed by two 4-week months. To 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. You can also set the starting day of the week and customize the prefixes for year and quarter labels. #### Examples To create a calendar from an existing table: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_EXISTING_TABLE\", } ``` To create a calendar from scratch: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_INPUT_PARAMS\", \"calendar_type\": \"MONTH_OFFSET\", \"month_offset\": \"April\", \"start_day_of_week\": \"Monday\", \"quarter_name_prefix\": \"Q\", \"year_name_prefix\": \"FY\", \"start_date\": \"04/01/2025\", \"end_date\": \"04/31/2025\" } ``` * @param createCalendarRequest */ createCalendar(createCalendarRequest: CreateCalendarRequest, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Creates a new collection in ThoughtSpot. Collections allow you to organize and group related metadata objects such as Liveboards, Answers, worksheets, and other data objects. You can also create nested collections (sub-collections) to build a hierarchical structure. #### Supported operations The API endpoint lets you perform the following operations: * Create a new collection * Add metadata objects (Liveboards, Answers, Logical Tables) to the collection * Create nested collections by adding sub-collections * @param createCollectionRequest */ createCollection(createCollectionRequest: CreateCollectionRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Allows you to connect a ThoughtSpot instance to a Git repository. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. You can use this API endpoint to connect your ThoughtSpot development and production environments to the development and production branches of a Git repository. Before using this endpoint to connect your ThoughtSpot instance to a Git repository, check the following prerequisites: * You have a Git repository. If you are using GitHub, make sure you have a valid account and an access token to connect ThoughtSpot to GitHub. For information about generating a token, see [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens). * Your access token has `repo` scope that grants full access to public and private repositories. * Your Git repository has a branch that can be configured as a default branch in ThoughtSpot. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/?pageid=git-integration). **Note**: ThoughtSpot supports only GitHub / itHub Enterprise for CI/CD. * @param createConfigRequest */ createConfig(createConfigRequest: CreateConfigRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Creates a connection to a data warehouse for live query services. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Create a connection without tables To create a connection without tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a SnowFlake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` 2. Set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. #### Create a connection with tables If [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**) and `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. To create a connection with tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\", \"AllDatatypes\"], \"externalDatabases\":[ { \"name\":\"AllDatatypes\", \"isAutoCreated\":false, \"schemas\":[ { \"name\":\"alldatatypes\", \"tables\":[ { \"name\":\"allDatatypes\", \"type\":\"TABLE\", \"description\":\"\", \"selected\":true, \"linked\":true, \"columns\":[ { \"name\":\"CNUMBER\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" }, { \"name\":\"CDECIMAL\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" } ] } ] } ] } ] } ``` 2. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param createConnectionRequest */ createConnection(createConnectionRequest: CreateConnectionRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Creates an additional configuration to an existing connection to a data warehouse. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * A JSON map of configuration attributes in `configuration`. The following example shows the configuration attributes: ``` { \"user\":\"DEV_USER\", \"password\":\"TestConn123\", \"role\":\"DEV\", \"warehouse\":\"DEV_WH\" } ``` * If the `policy_type` is `PRINCIPALS`, then `policy_principals` is a required field. * If the `policy_type` is `PROCESSES`, then `policy_processes` is a required field. * If the `policy_type` is `NO_POLICY`, then `policy_principals` and `policy_processes` are not required fields. #### Parameterized Connection Support For 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. * @param createConnectionConfigurationRequest */ createConnectionConfiguration(createConnectionConfigurationRequest: CreateConnectionConfigurationRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Creates a new conversation session tied to a specific data model for AI-driven natural language querying. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `metadata_identifier`: the unique ID of the data source that provides context for the conversation Optionally, you can provide: - `tokens`: a token string to set initial context for the conversation (e.g., `\"[sales],[item type],[state]\"`) If the request is successful, ThoughtSpot returns a unique `conversation_identifier` that must be passed to `sendMessage` to continue the conversation. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createConversationRequest */ createConversation(createConversationRequest: CreateConversationRequest, _options?: Configuration): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Creates a custom action that appears as a menu action on a saved Answer or Liveboard visualization. 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. #### Usage Guidelines The API lets you create the following types of custom actions: * URL-based action Allows pushing data to an external URL. * Callback action Triggers a callback to the host application and initiates a response payload on an embedded ThoughtSpot instance. By default, custom actions are visible to only administrator or developer users. To make a custom action available to other users, and specify the groups in `group_identifiers`. By default, the custom action is set as a _global_ action on all visualizations and saved Answers. To assign a custom action to specific Liveboard visualization, saved Answer, or Worksheet, set `visibility` to `false` in `default_action_config` property and specify the GUID or name of the object in `associate_metadata`. For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param createCustomActionRequest */ createCustomAction(createCustomActionRequest: CreateCustomActionRequest, _options?: Configuration): Promise; /** * Version: 10.10.0.cl or later Creates a customization configuration for the notification email. #### 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 To create a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param createEmailCustomizationRequest */ createEmailCustomization(createEmailCustomizationRequest: CreateEmailCustomizationRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Creates an Org object. To use this API, the [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview) feature must be enabled in your cluster. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param createOrgRequest */ createOrg(createOrgRequest: CreateOrgRequest, _options?: Configuration): Promise; /** * Version: 9.5.0.cl or later Creates a Role object in ThoughtSpot. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To create a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param createRoleRequest */ createRole(createRoleRequest: CreateRoleRequest, _options?: Configuration): Promise; /** * Create schedule. Version: 9.4.0.cl or later Creates a Liveboard schedule job. Requires at least edit access to Liveboards. To create a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, creating a schedule also requires the download privilege that corresponds to the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines * The description text is mandatory. The description text appears as **Description: ** in the Liveboard schedule email notifications. * For Liveboards with both charts and tables, schedule creation is only supported in PDF and XLS formats. Schedules created in CSV formats for such Liveboards will fail to run. If `PDF` is set as the `file_format`, enable `pdf_options` to get the correct attachment. Not doing so may cause the attachment to be rendered empty. * To include only specific visualizations, specify the visualization GUIDs in the `visualization_identifiers` array. * You can schedule a Liveboard job to run periodically by setting frequency parameters. You can set the schedule to run daily, weekly, monthly or every n minutes or hours. The scheduled job can also be configured to run at a specific time of the day or on specific days of the week or month. Please ensure that when setting the schedule frequency for _minute of the object_, only values that are multiples of 5 are included. * If the `frequency` parameters are defined, you can set the time zone to a value that matches your server\'s time zone. For example, `US/Central`, `Etc/UTC`, `CET`. The default time zone is `America/Los_Angeles`. For more information about Liveboard jobs, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/liveboard-schedule). * @param createScheduleRequest */ createSchedule(createScheduleRequest: CreateScheduleRequest, _options?: Configuration): Promise; /** * Version: 26.9.0.cl or later Creates a new semantic integration in ThoughtSpot from a CDW semantic view. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About create semantic integration A semantic integration imports an externally defined semantic view from a Cloud Data Warehouse (CDW) into ThoughtSpot. The API resolves the source semantic view from the specified `connection_identifier`, `database_name`, `schema_name`, and `semantic_view_name`, generates a ThoughtSpot model from it, and returns the model GUID along with a per-formula import report (`semantic_report`) summarizing how many formulas were successfully imported, failed, or skipped. - `connection_identifier`, `name`, `database_name`, `schema_name`, `semantic_view_name`, and `type` are required. - `name` must be unique across the user\'s organization. The integration\'s display name is also used as the generated model name. - Supported `type` values are listed in the `SemanticIntegrationType` enum. - The response includes a `semantic_report.summary` with `total`, `imported`, `failed`, and `skipped` counts, and a `formulas` array with the per-formula translation details. > **Note:** Creating a semantic integration using a YAML file upload is not supported through the public API. * @param createSemanticIntegrationRequest */ createSemanticIntegration(createSemanticIntegrationRequest: CreateSemanticIntegrationRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Creates a tag object. Tags are labels that identify a metadata object. For example, you can create a tag to designate subject areas, such as sales, HR, marketing, and finance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param createTagRequest */ createTag(createTagRequest: CreateTagRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Creates a user in ThoughtSpot. The API endpoint allows you to configure several user properties such as email address, account status, share notification preferences, and sharing visibility. You can provision the user to [groups](https://docs.thoughtspot.com/cloud/latest/groups-privileges) and [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview). You can also add Liveboard, Answer, and Worksheet objects to the user’s favorites list, assign a default Liveboard for the user, and set user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param createUserRequest */ createUser(createUserRequest: CreateUserRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Creates a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### About groups Groups in ThoughtSpot are used by the administrators to define privileges and organize users based on their roles and access requirements. To know more about groups and privileges, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/groups-privileges). #### Supported operations The API endpoint lets you perform the following operations: * Assign privileges * Add users * Define sharing visibility * Add sub-groups * Assign a default Liveboard * @param createUserGroupRequest */ createUserGroup(createUserGroupRequest: CreateUserGroupRequest, _options?: Configuration): Promise; /** * Create a variable which can be used for parameterizing metadata objects Version: 26.4.0.cl or later Allows creating a variable which can be used for parameterizing metadata objects in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports the following types of variables: * CONNECTION_PROPERTY - For connection properties * TABLE_MAPPING - For table mappings * CONNECTION_PROPERTY_PER_PRINCIPAL - For connection properties per principal. In order to use this please contact support to enable this. * FORMULA_VARIABLE - For Formula variables, introduced in 10.15.0.cl When creating a variable, you need to specify: * The variable type * A unique name for the variable * Whether the variable contains sensitive values (defaults to false) * The data type of the variable, only specify for formula variables (defaults to null) The operation will fail if: * The user lacks required permissions * The variable name already exists * The variable type is invalid * @param createVariableRequest */ createVariable(createVariableRequest: CreateVariableRequest, _options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Creates a new webhook configuration to receive notifications for specified events. The webhook will be triggered when the configured events occur in the system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param createWebhookConfigurationRequest */ createWebhookConfiguration(createWebhookConfigurationRequest: CreateWebhookConfigurationRequest, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Creates a DBT connection object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About create DBT connection DBT connection in ThoughtSpot is used by the user to define DBT credentials for cloud . The API needs embrace connection, embrace database name, DBT url, import type, DBT account identifier, DBT project identifier, DBT access token and environment details (or) embrace connection, embrace database name, import type, file_content to create a connection object. To know more about DBT, see ThoughtSpot Product Documentation. * @param connectionName Name of the connection. * @param databaseName Name of the Database. * @param importType Mention type of Import * @param accessToken Access token is mandatory when Import_Type is DBT_CLOUD. * @param dbtUrl DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param accountId Account ID is mandatory when Import_Type is DBT_CLOUD * @param projectId Project ID is mandatory when Import_Type is DBT_CLOUD * @param dbtEnvId DBT Environment ID\\\" * @param projectName Name of the project * @param fileContent Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ dbtConnection(connectionName: string, databaseName: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Resynchronize the existing list of models, tables, worksheet tml’s and import them to Thoughtspot based on the DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param fileContent Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param includeSemanticReport If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateSyncTml(dbtConnectionIdentifier: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Generate required table and worksheet and import them. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About generate TML Models and Worksheets to be imported can be selected by the user as part of the API. * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param modelTables List of Models and their respective Tables Example: \\\'[{\\\"model_name\\\": \\\"model_name\\\", \\\"model_path\\\": \\\"model_path\\\", \\\"tables\\\": [\\\"table_name\\\"]}]\\\' * @param importWorksheets Mention the worksheet tmls to import * @param worksheets List of worksheets is mandatory when import_Worksheets is type SELECTED Example: [\\\"worksheet_name\\\"] * @param fileContent Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param includeSemanticReport If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateTml(dbtConnectionIdentifier: string, modelTables: string, importWorksheets: string, worksheets?: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Gets a list of DBT connection objects by user and organization, available on the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About search DBT connection To get details of a specific DBT connection identifier, database connection identifier, database connection name, database name, project name, project identifier, environment identifier , import type and author. */ dbtSearch(_options?: Configuration): Promise; /** * Version: 9.7.0.cl or later Deactivates a user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To deactivate a user account, the API request body must include the following information: - Username or the GUID of the user account - Base URL of the ThoughtSpot instance If the API request is successful, ThoughtSpot returns the activation URL in the response. The activation URL is valid for 14 days and can be used to re-activate the account and reset the password of the deactivated account. * @param deactivateUserRequest */ deactivateUser(deactivateUserRequest: DeactivateUserRequest, _options?: Configuration): Promise; /** * Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. The request has no body; the response contains the `id` of the deleted analyst. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot delete it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request has no body — the analyst to delete is identified by the `analyst_identifier` path parameter, as returned by the create analyst API. A successful request returns the `id` of the deleted analyst. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to delete. */ deleteAnalyst(analystIdentifier: string, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Deletes a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines To delete a custom calendar, specify the calendar ID as a path parameter in the request URL. * @param calendarIdentifier Unique ID or name of the Calendar. */ deleteCalendar(calendarIdentifier: string, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Deletes one or more collections from ThoughtSpot. #### Delete options * **delete_children**: When set to `true`, deletes the child objects (metadata items) within the collection that the user has access to. Objects that the user does not have permission to delete will be skipped. * **dry_run**: When set to `true`, performs a preview of the deletion operation without actually deleting anything. The response shows what would be deleted, allowing you to review before committing the deletion. #### Response The response includes: * **metadata_deleted**: List of metadata objects that were successfully deleted * **metadata_skipped**: List of metadata objects that were skipped due to lack of permissions or other constraints * @param deleteCollectionRequest */ deleteCollection(deleteCollectionRequest: DeleteCollectionRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Deletes Git repository configuration from your ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param deleteConfigRequest */ deleteConfig(deleteConfigRequest: DeleteConfigRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Delete Connection V2](#/http/api-endpoints/connections/delete-connection-v2) endpoint to delete your connection objects. #### Usage guidelines Deletes a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. * @param deleteConnectionRequest */ deleteConnection(deleteConnectionRequest: DeleteConnectionRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Deletes connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param deleteConnectionConfigurationRequest */ deleteConnectionConfiguration(deleteConnectionConfigurationRequest: DeleteConnectionConfigurationRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Deletes a connection object. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param connectionIdentifier Unique ID or name of the connection. */ deleteConnectionV2(connectionIdentifier: string, _options?: Configuration): Promise; /** * Deletes an existing agent conversation. Version: 26.7.0.cl or later Permanently deletes an existing saved agent conversation and all its associated messages. This operation is irreversible — deleted conversations cannot be recovered. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being deleted. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to delete, as returned by `createAgentConversation` or `getConversationList` A successful request returns an empty `204 No Content` response. The deleted conversation no longer appears in `getConversationList`. #### Example request ```bash DELETE /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/delete ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | > ###### Note: > > - Deletion is permanent and cannot be undone. Ensure the correct `conversation_identifier` is used before calling this endpoint. > - Only conversations created with `enable_save_chat: true` are persisted and can be deleted via this endpoint. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to delete. */ deleteConversation(conversationIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Removes the custom action specified in the API request. 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. * @param customActionIdentifier Unique ID or name of the custom action. */ deleteCustomAction(customActionIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Removes the specified DBT connection object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT Connection. */ deleteDbtConnection(dbtConnectionIdentifier: string, _options?: Configuration): Promise; /** * @deprecated * * Version: 10.10.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 `template_identifier` from the response. - Use that `template_identifier` as a parameter in this API request. * @param templateIdentifier Unique ID or name of the email customization. */ deleteEmailCustomization(templateIdentifier: string, _options?: Configuration): Promise; /** * Delete manual translations. Version: 26.7.0.cl or later Deletes all manual translations for the org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - This deletes **all** translation entries for the targeted org. The operation cannot be undone. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to delete translations uploaded in the All-Org context. * @param deleteManualTranslationsRequest */ deleteManualTranslations(deleteManualTranslationsRequest: DeleteManualTranslationsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Removes the specified metadata object from the ThoughtSpot system. Requires edit access to the metadata object. * @param deleteMetadataRequest */ deleteMetadata(deleteMetadataRequest: DeleteMetadataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Deletes an Org object from the ThoughtSpot system. Requires cluster administration (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. When you delete an Org, all its users and objects created in that Org context are removed. However, if the users in the deleted Org also exists in other Orgs, they are removed only from the deleted Org. * @param orgIdentifier ID or name of the Org */ deleteOrg(orgIdentifier: string, _options?: Configuration): Promise; /** * 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. * @param deleteOrgEmailCustomizationRequest */ deleteOrgEmailCustomization(deleteOrgEmailCustomizationRequest: DeleteOrgEmailCustomizationRequest, _options?: Configuration): Promise; /** * Version: 9.5.0.cl or later Deletes a Role object from the ThoughtSpot system. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To delete a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. ReadOnly roles cannot be deleted. */ deleteRole(roleIdentifier: string, _options?: Configuration): Promise; /** * Deletes a scheduled job. Version: 9.4.0.cl or later Deletes a scheduled Liveboard job. Requires at least edit access to Liveboard or `ADMINISTRATION` (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. * @param scheduleIdentifier Unique ID or name of the scheduled job. */ deleteSchedule(scheduleIdentifier: string, _options?: Configuration): Promise; /** * Version: 26.9.0.cl or later Deletes a semantic integration and its associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About delete semantic integration Removes the specified semantic integration and its generated ThoughtSpot model from the system. - `semantic_integration_identifier` is the GUID or name of the integration to delete. - Deletions cannot be undone. Re-import the integration with `createSemanticIntegration` if needed. * @param semanticIntegrationIdentifier ID or name of the semantic integration to delete. */ deleteSemanticIntegration(semanticIntegrationIdentifier: string, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Deletes one or more custom fonts from the cluster-level or org-level font library. If a deleted font is assigned to visualization areas, those assignments automatically fallback to the cluster/system default font. The response lists all affected areas where the font was explicitly set. Note: dry_run defaults to true. To actually delete fonts, you must explicitly pass dry_run: false. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Provide one or more font UUIDs or names in `font_identifiers`. - Set `scope` to `CLUSTER` to delete from the cluster-level library. Set `scope` to `ORG` (default) to delete from the authenticated user\'s org library. - Use `dry_run: true` to preview which visualization areas would be affected without actually deleting the font. The response lists affected assignments; no changes are applied. - Deletions cannot be undone. Re-upload the font file using `uploadStyleFont` if needed. * @param deleteStyleFontsRequest */ deleteStyleFonts(deleteStyleFontsRequest: DeleteStyleFontsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Deletes a tag object from the ThoughtSpot system Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Tag identifier Tag name or Tag id. */ deleteTag(tagIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Deletes a user from the ThoughtSpot system. If you want to remove a user from a specific Org but not from ThoughtSpot, update the group and Org mapping properties of the user object via a POST API call to the [/api/rest/2.0/users/{user_identifier}/update](#/http/api-endpoints/users/update-user) endpoint. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user */ deleteUser(userIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Removes the specified group object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. * @param groupIdentifier GUID or name of the group. */ deleteUserGroup(groupIdentifier: string, _options?: Configuration): Promise; /** * @deprecated * * Delete a variable Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/delete](/api/rest/2.0/template/variables/delete) instead. Allows deleting a variable from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifier (ID or name) The operation will fail if: * The user lacks required permissions * The variable doesn\'t exist * The variable is being used by other objects * @param identifier Unique id, name, or object id of the variable */ deleteVariable(identifier: string, _options?: Configuration): Promise; /** * Delete variable(s) Version: 26.4.0.cl or later Allows deleting multiple variables from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifiers (IDs or names) The operation will fail if: * The user lacks required permissions * Any of the variables don\'t exist * Any of the variables are being used by other objects * @param deleteVariablesRequest */ deleteVariables(deleteVariablesRequest: DeleteVariablesRequest, _options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Deletes one or more webhook configurations by their unique id or name. Returns status of each deletion operation, including successfully deleted webhooks and any failures with error details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param deleteWebhookConfigurationsRequest */ deleteWebhookConfigurations(deleteWebhookConfigurationsRequest: DeleteWebhookConfigurationsRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Allows you to deploy a commit and publish TML content to your ThoughtSpot instance. Requires at least edit access to the objects used in the deploy operation. The API deploys the head of the branch unless a `commit_id` is specified in the API request. If the branch name is not defined in the request, the default branch is considered for deploying commits. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param deployCommitRequest */ deployCommit(deployCommitRequest: DeployCommitRequest, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Exports the difference in connection metadata between CDW and ThoughtSpot Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) To download the connection metadata difference between ThoughtSpot and CDW, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ downloadConnectionMetadataChanges(connectionIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Exports an Answer in the given file format. You can download the Answer data as a PDF, PNG, CSV, or XLSX file. Requires at least view access to the Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV`, `XLSX`, and `PDF` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. For an Answer, the `PDF` export is a table PDF, which is why it falls under `CAN_DOWNLOAD_DETAILED_DATA` rather than `CAN_DOWNLOAD_VISUALS`. #### Usage guidelines In the request body, specify the GUID or name of the Answer and set `file_format`. The default file format is CSV. Use the `type` parameter to specify whether the Answer being exported is a saved Answer (`SAVED`) or a pinned Answer on a Liveboard (`PINNED`). Defaults to `SAVED`. When using `PINNED`, the `metadata_identifier` must be the container id. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * HTML rendering is not supported for PDF exports of Answers with tables. Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * @param exportAnswerReportRequest */ exportAnswerReport(exportAnswerReportRequest: ExportAnswerReportRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Exports a Liveboard and its visualizations in PDF, PNG, CSV, or XLSX file format. The default `file_format` is CSV. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` and `PDF` require the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To generate a Liveboard report with specific visualizations, add GUIDs or names of the visualizations. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes, including ad hoc changes to visualizations. For more information, see [Liveboard Report API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_liveboard_report_api). * Starting with ThoughtSpot Cloud 10.9.0.cl release, the Liveboard can be exported in the PNG format in the resolution of your choice. To enable this on your instance, contact ThoughtSpot support. When this feature is enabled, the options `include_cover_page`,`include_filter_page` within the `png_options` will not be available for PNG exports. * Starting with the ThoughtSpot Cloud 26.2.0.cl release, * Liveboards can be exported in CSV format. * All visualizations within a Liveboard can be exported as individual CSV files. * When exporting multiple visualizations or the entire Liveboard, the system returns the report as a compressed ZIP file containing the separate CSV files for each visualization. * Liveboards can also be exported in XLSX format. * All selected visualizations are consolidated into a single Excel workbook (.xlsx), with each visualization placed in its own worksheet (tab). * XLSX exports are limited to a maximum of 255 worksheets (tabs) per workbook. * @param exportLiveboardReportRequest */ exportLiveboardReport(exportLiveboardReportRequest: ExportLiveboardReportRequest, _options?: Configuration): Promise; /** * Export manual translations as a CSV file. Version: 26.7.0.cl or later Downloads all manual translations for the org as a CSV file. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The response is a CSV file with columns: `content`, `locale`, `translated-content`. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to export translations from the All-Org context. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. - Returns a `400` error if no translations exist for the targeted org or cluster scope. * @param exportManualTranslationsRequest */ exportManualTranslations(exportManualTranslationsRequest: ExportManualTranslationsRequest, _options?: Configuration): Promise; /** * Exports memory entries (rules, recipes, and always-apply rules) for the specified data-models as a single YAML payload. The payload can be edited locally and re-submitted through `importMemory`. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to export data-model memories for a given list of data-models. This exported yaml file can then be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To export memory for one or more data-models, the request may include: - `sources`: A list of typed scope groups identifying which data-models to export memory for. Each group contains: - `type`: The source object type for this group — `DATA_MODEL`. - `identifiers`: An array of GUIDs or human-readable `obj_id`s of the data-models to export memory for. obj_ids are resolved server-side before forwarding. The API returns a response object with: - `content`: The serialized memory payload (YAML) — exactly the shape that the `importMemory` API consumes. Edit it locally and pass it back through `importMemory` to apply changes. #### Source Type - **DATA_MODEL**: The `identifiers` are data-model GUIDs. This is the default source type for Spotter memory and covers the rules, recipes and always-apply rules attached directly to a data-model. #### File format The exported `content` is a YAML document with a single top-level `memories` key holding a list of memory items — exactly the format the `importMemory` API consumes. The full format reference (an annotated example, memory item fields, per-type content, and `datamodel_sources` identification) is documented in the `importMemory` API\'s **File format** section. Exported files populate each source\'s `guid` and, if present, `obj_id` as well. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have necessary permissions, or lacks read access on a referenced data-model, or the bearer token does not correspond to the data-model\'s org. | > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param exportMemoryRequest */ exportMemory(exportMemoryRequest: ExportMemoryRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. Requires `DATADOWNLOADING` (**Can download Data**) and at least view access to the metadata object. #### Usage guidelines * You can export one or several objects by passing metadata object GUIDs in the `metadata` array. * When exporting TML content for a Liveboard or Answer object, you can set `export_associated` to `true` to retrieve TML content for underlying Worksheets, Tables, or Views, including the GUID of each object within the headers. When `export_associated` is set to `true`, consider retrieving one metadata object at a time. * Set `export_fqns` to `true` to add FQNs of the referenced objects in the TML content. For example, if you send an API request to retrieve TML for a Liveboard and its associated objects, the API returns the TML content with FQNs of the referenced Worksheet. Exporting TML with FQNs is useful if ThoughtSpot has multiple objects with the same name and you want to eliminate ambiguity when importing TML files into ThoughtSpot. It eliminates the need for adding FQNs of the referenced objects manually during the import operation. * To export only the TML of feedbacks associated with an object, set the GUID of the object as `identifier`, and set the `type` as `FEEDBACK` in the `metadata` array. * To export the TML of an object along with the feedbacks associated with it, set the GUID of the object as `identifier`, set the `type` as `LOGIAL_TABLE` in the `metadata` array, and set `export_with_associated_feedbacks` in `export_options` to true. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_export_a_tml). For more information on feedbacks, see [Feedback Documentation](https://docs.thoughtspot.com/cloud/latest/sage-feedback). * @param exportMetadataTMLRequest */ exportMetadataTML(exportMetadataTMLRequest: ExportMetadataTMLRequest, _options?: Configuration): Promise; /** * Version: 10.1.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. ### **Permissions Required** Requires `DATAMANAGEMENT` (**Can manage data**) and `USERMANAGEMENT` (**Can manage users**) privileges. #### **Usage Guidelines** This API is only applicable for `USER`, `GROUP`, and `ROLES` metadata types. - `batch_offset` Indicates the starting position within the complete dataset from which the API should begin returning objects. Useful for paginating results efficiently. - `batch_size` Specifies the number of objects or items to retrieve in a single request. Helps control response size for better performance. - `edoc_format` Defines the format of the TML content. The exported metadata can be in JSON or YAML format. - `export_dependent` Specifies whether to include dependent metadata objects in the export. Ensures related objects are also retrieved if needed. - `all_orgs_override` Indicates whether the export operation applies across all organizations. Useful for multi-tenant environments where cross-org exports are required. * @param exportMetadataTMLBatchedRequest */ exportMetadataTMLBatched(exportMetadataTMLBatchedRequest: ExportMetadataTMLBatchedRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Downloads the active logos (default and wide slots) at the requested scope as a single ZIP archive containing both logo image files. If no custom logo has been uploaded at the ORG scope, the archive contains the resolved logo falling through from the cluster. If no cluster logo has been uploaded, no file is returned. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to download cluster-level logos. - Set `scope` to `ORG` (default) to download logos for the authenticated user\'s org. - The response is a ZIP archive (`application/zip`). Save the response body directly to a `.zip` file. - The archive always contains two files — one for the DEFAULT slot and one for the WIDE slot — even if no custom logo is set at the requested scope. * @param exportStyleLogosRequest * @param accept */ exportStyleLogos(exportStyleLogosRequest: ExportStyleLogosRequest, accept?: 'application/zip', _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches data from a saved Answer. Requires at least view access to the saved Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_apis). * @param fetchAnswerDataRequest */ fetchAnswerData(fetchAnswerDataRequest: FetchAnswerDataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for an Answer object. Requires at least view access to the Answer object. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales\", \"metadata_type\":\"ANSWER\", \"sql_queries\":[ { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales -test\", \"sql_query\":\"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n \\\"ta_2\\\".\\\"PRODUCTNAME\\\" \\\"ca_2\\\", \\n \\\"ta_1\\\".\\\"STORENAME\\\" \\\"ca_3\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_4\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_5\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_3\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_3\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_PRODUCTS\\\" \\\"ta_2\\\"\\n ON \\\"ta_3\\\".\\\"PRODUCTID\\\" = \\\"ta_2\\\".\\\"PRODUCTID\\\"\\nGROUP BY \\n \\\"ca_1\\\", \\n \\\"ca_2\\\", \\n \\\"ca_3\\\"\\n\" } ] } ``` * @param fetchAnswerSqlQueryRequest */ fetchAnswerSqlQuery(fetchAnswerSqlQueryRequest: FetchAnswerSqlQueryRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Gets information about the status of the TML async import task scheduled using the `/api/rest/2.0/metadata/tml/async/import` API call. To fetch the task details, specify the ID of the TML async import task. Requires access to the task ID. The API allows users who initiated the asynchronous TML import via `/api/rest/2.0/metadata/tml/async/import` to view the status of their tasks. Users with administration privilege can view the status of all import tasks initiated by the users in their Org. #### Usage guidelines See [TML API Documentation](https://developers.thoughtspot.com/docs/tml#_fetch_status_of_the_tml_import_task) for usage guidelines. * @param fetchAsyncImportTaskStatusRequest */ fetchAsyncImportTaskStatus(fetchAsyncImportTaskStatusRequest: FetchAsyncImportTaskStatusRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Fetches column security rules for specified tables. This 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. #### Usage guidelines - Provide an array of table identifiers using either `identifier` (GUID or name) or `obj_identifier` (object ID) - At least one of `identifier` or `obj_identifier` must be provided for each table - The API returns column security rules for all specified tables - Users must have appropriate permissions to access security rules for the specified tables #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables #### Example request ```json { \"tables\": [ { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\" } ] } ``` #### Response format The API returns an array of `ColumnSecurityRuleResponse` objects wrapped in a `data` field. Each `ColumnSecurityRuleResponse` object contains: - Table information (GUID and object ID) - Array of column security rules with column details, group access, and source table information #### Example response ```json { \"data\": [ { \"guid\": \"table-guid\", \"objId\": \"table-object-id\", \"columnSecurityRules\": [ { \"column\": { \"id\": \"col_123\", \"name\": \"Salary\" }, \"groups\": [ { \"id\": \"group_1\", \"name\": \"HR Department\" } ], \"sourceTableDetails\": { \"id\": \"source-table-guid\", \"name\": \"Employee_Data\" } } ] } ] } ``` * @param fetchColumnSecurityRulesRequest */ fetchColumnSecurityRules(fetchColumnSecurityRulesRequest: FetchColumnSecurityRulesRequest, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Validates the difference in connection metadata between CDW and ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) Returns a boolean indicating whether there is any difference between the connection metadata at ThoughtSpot and CDW. To get the connection metadata difference status, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ fetchConnectionDiffStatus(connectionIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets data from a Liveboard object and its visualization. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To get data for specific visualizations, add the GUIDs or names of the visualizations in the API request. To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes. If the new Liveboard experience mode, the transient content includes ad hoc changes to visualizations such as sorting, toggling of legends, and data drill down. For more information, and see [Liveboard data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_fetch_liveboard_data_api). * @param fetchLiveboardDataRequest */ fetchLiveboardData(fetchLiveboardDataRequest: FetchLiveboardDataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for a Liveboard object and its visualizations. Requires at least view access to the Liveboard object. To get SQL query data for a Liveboard, specify the GUID of the Liveboard. Optionally, you can add an array of visualization GUIDs to retrieve the SQL query data for visualizations in the Liveboard. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\": \"fa68ae91-7588-4136-bacd-d71fb12dda69\", \"metadata_name\": \"Total Sales\", \"metadata_type\": \"LIVEBOARD\", \"sql_queries\": [ { \"metadata_id\": \"b3b6d2b9-089a-490c-8e16-b144650b7843\", \"metadata_name\": \"Total quantity purchased, Total sales by region\", \"sql_query\": \"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_2\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_3\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_2\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_2\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\nGROUP BY \\\"ca_1\\\"\" } ] } ``` * @param fetchLiveboardSqlQueryRequest */ fetchLiveboardSqlQuery(fetchLiveboardSqlQueryRequest: FetchLiveboardSqlQueryRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches security audit logs. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the [Admin Control](https://developers.thoughtspot.com/docs/rbac#_admin_control) privileges are required. #### Usage guidelines By default, the API retrieves logs for the last 24 hours. You can set a custom duration in EPOCH time. Make sure the log duration specified in your API request doesn’t exceed 24 hours. If you must fetch logs for a longer time range, modify the duration and make multiple sequential API requests. Upon successful execution, the API returns logs with the following information: * timestamp of the event * event ID * event type * name and GUID of the user * IP address of ThoughtSpot instance For more information see [Audit logs Documentation](https://developers.thoughtspot.com/docs/audit-logs). * @param fetchLogsRequest */ fetchLogs(fetchLogsRequest: FetchLogsRequest, _options?: Configuration): Promise; /** * Version: 26.3.0.cl or later This API fetches the object privileges present for the given list of principals (user or group), on the given set of objects. It supports pagination, which can be enabled and configured using the request parameters. It provides users access to certain features based on privilege based access control. #### Usage guidelines - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals for which you want to retrieve object privilege information in the `principals` array. - Specify the `type` (`LOGICAL_TABLE`) and `identifier` (either GUID or name) of the metadata objects for which you want to retrieve object privilege information in the `metadata` array. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - To control the offset from where principals have to be fetched, use `record_offset`. When `record_offset` is 0, information is fetched from the beginning. - To control the number of principals to be fetched, use `record_size`. Default `record_size` is 20. - Ensure `record_offset` for a subsequent request is one more than the value of `record_size` of the previous request. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ], \"metadata\": [ { \"type\": \"metadata-type-1\", \"identifier\": \"metadata-guid-or-name-1\" }, { \"type\": \"metadata-type-2\", \"identifier\": \"metadata-guid-or-name-2\" } ], \"record_offset\": 0, \"record_size\": 20 } ``` #### Response format The API returns an array of `metadata_object_privileges` objects wrapped in JSON. Each `metadata_object_privileges` object contains: - Metadata information (GUID, name and type) - Array of `principal_object_privilege_info`. - Each `principal_object_privilege_info` contains: - Principal type. All principals of this type are listed as described below. - Array of `principal_object_privileges`. - Each `principal_object_privileges` contains: - Principal information (GUID, name, subtype) - List of applied object level privileges. #### Example response ```json { \"metadata_object_privileges\": [ { \"metadata_id\": \"metadata-guid-1\", \"metadata_name\": \"metadata-name-1\", \"metadata_type\": \"metadata-type-1\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" } ] }, { \"principal_type\": \"principal-type-2\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-3\", \"principal_name\": \"principal-guid-4\", \"principal_sub_type\": \"principal-sub-type-4\", \"object_privileges\": \"[object-privilege-1]\" } ] } ] }, { \"metadata_id\": \"metadata-guid-2\", \"metadata_name\": \"metadata-name-2\", \"metadata_type\": \"metadata-type-2\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-3, object-privilege-4]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-4]\" } ] } ] } ] } ``` * @param fetchObjectPrivilegesRequest */ fetchObjectPrivileges(fetchObjectPrivilegesRequest: FetchObjectPrivilegesRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches object permission details for a given principal object such as a user and group. Requires view access to the metadata object. #### Usage guidelines * To get a list of all metadata objects that a user or group can access, specify the `type` and GUID or name of the principal. * To get permission details for a specific object, add the `type` and GUID or name of the metadata object to your API request. Upon successful execution, the API returns a list of metadata objects and permission details for each object. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOfPrincipalsRequest */ fetchPermissionsOfPrincipals(fetchPermissionsOfPrincipalsRequest: FetchPermissionsOfPrincipalsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Fetches permission details for a given metadata object. Requires view access to the metadata object. #### Usage guidelines * To fetch a list of users and groups for a metadata object, specify `type` and GUID or name of the metadata object. * To get permission details for a specific user or group, add `type` and GUID or name of the principal object to your API request. Upon successful execution, the API returns permission details and principal information for the object specified in the API request. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOnMetadataRequest */ fetchPermissionsOnMetadata(fetchPermissionsOnMetadataRequest: FetchPermissionsOnMetadataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Enforces logout on current user sessions. Use this API with caution as it may invalidate active user sessions and force users to re-login. Make sure you specify the usernames or GUIDs. If you pass null values in the API call, all user sessions on your cluster become invalid, and the users are forced to re-login. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param forceLogoutUsersRequest */ forceLogoutUsers(forceLogoutUsersRequest: ForceLogoutUsersRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Exports a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal) in the CSV format. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines Use this API to download a custom calendar in the CSV file format. In your API request, specify the following parameters. * Start and end date of the calendar. For \"month offset\" calendars, the start date must match the month defined in the `month_offset` attribute. You can also specify optional parameters such as the starting day of the week and prefixes for the quarter and year labels. * @param generateCSVRequest */ generateCSV(generateCSVRequest: GenerateCSVRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Retrieves the admin instructions currently configured for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. Requires admin privileges. Only users with org admin access can retrieve agent instructions. #### Usage guidelines No input parameters are required. The API returns the stored `AgentInstructions` record for the caller\'s tenant and org. If no instructions have been configured yet, the API returns a record with an empty `instructions` field and `null` values for `id`, `created_at`, `updated_at`, and `last_updated_by`. If the request is successful, the response includes: - `id`: unique identifier of the instructions record - `instructions`: the configured instructions text - `created_at`: ISO timestamp when the instructions were first saved - `updated_at`: ISO timestamp when the instructions were last updated - `last_updated_by`: user ID of the admin who last updated the instructions (may be `null` for older records) #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to read agent instructions. | > ###### Note: > > - Use `setAgentInstructions` to create or update agent instructions. > - Available from version 26.6.0.cl and later. */ getAgentInstructions(_options?: Configuration): Promise; /** * Retrieves the full public-safe content of a saved agent conversation: ordered turns (user messages and agent response items) and sanitized code-execution file metadata. Internal graph or branch state, Azure file identifiers, and messages with a `SYSTEM` source are omitted. The full answer payload is not embedded; fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Retrieves the full public-safe content of a saved agent conversation. Returns ordered conversation messages — each carrying an optional user prompt (the user\'s message and any attachments) and the agent response items produced for that turn — plus sanitized metadata for any files generated by the code-execution tool. Use this endpoint to render a persisted conversation in a UI, build an audit trail, or post-process a completed conversation. The full answer payload is not embedded — fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` _(path parameter)_: the unique ID of the conversation, as returned by `createAgentConversation` or `getConversationList`. If the request is successful, the response contains two top-level fields: | Field | Type | Description | | ---------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | | `messages` | `ConversationMessage[]` | Ordered oldest to newest. Empty array when the conversation has no messages. | | `code_execution_files` | `CodeExecutionFileMetadata[]` | List of sanitized file metadata entries (one per `file_id`). Covers all code-execution-generated files referenced anywhere in the conversation. Empty array when there are none. | No other top-level fields are returned. #### ConversationMessage fields | Field | Type | Description | | --------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------- | | `message_id` | `String` | Stable identifier for the turn. For liveboard-started synthetic first turns, this is the root node identifier. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch for the turn. | | `user_prompt` | `UserPrompt` | User-authored prompt that started the turn (message and attachments). `null` for liveboard-started synthetic first turns. | | `response_items` | `ConversationResponseItem[]` | Agent-side output produced in response to this turn. Empty array for in-progress turns. | #### UserPrompt fields | Field | Type | Description | | ------------- | ---------------------- | ---------------------------------------------------------------------------------------------------- | | `message` | `UserMessage` | User query that started the turn. `null` for liveboard-started synthetic first turns. | | `attachments` | `UserAttachmentItem[]` | Files or connector resources attached to the user message. Empty array when there are no attachments. | #### UserMessage fields | Field | Type | Description | | ------------ | -------- | --------------------------------------------- | | `message_id` | `String` | Unique identifier of the user-source message. | | `content` | `String` | Text body of the user query. | #### UserAttachmentItem fields Discriminated by `type`. Only `\"file\"` or `\"resource\"` are valid values. Only the fields for the indicated variant are populated. See `ConversationResponseItem` below for the field definitions of the `file` and `resource` variants — `UserAttachmentItem` uses the same fields. #### ConversationResponseItem fields Every item carries a `type` discriminator and these shared fields: | Field | Type | Description | | --------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ | | `type` | `String` | Discriminator. One of `\"text\"`, `\"tool_call\"`, `\"tool_result\"`, `\"answer\"`, `\"file\"`, `\"resource\"`, `\"search_datasets\"`. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch when this item was produced. | | `is_thinking` | `Boolean` | `true` when the item represents internal agent reasoning rather than user-facing output. Consumers may hide or collapse these. | | `step_title` | `String` | Human-readable label for the agent step producing this item (e.g. `\"Searching\"`, `\"Visualising\"`). | Variant-specific fields: - **`text`** — agent text output: `content` (String), `content_type` (`ContentMimeType` enum), `file_reference` (FileReference). - **`tool_call`** — agent invoked a tool: `tool_call_id` (String), `tool_name` (String), `arguments` (JSON object). - **`tool_result`** — result returned from a tool invocation: `tool_call_id`, `tool_name`, `content`, `content_type` (`ContentMimeType` enum), `success` (Boolean). - **`answer`** — slim reference to a saved answer: `answer_id` (String), `tool_call_id`, `tool_name`. - **`file`** — uploaded or generated files: `files` (`PublicFileInfo[]`). - **`resource`** — MCP connector resource: `title`, `uri`, `name`, `mime_type`, `description`, `size` (Int), `connector_id`, `connector_name`, `connector_slug`, `transport_type` (`TransportType` enum). - **`search_datasets`** — dataset discovery result: `text` (String), `data_sources` (`DataSourceInfo[]`). Clients should switch on `type` and ignore unknown variants for forward-compatibility. #### content_type values `content_type` is the `ContentMimeType` enum. The following values are defined: | Value | Wire MIME | Meaning | | --------------------------- | --------------------------- | ---------------------------------------------------- | | `TEXT_PLAIN` | `text/plain` | Plain text. Default for `tool_result`. | | `TEXT_MARKDOWN` | `text/markdown` | Markdown. Default for `text`. | | `TEXT_X_MARKDOWN_WITH_CODE` | `text/x-markdown-with-code` | Markdown whose body starts with a fenced code block. | | `TEXT_HTML` | `text/html` | Raw HTML. | #### transport_type values `transport_type` is the `TransportType` enum used on the `resource` variant. | Value | Meaning | | ------------------ | --------------------------------------------- | | `STREAMABLE_HTTP` | Streamable HTTP transport (default for MCP). | | `SSE` | Server-sent events transport. | #### FileReference fields | Field | Type | Description | | ------------------------ | -------- | ------------------------------------------------------------ | | `file_id` | `String` | Unique identifier of the code-execution-generated file. | | `display_name` | `String` | Human-readable file name. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | Cross-reference `file_id` against `code_execution_files` to retrieve full metadata including the `expired` flag before attempting a download. #### PublicFileInfo fields | Field | Type | Description | | ------------------------ | -------- | -------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `size_bytes` | `Int` | File size in bytes. | #### CodeExecutionFileMetadata fields Each entry in the `code_execution_files` array contains: | Field | Type | Description | | ------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `expired` | `Boolean` | When `true`, the underlying file is no longer retrievable from code-execution storage; UIs should disable download and preview. | #### Loading answer payloads Each `AnswerResponseItem` in the response contains an `answer_id` field. Pass this value as the `answer_identifier` parameter to `loadAnswer` to retrieve the full answer payload (TML tokens, visualization metadata) for that item. #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/messages ``` #### Example response ```json { \"messages\": [ { \"message_id\": \"node_u_01\", \"timestamp_in_millis\": 1744000000000, \"user_prompt\": { \"message\": { \"message_id\": \"msg_u_01\", \"content\": \"Show me revenue by region as a chart.\" }, \"attachments\": [] }, \"response_items\": [ { \"type\": \"tool_call\", \"tool_call_id\": \"toolu_01ABC\", \"tool_name\": \"search_datasets\", \"step_title\": \"Searching datasets\", \"arguments\": { \"query\": \"revenue\" }, \"timestamp_in_millis\": 1744000001000, \"is_thinking\": false }, { \"type\": \"answer\", \"answer_id\": \"ans_01XYZ\", \"tool_call_id\": \"toolu_02DEF\", \"tool_name\": \"fetch_and_visualize\", \"step_title\": \"Visualising\", \"timestamp_in_millis\": 1744000004000, \"is_thinking\": false }, { \"type\": \"text\", \"content\": \"Revenue is highest in APAC.\", \"content_type\": \"TEXT_MARKDOWN\", \"timestamp_in_millis\": 1744000005000, \"is_thinking\": false, \"step_title\": null, \"file_reference\": { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"created_time_in_millis\": 1744027200000 } } ] } ], \"code_execution_files\": [ { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"file_type\": \"csv\", \"created_time_in_millis\": 1744027200000, \"expired\": false } ] } ``` #### Example: liveboard-started conversation When a conversation is initiated from a saved liveboard visualization rather than a user query, the first turn is synthetic. `user_prompt` is `null`, and `response_items` contains a single `answer` item referencing the seed visualization. ```json { \"messages\": [ { \"message_id\": \"ROOT_NODE\", \"timestamp_in_millis\": 1743999000000, \"user_prompt\": null, \"response_items\": [ { \"type\": \"answer\", \"answer_id\": \"lb_seed_01\", \"tool_call_id\": null, \"tool_name\": null, \"step_title\": null, \"timestamp_in_millis\": 1743999000000, \"is_thinking\": false } ] } ], \"code_execution_files\": [] } ``` Subsequent turns follow the normal user-to-agent pattern. #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation exists with the given identifier for the authenticated user. | > ###### Note: > > - Messages with an internal `SYSTEM` source are always dropped from the response. > - In-progress turns are still returned with an empty `response_items` array so clients can render the user message immediately. > - Do not assume every `tool_call` has a paired `tool_result` or `answer` — an interrupted conversation can leave a dangling call. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to load. */ getConversation(conversationIdentifier: string, _options?: Configuration): Promise; /** * Retrieves the list of saved agent conversations for the currently authenticated user. Only conversations created with `enable_save_chat: true` are returned. Version: 26.7.0.cl or later Retrieves a paginated list of saved agent conversations for the currently authenticated user. Only conversations that were created with `enable_save_chat: true` in `createAgentConversation` are returned. Requires `CAN_USE_SPOTTER` privilege. #### Usage guidelines The request supports the following optional query parameters: - `limit`: maximum number of conversations to return. Use this together with `offset` for pagination. - `offset`: number of conversations to skip before returning results. Defaults to `0`. - `skip_empty`: when `true` (default), conversations with no messages are excluded from the results. Set to `false` to include empty conversations. If the request is successful, the response includes a `conversations` array. Each entry contains: - `conversation_identifier`: the unique ID of the conversation, used as input to `sendAgentConversationMessage`, `updateConversation`, `deleteConversation`, `stopConversation`, and `loadAnswer` - `conversation_title`: the display name of the conversation - `created_at`: ISO 8601 timestamp of when the conversation was created - `updated_at`: ISO 8601 timestamp of the most recent update to the conversation - `data_source_identifiers`: list of unique IDs of the data sources associated with the conversation - `data_source_names`: array of `{ id, name }` objects for the data sources associated with the conversation - `is_pinned`: whether the current user has pinned this conversation. Pinned conversations are surfaced first in the list. Available from version 26.10.0.cl. - `analyst_id`: unique identifier of the Spotter Analyst the conversation is associated with, or `null` when the conversation is not associated with an analyst. Available from version 26.10.0.cl. #### Pagination Use `limit` and `offset` to page through large result sets: ``` GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=0 → first page GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=20 → second page ``` #### Pagination and `has_more` The response includes a `has_more: Boolean` field. When `true`, there are additional conversations beyond the current page — increment `offset` by `limit` to fetch the next page. When `has_more` is `false`, the current page is the last. Note that `total_count` is not returned; use `has_more` to drive paging controls. #### Example response ```json { \"conversations\": [ { \"conversation_identifier\": \"abc123\", \"conversation_title\": \"Sales by Region Q1\", \"created_at\": \"2026-03-01T10:00:00Z\", \"updated_at\": \"2026-03-05T14:23:00Z\", \"data_source_identifiers\": [\"ds-001\"], \"data_source_names\": [{ \"id\": \"ds-001\", \"name\": \"Retail Sales\" }], \"is_pinned\": true } ], \"has_more\": false } ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` appear in this list. Conversations created with `enable_save_chat: false` (the default) are not persisted and cannot be retrieved. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param limit Maximum number of conversations to return. Used for pagination. * @param offset Number of conversations to skip before returning results. Used for pagination. * @param skipEmpty When true, excludes conversations with no messages. Defaults to true. */ getConversationList(limit?: number, offset?: number, skipEmpty?: boolean, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Retrieves details of the current user session for the token provided in the request header. Any ThoughtSpot user can access this endpoint and send an API request. The data returned in the API response varies according to user\'s privilege and object access permissions. **NOTE**: In ThoughtSpot, users with cluster administration privileges can access all Orgs by default. However, unless the administrator is explicitly added to an Org, the Orgs list in the session information returned by the API will include only the Primary Org. To include other Orgs in the API response, you must explicitly add the administrator to each Org in the Admin settings page in the UI or via user REST API. */ getCurrentUserInfo(_options?: Configuration): Promise; /** * Version: 9.4.0.cl or later Generates a new bearer token from an existing authenticated session. #### Required privileges Any ThoughtSpot user with a valid bearer token can access this endpoint and send an API request. Requires no additional privileges. #### Usage guidelines This endpoint doesn\'t return the caller\'s existing session token. Instead, it issues a new token based on the current authenticated session and returns the new token string, its creation and expiration timestamps, and the associated user details in response. The token generated from this API request is valid for 24 hours. Use this endpoint when your application needs a new token without requiring the user to re-authenticate. If you need a token with a specific expiration or a different security scope, use `POST /api/rest/2.0/auth/token/full`, `POST /api/rest/2.0/auth/token/custom`, or `POST /api/rest/2.0/auth/token/object` instead. */ getCurrentUserToken(_options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Creates an authentication token that provides values for the formula variables in the Row Level Security (RLS) rules for a given user. Recommended for use cases that require Attribute-based access control (ABAC) via RLS. #### Required privileges To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege and edit access to the data source are required. To configure formula variables for all Orgs on your instance or the Primary Org, cluster administration privileges are required. Org administrators can configure formula variables for their respective Orgs. If Role-Based Access Control (RBAC) is enabled, users with the `CAN_MANAGE_VARIABLES` (**Can manage variables**) role privilege can also create and manage variables for their Org context. #### Usage guidelines You can generate a token by providing a `username` and `password`, or by using a `secret_key`. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### ABAC via RLS To implement ABAC via RLS and assign security entitlements to users during session creation, generate a token with custom variable values. The values set in the authentication token are applied to the formula variables referenced in RLS rules at the table level, which determines the data each user can access based on their entitlements. The variable values can be configured to persist for a specific set of Models in user sessions initiated with the token, allowing different RLS rules to be set for different data models. Once defined, the rules are added to the user\'s `variable_values` object, after which all sessions will use the persisted values. For more information, see [ABAC via tokens Documentation](https://developers.thoughtspot.com/docs/abac-via-rls-variables). ##### Formula variables Before defining variable values, ensure the variables are created and available on your instance. To create a formula variable, you can use the **Create variable** (`/api/rest/2.0/template/variables/create`) REST API endpoint, with the variable `type` set as `Formula_Variable` in the API request. The API doesn\'t support `\"persist_option\": \"RESET\"` and `\"persist_option\": \"NONE\"` when `variable_values` are defined in the request. If you are using `variable_values` for token generation, you must use other supported persist options such as `APPEND` or `REPLACE`. If you want to use `RESET` or `NONE`, do not pass any `variable_values`. In such cases, `variable_values` will remain unaffected. #### Supported objects The supported object type is `LOGICAL_TABLE`. When using `object_id` with `variable_values`, models are supported. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `groups` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the username already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email, Org and group entitlements will not be updated with new values. Setting `auto_create` to `true` does not create formula variables. Hence, this setting will not be applicable to `variable_values`. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. Persist options such as `APPEND` and `REPLACE` will persist `variable_values` on the user profile when the token is created. * @param getCustomAccessTokenRequest */ getCustomAccessToken(getCustomAccessTokenRequest: GetCustomAccessTokenRequest, _options?: Configuration): Promise; /** * Version: 10.15.0.cl or later Suggests the most relevant data sources for a given natural language query, ranked by confidence with LLM-generated reasoning. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the underlying metadata entities referenced in the response. #### Usage guidelines The request must include: - `query`: the natural language question to find relevant data sources for If the request is successful, the API returns a ranked list of suggested data sources, each containing: - `confidence`: a float score indicating the model\'s confidence in the relevance of the suggestion - `details`: metadata about the data source - `data_source_identifier`: the unique ID of the data source - `data_source_name`: the display name of the data source - `description`: a description of the data source - `reasoning`: LLM-generated rationale explaining why the data source was recommended #### Error responses | Code | Description | |------|--------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the underlying metadata entities. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before it is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param getDataSourceSuggestionsRequest */ getDataSourceSuggestions(getDataSourceSuggestionsRequest: GetDataSourceSuggestionsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Generates an authentication token for creating a full session in ThoughtSpot for a given user. Recommended for use cases that do not require Attribute-based access control (ABAC) via Row Level Security (RLS). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the user already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email and group assignment will be updated. To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getFullAccessTokenRequest */ getFullAccessToken(getFullAccessTokenRequest: GetFullAccessTokenRequest, _options?: Configuration): Promise; /** * Get translations bundle for a locale. Version: 26.7.0.cl or later Retrieves all translations for a specific locale as a JSON map. Available to all authenticated users. No additional privileges are required. #### Usage guidelines - `locale` parameter must be a hyphenated locale code, in any case (for example, `fr-fr`, `de-de`, `JA-JP`). - Returns a JSON object with a `translations` map where each key is the original string and each value is the translated string. - If the org has no translations for the requested locale, the endpoint falls back to cluster-level translations. - Returns an empty `translations` map (not an error) if no entries exist at either level. * @param locale Locale code for which to retrieve translations. For example, `fr-fr`, `de-de`, `JA-JP`. */ getManualTranslationBundle(locale: string, _options?: Configuration): Promise; /** * Version: 10.15.0.cl or later Retrieves existing natural language (NL) instructions configured for a specific data model. These instructions guide the AI system in understanding data context and generating more accurate responses. Requires `CAN_USE_SPOTTER` privilege, at least view access on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines The request must include: - `data_source_identifier`: the unique ID of the data model to retrieve instructions for If the request is successful, the API returns: - `nl_instructions_info`: an array of instruction objects, each containing: - `instructions`: the configured text instructions for AI processing - `scope`: the scope of the instruction — currently only `GLOBAL` is supported #### Instructions scope - **GLOBAL**: Instructions that apply globally across the system on the given data-model (currently only global instructions are supported) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view access on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs at least view access on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Use this API to review currently configured instructions before modifying them with `setNLInstructions`. * @param getNLInstructionsRequest */ getNLInstructions(getNLInstructionsRequest: GetNLInstructionsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Generates an authentication token that provides access to a specific metadata object. This object list is intersected with the list of objects the user is allowed to access via group membership. For more information, see [Object security](https://docs.thoughtspot.com/cloud/latest/security-data-object#object_security). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the user is not available in ThoughtSpot. If the user already exists in ThoughtSpot and the `auto_create` parameter is set to `true`, user properties such as display name, email, and group assignment will be updated. To add a new user and assign privileges, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH`(**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getObjectAccessTokenRequest */ getObjectAccessToken(getObjectAccessTokenRequest: GetObjectAccessTokenRequest, _options?: Configuration): Promise; /** * Version: 10.13.0.cl or later Breaks down a natural language query into a series of smaller analytical sub-questions, each mapped to a relevant data source. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request must include: - `query`: the natural language question to decompose into analytical sub-questions - `metadata_context`: at least one of the following context identifiers to guide question generation: - `conversation_identifier` — an existing conversation session ID - `answer_identifiers` — a list of Answer GUIDs - `liveboard_identifiers` — a list of Liveboard GUIDs - `data_source_identifiers` — a list of data source GUIDs Optional parameters for refining the output: - `ai_context`: additional context to improve response quality - `content` — supplementary text or CSV data as string input - `instructions` — custom text instructions for the AI system - `limit_relevant_questions`: maximum number of questions to return (default: `5`) - `bypass_cache`: if `true`, forces fresh computation instead of returning cached results If the request is successful, the API returns a list of relevant analytical questions, each containing: - `query`: the generated sub-question - `data_source_identifier`: the unique ID of the data source the question targets - `data_source_name`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param getRelevantQuestionsRequest */ getRelevantQuestions(getRelevantQuestionsRequest: GetRelevantQuestionsRequest, _options?: Configuration): Promise; /** * Returns the current share state for a conversation the caller owns: whether the shared view is outdated relative to the latest conversation content, and the list of principals that currently have access. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation. */ getShareInfo(conversationIdentifier: string, _options?: Configuration): Promise; /** * Returns the full read-only view of a shared conversation, including ordered messages and data source metadata. Accessible by the conversation owner and any principal (user or group) that has been granted access. Requires `CAN_USE_SPOTTER` privilege. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the source conversation. */ getSharedContent(conversationIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Retrieves the current configuration details of the cluster. If the request is successful, the API returns a list configuration settings applied on the cluster. Requires `ADMINISTRATION`(**Can administer ThoughtSpot**) privilege to view these complete configuration settings of the cluster. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemConfig(_options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets system information such as the release version, locale, time zone, deployment environment, date format, and date time format of the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemInformation(_options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Gets a list of configuration overrides applied on the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemOverrideInfo(_options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Returns cluster-level storage setup information for configuring customer-managed storage. Use this endpoint to obtain the IAM identity details required before configuring a webhook storage destination. For S3 destinations, returns the platform AWS account ID and IAM trust policy template. For GCS destinations, returns the platform GCP service account email and the IAM role to grant for service account impersonation. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. */ getWebhookStorageConfig(_options?: Configuration): Promise; /** * Import manual translations from a CSV file. Version: 26.7.0.cl or later Uploads a CSV file containing manual translations and upserts them into the database. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The CSV file must have exactly three columns in this order: `content`, `locale`, `translated-content`. - Maximum file size: **30 MB**. Maximum rows: **10,000**. - Only `.csv` files are accepted. - The import performs an **upsert**: existing entries matched by `(org_id, locale, content)` are updated; new entries are inserted. Entries not in the upload are left untouched. - Set `scope` to `CLUSTER` to upload translations to the All-Org context. Cluster-level translations act as defaults for orgs that have no translations for a locale. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. * @param translationsFile CSV file containing translations. The file must have three columns: `content`, `locale`, `translated-content`. Max file size: 30 MB. Max rows: 10,000. * @param scope Org scope for the import. `ORG` (default) targets the calling user\\\'s current org. `CLUSTER` targets the All-Org context. */ importManualTranslations(translationsFile: HttpFile, scope?: string, _options?: Configuration): Promise; /** * Imports memory entries (rules, recipes, and always-apply rules) from a YAML payload, typically a payload produced by `exportMemory` and edited locally. The imported entries replace the existing memory for the data-models referenced in the payload. `dry_run` is required. Pass `true` first to validate the payload and review the preview counts and any row-level failures without making changes, then re-run with `dry_run = false` to apply the import. An import is not applied if any row fails validation. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to import data-model memories using a given yaml file. This yaml file can be obtained from the export memory API in source env and can be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To import memory, the request must include: - `content`: The full serialized memory payload to import (YAML). Typically the `content` value returned by the `exportMemory` API, edited locally and re-submitted. The payload itself identifies which data-models the memory applies to, so no separate identifier list is required. - `dry_run`: Required. When `true`, validate the payload and return preview counts without writing anything; when `false`, apply the import. Always run with `dry_run = true` first, then re-run with `dry_run = false` once you are satisfied with the preview. The import replaces the existing global memories on the data-models referenced in the payload with the entries supplied in the payload. The API returns a response object with: - `status`: The terminal status of the import (`SUCCESS`, `VALIDATION_FAILED`, or `FAILED`). - `summary`: Per `(memory_type, source)` counts. In a dry run the `deleted_record_count`/`inserted_record_count` are previews; in a real import they are actuals. On `VALIDATION_FAILED`, `summary` is `null` when validation fails before any item is processed (e.g. an unresolved or inaccessible data-model source) and an empty list otherwise — treat both as \"no counts available\". - `validation_failures`: Per-item validation failures, each with `line_number`, `reason`, `field_name`, and `message` for click-to-locate and inline highlighting. - `diagnostics`: Groups of diagnostic messages, each with a `sub_status` (`WARNING`, `FAILURE`, `ROLLED_BACK`, or `UNKNOWN`) and a `messages` list. This is the single channel for both non-fatal warnings (under `WARNING`, e.g. when some older memory entries could not be fully cleaned up) and fatal causes (e.g. the failure reason under `FAILURE`, or a `ROLLED_BACK` group when new entries were undone). - `operation_id`: A server-generated identifier for this import operation; include it when contacting support to help correlate server-side logs. Populated once the server registers the import operation; `null` when the request fails earlier (e.g. while parsing the payload or resolving its data-model sources). #### File format The payload is a YAML document with a single top-level `memories` key holding a list of memory items. Each item is self-contained: a `type`, a typed `content` block, a `datamodel_sources` list, and optional `tags`. Typically you don\'t hand-author this file — you obtain it from `exportMemory`, edit it, and submit it back through `importMemory`. ```yaml memories: - type: RULE content: rule_definition: \"Always filter revenue to closed-won deals.\" datamodel_sources: - guid: 11111111-1111-1111-1111-111111111111 obj_id: sales_data_model tags: - finance - type: RULE content: rule_definition: \"Exclude internal test accounts from all results.\" datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"top accounts by revenue\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"monthly new customer count\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: ALWAYS_APPLY_RULES content: rules: - \"Never show internal test accounts.\" - \"Round currency to whole dollars.\" datamodel_sources: - guid: 22222222-2222-2222-2222-222222222222 ``` A file can contain multiple `RULE` and multiple `RECIPE` items for a data-model, but at most one `ALWAYS_APPLY_RULES` item per data-model. ##### Memory item fields | Field | Required | Type | Description | |-------|----------|------|-------------| | `type` | Yes | String enum | One of `RULE`, `RECIPE`, or `ALWAYS_APPLY_RULES`. | | `content` | Yes | Mapping | Type-specific content block (see below). | | `datamodel_sources` | Yes | Non-empty list | The data-model(s) the memory attaches to. | | `tags` | No | List of strings | Free-form labels. | ##### Memory types and content | `type` | Content fields | Notes | |--------|----------------|-------| | `RULE` | `rule_definition` — required, non-empty string | A single semantic rule. | | `RECIPE` | `recipe` and `user_query` — both required, non-empty strings | `recipe` is an opaque serialized blob; `user_query` is the natural-language query it answers. | | `ALWAYS_APPLY_RULES` | `rules` — required, non-empty list of non-empty strings | Data-model-wide always-apply rules. At most one `ALWAYS_APPLY_RULES` item per data-model. | ##### Identifying data-models (`datamodel_sources`) Each item must list at least one source. Each entry identifies a data-model by at least one of: - `guid` — the data-model GUID. - `obj_id` — a stable object ID, resolved to a GUID server-side. If both are supplied, `obj_id` takes precedence and `guid` is ignored entirely; `guid` takes effect only when `obj_id` is absent. Exported files populate `guid` and, if present, `obj_id` as well. > ⚠️ **Cross-environment import:** When `obj_id` is present it is > authoritative — the accompanying `guid` is **not** used as a fallback. > If an `obj_id` does not exist in the target environment, that item > fails with `UNRESOLVED_SOURCE`. Remove or correct stale `obj_id` > values before importing across environments. #### Validations reference The payload is fully validated before anything is written. This applies to `dry_run = true` and `dry_run = false` alike: if any item fails validation, the entire import is rejected — no partial writes — and all failures are returned together so you can fix them in one pass. ##### Limits Default limits (may be adjusted in future if the need arises): | Limit | Default | |-------|---------| | Uploaded file size | 10 MiB | | Total memory items | 10,000 | | `rule_definition` length | 1,000 characters | | `user_query` length | 1,000 characters | | `recipe` length | 2,000 characters | | `rules` combined length (`ALWAYS_APPLY_RULES`) | 2,000 characters | | Tags per item | 10 | | Characters per tag | 50 | The `rules` limit in `ALWAYS_APPLY_RULES` is a combined budget across all entries in the list, not per entry. ##### Structural rules - The document must be a mapping with a `memories` key whose value is a list. - Unknown keys — at the top level, within an item, or under `content` — are rejected. - Each item\'s `type` must be one of the three supported values, and `content` must match that type\'s shape. - Null, empty-string, or wrong-typed values in a required field are treated as missing. - Non-string or empty `tags` entries are dropped silently; certain tags reserved for internal use are stripped automatically before the item is stored. ##### Cross-item rules - A data-model referenced by more than one `ALWAYS_APPLY_RULES` item is rejected — combine them into a single item\'s `rules` list. ##### Failure reasons Each entry in `validation_failures` carries one of: | Reason | Meaning | |--------|---------| | `SCHEMA` | YAML structure is invalid or unsupported. | | `VALIDATION` | A required field is missing/empty, a count exceeds a limit, or a GUID is malformed. | | `CHAR_LIMIT` | A content field or tag exceeds its size limit. | | `UNRESOLVED_SOURCE` | A `guid` or `obj_id` could not be resolved to an existing data-model. | | `ACCESS_DENIED` | The caller lacks sufficient access on the referenced data-model. | #### Dry run `dry_run` is required and has no default, so the import is always a deliberate two-step flow: 1. **First, call with `dry_run = true`.** This validates the payload and previews what would happen — the counts in `summary` and any `validation_failures` — without writing anything. 2. **Then, after reviewing a clean preview, call again with `dry_run = false`** (same `content`). This applies the import. It refuses to write when any item fails validation, so fix the reported `validation_failures` and resubmit. > ###### Important: > Never call `dry_run = false` without first inspecting a `dry_run = true` preview. A real import deletes and replaces existing global memories on the referenced data-models. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have the necessary Spotter permissions, or the bearer token does not correspond to the data-model\'s org. Per-data-model access failures do not use this code — they surface as `ACCESS_DENIED` validation failures with HTTP `200` (see Logical failures below). | #### Logical failures Validation and write failures are not returned in the error envelope. The call returns `200` with a terminal `status` of `VALIDATION_FAILED` or `FAILED`, and the details live in `validation_failures` / `diagnostics`: - **VALIDATION_FAILED** — one or more items failed schema/semantic validation; nothing was written. Inspect `validation_failures`, fix the items, and resubmit. - **FAILED** — the import did not complete. Inspect `diagnostics`: a `ROLLED_BACK` group means writing the new entries failed and any entries written before the failure were undone (existing memory is intact, no destructive change), while a `FAILURE` group carries another non-validation cause. Sample `VALIDATION_FAILED` responses (HTTP 200): **Invalid data-model (unresolved source):** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"UNRESOLVED_SOURCE\", \"field_name\": \"datamodel_sources[0].guid\", \"message\": \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" ] } ], \"operation_id\": null } ``` **Inaccessible data-models:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'\" }, { \"line_number\": 8, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Memory import validation failed with 2 error(s): Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'; Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" ] } ], \"operation_id\": null } ``` **Character-limit validations:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": [], \"validation_failures\": [ { \"line_number\": 3, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.rule_definition\", \"message\": \"content.rule_definition is 1073 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.user_query\", \"message\": \"content.user_query is 1150 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.recipe\", \"message\": \"content.recipe is 3574 characters; max allowed is 2000\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Validation failures present; fix them and re-run to see the DRY_RUN preview.\" ] } ], \"operation_id\": \"66666666-6666-6666-6666-666666666666\" } ``` > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param importMemoryRequest */ importMemory(importMemoryRequest: ImportMemoryRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Imports [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines * Import all related objects in a single TML Import API call. For example, Tables that use the same Connection object and Worksheets connected to these Tables. * Include the `fqn` property to distinguish objects that have the same name. For example, if you have multiple Connections or Worksheets with the same name on ThoughtSpot and the Connection or Worksheet referenced in your TML file does not have a unique name to distinguish, it may result in invalid object references. Adding `fqn` helps ThoughtSpot differentiate a Table from another with the same name. We recommend [exporting TML with FQNs](#/http/api-endpoints/metadata/export-metadata-tml) and using these during the import operation. * You can upload multiple TML files at a time. If you import a Worksheet along with Liveboards, Answers, and other dependent objects in a single API call, the imported objects will be immediately available for use. When you import only a Worksheet object, it may take some time for the Worksheet to become available in the ThoughtSpot system. Please wait for a few minutes, and then proceed to create an Answer and Liveboard from the newly imported Worksheet. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_import_a_tml). * @param importMetadataTMLRequest */ importMetadataTML(importMetadataTMLRequest: ImportMetadataTMLRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Schedules a task to import [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. You can use this API endpoint to process TML objects asynchronously when importing TMLs of large and complex metadata objects into ThoughtSpot. Unlike the synchronous import TML operation, the API processes TML data in the background and returns a task ID, which can be used to check the status of the import task via `/api/rest/2.0/metadata/tml/async/status` API endpoint. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege, and edit access to the TML objects. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines See [Async TML API Documentation](https://developers.thoughtspot.com/docs/tml#_import_tml_objects_asynchronously) for usage guidelines. * @param importMetadataTMLAsyncRequest */ importMetadataTMLAsync(importMetadataTMLAsyncRequest: ImportMetadataTMLAsyncRequest, _options?: Configuration): Promise; /** * Version: 26.9.0.cl or later Imports semantic updates for an existing semantic integration from its CDW source and refreshes the associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About import semantic integration Re-imports the semantic view from the CDW for the specified integration and rebuilds the corresponding ThoughtSpot model. Use this after the source semantic view has been updated in the CDW (added, removed, or modified formulas, dimensions, or measures) to bring the ThoughtSpot model back in line. - `semantic_integration_identifier` is the GUID or name of the integration to import updates for. - Import preserves the integration\'s GUID, name, and `model_id`; only the underlying formula set is refreshed. - The response includes the same `semantic_report` as create, with an additional `change_status` per formula indicating whether each formula is `NEW`, `UPDATED`, or `UNCHANGED` since the previous import. > **Note:** Importing updates for a semantic integration that was created using the file upload option in the ThoughtSpot UI is not supported. To refresh a file-upload-based integration, use the ThoughtSpot UI. * @param semanticIntegrationIdentifier ID or name of the semantic integration to import updates for. */ importSemanticIntegration(semanticIntegrationIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Imports group objects from external databases into ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. During the import operation: * If the specified group is not available in ThoughtSpot, it will be added to ThoughtSpot. * If `delete_unspecified_groups` is set to `true`, the groups not specified in the API request, excluding administrator and system user groups, are deleted. * If the specified groups are already available in ThoughtSpot, the object properties of these groups are modified and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. * @param importUserGroupsRequest */ importUserGroups(importUserGroupsRequest: ImportUserGroupsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Imports user data from external databases into ThoughtSpot. During the user import operation: * If the specified users are not available in ThoughtSpot, the users are created and assigned a default password. Defining a `default_password` in the API request is optional. * If `delete_unspecified_users` is set to `true`, the users not specified in the API request, excluding the `tsadmin`, `guest`, `system` and `su` users, are deleted. * If the specified user objects are already available in ThoughtSpot, the object properties are updated and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param importUsersRequest */ importUsers(importUsersRequest: ImportUsersRequest, _options?: Configuration): Promise; /** * Loads the full answer payload for a specific answer item in an agent conversation. Returns structured answer data including the TML query, token breakdown, visualization metadata, and agent context state. Pass the `answer_id` from an `AnswerResponseItem` in the `getConversation` response as the `answer_identifier` parameter. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Loads the answer details for a specific answer item in an agent conversation. Returns structured answer data including the TML token list, visualization metadata, and agent context state. Use this endpoint to retrieve the full answer representation for an answer item — for example, to re-render a chart, export a query, or inspect the generated TML. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation, as returned by `createAgentConversation` - `answer_identifier` *(path parameter)*: the `answer_id` field from an `AnswerResponseItem` in the `getConversation` response If the request is successful, the response contains an `answer` object with the following fields: | Field | Type | Description | |-------|------|-------------| | `title` | `String` | Display title of the generated answer (e.g., `\"sales by month\"`). | | `description` | `String` | Optional description of the answer. | | `session_identifier` | `String` | Unique identifier of the session in which this answer was generated. | | `generation_number` | `Int` | Generation sequence number of this answer within the session. | | `tokens` | `[String]` | Ordered list of TML token strings that make up the answer query (e.g., `[\"[sales]\", \"[date].\'monthly\'\"]`). | | `visualization_type` | `VizType` | Suggested visualization type: `Chart`, `Table`, or `Undefined`. `null` if no suggestion is available. | | `formulas` | `[String]` | List of formula names referenced in the answer. Empty if none are used. | | `parameters` | `[String]` | List of parameter names applied to the answer. Empty if none are used. | | `sub_queries` | `[JSON]` | List of sub-query objects used in the answer. Empty if none are present. | | `ac_state` | `ACState` | Agent context state, including `transaction_identifier` and `generation_number`, used to correlate this answer with a specific agent turn. | #### ACState fields | Field | Type | Description | |-------|------|-------------| | `transaction_identifier` | `String` | Unique identifier of the agent transaction that produced this answer. | | `generation_number` | `Int` | Generation number within the transaction. | #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/answers/{answer_identifier}/details ``` #### Example response ```json { \"answer\": { \"title\": \"sales by month\", \"description\": \"\", \"session_identifier\": \"7b00b801-73f4-4639-af5e-e775584ceba6\", \"generation_number\": 1, \"tokens\": [\"[sales]\", \"[date].\'monthly\'\"], \"visualization_type\": null, \"formulas\": [], \"parameters\": [], \"sub_queries\": [], \"ac_state\": { \"transaction_identifier\": \"7f6c9948-b4c7-4098-bb1f-6c67bc0e5699\", \"generation_number\": 1 } } } ``` #### Typical usage scenario 1. Call `getConversation` to retrieve the full conversation history. 2. Locate an `AnswerResponseItem` in `response_items` — note its `answer_id` field. 3. Call `loadAnswer` with the `conversation_identifier` and `answer_id` as `answer_identifier`. 4. The returned `tokens` array can be used to open the answer in the ThoughtSpot search interface or rendered as pill chips in the UI. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation or message exists with the given identifiers for the authenticated user. | | 422 | Unprocessable Entity — the message does not contain an answer of the expected type. | > ###### Note: > > - This endpoint only loads answer-type messages. Other message types are not supported. > - `visualization_type` may be `null` if the agent did not produce a visualization suggestion for this answer. > - `formulas`, `parameters`, and `sub_queries` are returned as empty arrays when not applicable — they are never `null`. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param answerIdentifier Unique identifier of the answer to load. Use the `answer_id` field from an `AnswerResponseItem` returned by `getConversation`. */ loadAnswer(conversationIdentifier: string, answerIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Creates a login session for a ThoughtSpot user with Basic authentication. In Basic authentication method, REST clients log in to ThoughtSpot using `username` and `password` attributes. On a multi-tenant cluster with Orgs, users can pass the ID of the Org in the API request to log in to a specific Org context. **Note**: If Multi-Factor Authentication (MFA) is enabled on your instance, the API login request with basic authentication (`username` and `password` ) returns an error. Contact ThoughtSpot Support for assistance. A successful login returns a session cookie that can be used in your subsequent API requests. #### Redirecting after login To send a browser to a specific page once the session is created, pass `redirect_url`. It must be a path on the same ThoughtSpot instance that served the login request, for example `/pinboards`. An absolute URL is rejected with `400`, so that a login cannot be used to forward a newly issued session cookie to another host. The path is resolved against the host the caller actually reached, which means the same request works unchanged on a custom domain, behind a proxy, or on an Org-specific subdomain. * **Browser flows** — omit `no_url_redirection`. The API answers `302` with the resolved path in the `location` header, and the browser follows it on its own. This is the usual choice when the login is submitted as an HTML form or opened as a top-level navigation. * **SPA and non-browser clients** — set `no_url_redirection` to `true`. The API keeps its normal `204` response and returns the resolved path in the `location` header without redirecting, leaving the client to decide when and where to navigate. Use this from `fetch`/`XMLHttpRequest` calls, which follow a `302` internally and never expose it to your code. When `redirect_url` is omitted the response is unchanged, and `no_url_redirection` has no effect on its own. * @param loginRequest */ login(loginRequest: LoginRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Logs out a user from their current session. */ logout(_options?: Configuration): Promise; /** * Version: 26.3.0.cl or later This API allows the addition or deletion of object level privileges for a set of users and groups, on a set of metadata objects. It provides users to access certain features based on privilege based access control. #### Usage guidelines - Specify the `operation`. The supported operations are: `ADD`, `REMOVE`. - Specify the type of the objects on which the object privileges are being provided in `metadata_type`. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - Specify the list of object privilege types in the `object_privilege_types` array. The supported object privilege types are: `SPOTTER_COACHING_PRIVILEGE`. - Specify the identifiers (either GUID or name) for the metadata objects in the `metadata_identifiers` array. - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals to which you want to apply the given operation and given object privileges in the `principals` array. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"operation\": \"operation-type\", \"metadata_type\": \"metadata-type\", \"object_privilege_types\": [\"privilege-type-1\", \"privilege-type-2\"], \"metadata_identifiers\": [\"metadata-guid-or-name-1\", \"metadata-guid-or-name-1\"], \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ] } ``` > ###### Note: > * Only admin users, users with edit access and users with coaching privilege on a given data-model can add or remove principals related to SPOTTER_COACHING_PRIVILEGE * @param manageObjectPrivilegeRequest */ manageObjectPrivilege(manageObjectPrivilegeRequest: ManageObjectPrivilegeRequest, _options?: Configuration): Promise; /** * @deprecated * * Parameterize fields in metadata objects. Version: 10.9.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/metadata/parameterize-fields](/api/rest/2.0/metadata/parameterize-fields) instead. Allows parameterizing fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be parameterized. For Connection Config, the only supported field name is: * impersonate_user * @param parameterizeMetadataRequest */ parameterizeMetadata(parameterizeMetadataRequest: ParameterizeMetadataRequest, _options?: Configuration): Promise; /** * Parameterize multiple fields of metadata objects. For example [schemaName, databaseName] for LOGICAL_TABLE. Version: 26.10.0.cl or later Allows parameterizing multiple fields of metadata objects in ThoughtSpot. For example, you can parameterize [schemaName, databaseName] for LOGICAL_TABLE. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table, the field type must be `ATTRIBUTE` and field names can include: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_names specifies the exact properties of the Connection or Connection Config that need to be parameterized. For Connection Config, supported field names include: * impersonate_user You can parameterize multiple fields at once by providing an array of field names. * @param parameterizeMetadataFieldsRequest */ parameterizeMetadataFields(parameterizeMetadataFieldsRequest: ParameterizeMetadataFieldsRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Allows publishing metadata objects across organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows publishing the following types of metadata objects: * Liveboards * Answers * Logical Tables This API will essentially share the objects along with it\'s dependencies to the org admins of the orgs to which it is being published. * @param publishMetadataRequest */ publishMetadata(publishMetadataRequest: PublishMetadataRequest, _options?: Configuration): Promise; /** * Update values for a variable Version: 26.4.0.cl or later Allows updating values for a specific variable in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to the variable * Replacing existing values * Deleting values from the variable * Resetting all values When updating variable values, you need to specify: * The variable identifier (ID or name) * The values to add/replace/remove * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constraints for the given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param identifier Unique ID or name of the variable * @param putVariableValuesRequest */ putVariableValues(identifier: string, putVariableValuesRequest: PutVariableValuesRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 10.7.0.cl or later **Deprecated** — Use `getRelevantQuestions` instead (available from 10.13.0.cl). Breaks down a topical or goal-oriented natural language question into smaller, actionable analytical sub-questions, each mapped to a relevant data source for independent execution. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request accepts the following parameters: - `nlsRequest`: contains the user `query` to decompose, along with optional `instructions` and `bypassCache` flag - `worksheetIds`: list of data source identifiers to scope the decomposition - `answerIds`: list of Answer GUIDs whose data guides the response - `liveboardIds`: list of Liveboard GUIDs whose data guides the response - `conversationId`: an existing conversation session ID for context continuity - `content`: supplementary text or CSV data to improve response quality - `maxDecomposedQueries`: maximum number of sub-questions to return (default: `5`) If the request is successful, the API returns a `decomposedQueryResponse` containing a list of `decomposedQueries`, each with: - `query`: the generated analytical sub-question - `worksheetId`: the unique ID of the data source the question targets - `worksheetName`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is deprecated since 10.13.0.cl. Use `getRelevantQuestions` for new integrations. > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot support to enable Spotter on your cluster. * @param queryGetDecomposedQueryRequest */ queryGetDecomposedQuery(queryGetDecomposedQueryRequest: QueryGetDecomposedQueryRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Resets the password of a user account. Administrators can reset password on behalf of a user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param resetUserPasswordRequest */ resetUserPassword(resetUserPasswordRequest: ResetUserPasswordRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Reverts TML objects to a previous commit specified in the API request. Requires at least edit access to objects. In the API request, specify the `commit_id`. If the branch name is not specified in the request, the API will consider the default branch configured on your instance. By default, the API reverts all objects. If the revert operation fails for one of the objects provided in the commit, the API returns an error and does not revert any object. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitId Commit id to which the object should be reverted * @param revertCommitRequest */ revertCommit(commitId: string, revertCommitRequest: RevertCommitRequest, _options?: Configuration): Promise; /** * Version: 26.2.0.cl or later Revokes OAuth refresh tokens for users who no longer require access to a data warehouse connection. When a token is revoked, the affected user\'s session for that connection is terminated, and they must re-authenticate to regain access. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on the ThoughtSpot instance, users with `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege can also make API requests to revoke tokens for connection users. #### Usage guidelines You can specify different combinations of identifiers to control which refresh tokens are revoked. - **connection_identifier**: Revokes refresh tokens for all users of the connection, except the connection author. - **connection_identifier** and **user_identifiers**: Revokes refresh tokens only for the users specified in the request. If the name or ID of the connection author is included in the request, their token will also be revoked. - **connection_identifier** and **configuration_identifiers**: Revokes refresh tokens for all users on the specified configurations, except the configuration author. - **connection_identifier**, **configuration_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users on the specified configurations. - **connection_identifier** and **org_identifiers**: Revokes refresh tokens for the specified Orgs. Applicable only for published connections. - **connection_identifier**, **org_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users in the specified Orgs. Applicable only for published connections. **NOTE**: The `org_identifiers` parameter is only applicable for published connections. Using this parameter for unpublished connections will result in an error. Ensure that the connections are published before making the API request. * @param connectionIdentifier Unique ID or name of the connection whose refresh tokens need to be revoked. All the users associated with the connection will have their refresh tokens revoked except the author. * @param revokeRefreshTokensRequest */ revokeRefreshTokens(connectionIdentifier: string, revokeRefreshTokensRequest: RevokeRefreshTokensRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Revokes the authentication token issued for current user session. The token of your current session expires when you make a call to the `/api/rest/2.0/auth/token/revoke` endpoint. the users will not be able to access ThoughtSpot objects until a new token is obtained. To restart your session, request for a new token from ThoughtSpot. See [Get Full Access Token](#/http/api-endpoints/authentication/get-full-access-token). * @param revokeTokenRequest */ revokeToken(revokeTokenRequest: RevokeTokenRequest, _options?: Configuration): Promise; /** * Searches Spotter Analysts. Two modes: - Fetch mode: when `analyst_identifier` is provided, the response contains exactly that analyst and all other filters are ignored. - List mode: returns a paginated list of analysts visible to the caller, optionally filtered by a case-insensitive substring match on the analyst name (`query`) and by ownership (`type`). Results are ordered by most recently accessed. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Version: 26.10.0.cl or later Searches Spotter Analysts. Use this endpoint to page through the analysts visible to you, or to fetch a single analyst by its identifier. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Use a bearer token for the Org whose analysts should be searched. #### Usage guidelines The endpoint operates in one of two modes: **Fetch mode** — when `analyst_identifier` is provided, the response contains exactly that analyst (`total_size` is 1) and all other filters are ignored. The caller must have access to the analyst (owner, shared with, or admin/Spotter-management privileges). **List mode** — when `analyst_identifier` is omitted, the response is a paginated list of analysts the caller can see, ordered by most recently accessed: - `record_size` (optional): number of records per page. Default 50, between 1 and 500. - `record_offset` (optional): zero-based index of the first record. Default 0, maximum 10000. - `query` (optional): case-insensitive substring match applied to the analyst **name only**. - `type` (optional): ownership filter — `ALL` (default; created by or shared with me), `CREATED_BY_ME`, or `SHARED_TO_ME`. The response contains `analysts` — the page of matching analysts — and `total_size`, the total number of matches before pagination. Each analyst includes its `id`, `name`, `description`, `instructions`, `sources` (with `id`, `type`, and display `name`), enriched `mcp_connectors` (with `id`, `name`, and `icon_url`), `icon_id`, `starter_prompts` (including the server-managed fixed prompt, marked `is_fixed`), `updated_time_in_millis` and `last_accessed_time_in_millis` (epoch milliseconds), and `created_by` / `updated_by` user references (with `id`, `name`, and `display_name`). #### Error conditions - `403` — missing privileges, or (fetch mode) no access to the requested analyst. - `404` — (fetch mode) no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as `record_size` or `record_offset` out of range. * @param searchAnalystsRequest */ searchAnalysts(searchAnalystsRequest: SearchAnalystsRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Returns the authentication configuration for the specified auth type at cluster and org level. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `scope` to control which level of settings are returned: - `CLUSTER` — Returns cluster-level authentication status and access tokens. Accessible only from the Primary Org. - `ORG` — Returns org-level authentication status and access tokens for the current Org. Requires the per-Org authentication feature to be enabled on your instance. - If `scope` is omitted, both cluster and org-level settings are returned based on the caller\'s org context and feature availability. The `access_tokens` array in `cluster_preferences` or `org_preferences` is omitted when no token is configured at that level. **Note**: Access tokens returned in the response are sensitive credentials. Treat them with the same care as passwords. * @param searchAuthSettingsRequest */ searchAuthSettings(searchAuthSettingsRequest: SearchAuthSettingsRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Gets a list of [custom calendars](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines By 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. The `name_pattern` parameter filters and returns only those objects that match the specified pattern. Use `%` as a wildcard for pattern matching. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCalendarsRequest */ searchCalendars(searchCalendarsRequest: SearchCalendarsRequest, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Searches delivery history for communication channels such as webhooks. Returns channel-level delivery status for each job execution record. Use this to monitor channel health and delivery success rates across events. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. **NOTE**: When `channel_type` is `WEBHOOK`, the following constraints apply: - `job_ids`, `channel_identifiers`, and `events` each accept at most one element. - When `job_ids` is provided, it is used as the sole lookup key and other filter fields are ignored. - When `job_ids` is not provided, `channel_identifiers` and `events` are both required, each containing exactly one element. - Records older than the configured retention period are not returned. - Use `start_epoch_time_in_millis` and/or `end_epoch_time_in_millis` to narrow results to a specific time window. * @param searchChannelHistoryRequest */ searchChannelHistory(searchChannelHistoryRequest: SearchChannelHistoryRequest, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Gets a list of collections available in ThoughtSpot. To get details of a specific collection, specify the collection GUID or name. You can also filter the API response based on the collection name pattern, author, and other criteria. #### Search options * **name_pattern**: Use \'%\' as a wildcard character to match collection names * **collection_identifiers**: Search for specific collections by their GUIDs or names * **include_metadata**: When set to `true`, includes the metadata objects within each collection in the response **NOTE**: In addition to the GUID and name, `collection_identifiers` accepts a Custom object ID if one is configured for the collection. The response also includes the `obj_id` field for each collection that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCollectionsRequest */ searchCollections(searchCollectionsRequest: SearchCollectionsRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Gets a list of commits for a given metadata object. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param searchCommitsRequest */ searchCommits(searchCommitsRequest: SearchCommitsRequest, _options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Fetch communication channel preferences. - Use `cluster_preferences` to fetch the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to fetch any Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param searchCommunicationChannelPreferencesRequest */ searchCommunicationChannelPreferences(searchCommunicationChannelPreferencesRequest: SearchCommunicationChannelPreferencesRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Gets Git repository connections configured on the ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param searchConfigRequest */ searchConfig(searchConfigRequest: SearchConfigRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Gets connection objects. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. - To get a list of all connections available in the ThoughtSpot system, send the API request without any attributes in the request body. - To get the connection objects for a specific type of data warehouse, specify the type in `data_warehouse_types`. - To fetch details of a connection object, specify the connection object GUID or name. The `name_pattern` attribute allows passing partial text with `%` for a wildcard match. - To get details of the database, schemas, tables, or columns from a data connection object, specify `data_warehouse_object_type`. - To get a specific database, schema, table, or column from a connection object, define the object type in `data_warehouse_object_type` and object properties in the `data_warehouse_objects` array. For example, to search for a column, you must pass the database, schema, and table names in the API request. Note that in the following example, object properties are set in a hierarchical order (`database` > `schema` > `table` > `column`). ``` { \"connections\": [ { \"identifier\": \"b9d1f2ef-fa65-4a4b-994e-30fa2d57b0c2\", \"data_warehouse_objects\": [ { \"database\": \"NEBULADEV\", \"schema\": \"INFORMATION_SCHEMA\", \"table\": \"APPLICABLE_ROLES\", \"column\": \"ROLE_NAME\" } ] } ], \"data_warehouse_object_type\": \"COLUMN\" } ``` - To fetch data by `configuration`, specify `data_warehouse_object_type`. For example, to fetch columns from the `DEVELOPMENT` database, specify the `data_warehouse_object_type` as `DATABASE` and define the `configuration` string as `{\"database\":\"DEVELOPMENT\"}`. To get column data for a specific table, specify the table, for example,`{\"database\":\"RETAILAPPAREL\",\"table\":\"PIPES\"}`. - To query connections by `authentication_type`, specify `data_warehouse_object_type`. Supported values for `authentication_type` are: - `SERVICE_ACCOUNT`: For connections that require service account credentials to authenticate to the Cloud Data Warehouse and fetch data. - `OAUTH`: For connections that require OAuth credentials to authenticate to the Cloud Data Warehouse and fetch data. Teradata, Oracle, and Presto Cloud Data Warehouses do not support the OAuth authentication type. - `IAM`: For connections that have the IAM OAuth set up. This authentication type is supported on Amazon Redshift connections only. - `EXTOAUTH`: For connections that have External OAuth set up. ThoughtSpot supports external [OAuth with Microsoft Azure Active Directory (AD)](https://docs.thoughtspot.com/cloud/latest/ connections-snowflake-azure-ad-oauth) and [Okta for Snowflake data connections](https://docs.thoughtspot.com/cloud/latest/connections-snowflake-okta-oauth). - `KEY_PAIR`: For connections that require Key Pair account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PKCE`: For connections that require OAuth with PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake, Starburst, Databricks, Denodo connections only. - `EXTOAUTH_WITH_PKCE`: For connections that require External OAuth With PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PEZ`: For connections that require OAuth With PEZ account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Amazon Redshift connections only. - `OAUTH_WITH_SERVICE_PRINCIPAL`: For connections that require OAuth With Service Principal account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `PERSONAL_ACCESS_TOKEN`: For connections that require Personal Access Token account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `OAUTH_CLIENT_CREDENTIALS`: For connections that require OAuth Client Credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - To include more details about connection objects in the API response, set `include_details` to `true`. - You can also sort the output by field names and filter connections by tags. **NOTE**: In addition to the connection GUID and name, the `identifier` field on each entry in `connections` accepts a Custom object ID if one is configured for the connection. The response also includes the `obj_id` field for each connection that has one set. **NOTE**: When filtering connection records by parameters other than `data_warehouse_types` or `tag_identifiers`, ensure that you set `record_size` to `-1` and `record_offset` to `0` for precise results. * @param searchConnectionRequest */ searchConnection(searchConnectionRequest: SearchConnectionRequest, _options?: Configuration): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Gets custom actions configured on the cluster. 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. * @param searchCustomActionsRequest */ searchCustomActions(searchCustomActionsRequest: SearchCustomActionsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Generates an Answer from a given data source. Requires at least view access to the data source object (Worksheet or View). If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines To search data, specify the data source GUID in `logical_table_identifier`. The data source can be a Worksheet, View, Table, or SQL view. Pass search tokens in the `query_string` attribute in the API request as shown in the following example: ``` { \"query_string\": \"[sales] by [store]\", \"logical_table_identifier\": \"cd252e5c-b552-49a8-821d-3eadaa049cca\", } ``` For more information about the `query_string` format and data source attribute, see [Search data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_search_data_api). The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_api). * @param searchDataRequest */ searchData(searchDataRequest: SearchDataRequest, _options?: Configuration): Promise; /** * Version: 10.10.0.cl or later Search the email customization configuration if any set for the ThoughtSpot system. #### 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. * @param searchEmailCustomizationRequest */ searchEmailCustomization(searchEmailCustomizationRequest: SearchEmailCustomizationRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Returns the feature configurations available on the ThoughtSpot system, grouped by feature group. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To retrieve feature configurations, pass these parameters in your API request: - `scope` — Determines the administrative view. Use `CLUSTER` for the cluster-admin view (returns the Orgs assigned to each feature); use `ORG` for the org-admin view (returns the current value of each feature for a single Org). - `org_identifier` — Numeric ID of the Org. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `category` — Availability category of the features to return. `GENERAL_ACCESS` returns generally available features; `EARLY_ACCESS` returns features still in early access. Defaults to `GENERAL_ACCESS`. The response fields populated depend on the requested scope. In the cluster-admin view (`scope=CLUSTER`), each feature includes `assigned_orgs`, `is_org_aware`, and (for non-org-aware features) `feature_value`. In the org-admin view (`scope=ORG`), each feature includes `element_type`, `element_config`, and `element_value`. The following example retrieves the general-access features for the cluster-admin view: ``` { \"scope\": \"CLUSTER\", \"category\": \"GENERAL_ACCESS\" } ``` For the org-admin view, set `scope` to `ORG` and pass the `org_identifier` of the Org to scope the search to (`org_identifier` is required when `scope` is `ORG`; omitting it returns a 400 error): ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"category\": \"GENERAL_ACCESS\" } ``` * @param searchFeaturesRequest */ searchFeatures(searchFeaturesRequest: SearchFeaturesRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of metadata objects available on the ThoughtSpot system. This API endpoint is available to all users who have view access to the object. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view data for all metadata objects, including users and groups. #### Usage guidelines - To get all metadata objects, send the API request without any attributes. - To get metadata objects of a specific type, set the `type` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE`. - To filter metadata objects within type `LOGICAL_TABLE`, set the `subtypes` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE` & subtypes as `[WORKSHEET]`. - To get a specific metadata object, specify the GUID. - To customize your search and filter the API response, you can use several parameters. You can search for objects created or modified by specific users, by tags applied to the objects, or by using the include parameters like `include_auto_created_objects`, `include_dependent_objects`, `include_headers`, `include_incomplete_objects`, and so on. You can also define sorting options to sort the data retrieved in the API response. - To get discoverable objects when linientmodel is enabled you can use `include_discoverable_objects` as true else false. Default value is true. - For liveboard metadata type, to get the newer format, set the `liveboard_response_format` as V2. Default value is V1. - To retrieve only objects that are published, set the `include_only_published_objects` as true. Default value is false. **NOTE**: `obj_identifier` is supported for the following object types: `LIVEBOARD`, `ANSWER`, `LOGICAL_TABLE`, `LOGICAL_COLUMN`, `CONNECTION`, `USER_GROUP`, `COLLECTION`. The response includes the `metadata_obj_id` field for objects that have a Custom object ID set. **NOTE**: The following parameters support pagination of metadata records: - `tag_identifiers` - `type` - `subtypes` - `created_by_user_identifiers` - `modified_by_user_identifiers` - `owned_by_user_identifiers` - `exclude_objects` - `include_auto_created_objects` - `favorite_object_options` - `include_only_published_objects` **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchMetadataRequest */ searchMetadata(searchMetadataRequest: SearchMetadataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of Orgs configured on the ThoughtSpot system. To get details of a specific Org, specify the Org ID or name. You can also pass parameters such as status, visibility, and user identifiers to get a specific list of Orgs. Results are paginated: `record_size` (default `10`) sets the number of Orgs returned and `record_offset` (default `0`) sets the starting record. To retrieve all Orgs, increase `record_offset` by `record_size` until a page returns fewer than `record_size` Orgs. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param searchOrgsRequest */ searchOrgs(searchOrgsRequest: SearchOrgsRequest, _options?: Configuration): Promise; /** * Version: 9.5.0.cl or later Gets a list of Role objects from the ThoughtSpot system. Available if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To search for Roles, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. To get details of a specific Role object, specify the GUID or name. You can also filter the API response based on user group and Org identifiers, privileges assigned to the Role, and deprecation status. **NOTE**: In addition to the GUID and name, `role_identifiers` accepts a Custom object ID if one is configured for the role. The response also includes the `obj_id` field for each role that has one set. * @param searchRolesRequest */ searchRoles(searchRolesRequest: SearchRolesRequest, _options?: Configuration): Promise; /** * Search Schedules Version: 9.4.0.cl or later Gets a list of scheduled jobs configured for a Liveboard. To get details of a specific scheduled job, specify the name or GUID of the scheduled job. Requires at least view access to Liveboards. **NOTE**: When filtering schedules by parameters other than `metadata`, set `record_size` to `-1` and `record_offset` to `0` for accurate results. * @param searchSchedulesRequest */ searchSchedules(searchSchedulesRequest: SearchSchedulesRequest, _options?: Configuration): Promise; /** * Version: 26.2.0.cl or later Fetch security settings for your ThoughtSpot application instance. - Use `scope: CLUSTER` to retrieve cluster-level security settings, including CORS and CSP allowlists, SAML redirect URLs, and settings that control access to non-embedded pages. - Use `scope: ORG` to retrieve Org-level security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this returns CORS and non-embed access settings specific to the Org. - If `scope` is not specified, returns both cluster and Org-specific settings based on user privileges. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param searchSecuritySettingsRequest */ searchSecuritySettings(searchSecuritySettingsRequest: SearchSecuritySettingsRequest, _options?: Configuration): Promise; /** * Version: 26.9.0.cl or later Searches and lists semantic integrations available to the authenticated user in the current organization, with optional filters, sort, and pagination. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About search semantic integrations Returns a paginated batch of semantic integrations, each with its identifier, name, description, source connection, generated model identifier, author, creation/modification timestamps, and associated tags. Use the filters to narrow results by author, connection, tag, or name pattern. - `pattern` matches the integration name as a case-insensitive substring. - `author_identifiers` and `connection_identifiers` accept either GUIDs or names. - `sort_options.field_name` defaults to `MODIFIED_TIME`; set `sort_options.order` to `ASC` or `DESC` to control sort direction. - `record_offset` and `record_size` control pagination. Use `record_size: 0` to return all matching records in a single response. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchSemanticIntegrationsRequest */ searchSemanticIntegrations(searchSemanticIntegrationsRequest: SearchSemanticIntegrationsRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Retrieves style preferences at cluster level or for the authenticated user\'s org. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to retrieve cluster-level style defaults. - Set `scope` to `ORG` (default) to retrieve preferences for the authenticated user\'s org. - Each field in the response includes an `is_overridden` flag indicating whether the value was explicitly set at the requested scope or inherited from a parent scope (cluster or system default). - `app_color_theme` (_available from 26.10.0.cl_) describes the same underlying color as `navigation_panel`, in a different form: `navigation_panel` uses the `DARK`/`TWO_TONE`/`CUSTOM` theme modes, while `app_color_theme` gives the brand color and how it is applied (`brand_color`, `apply_as_top_nav_color`). They never disagree, so use whichever your integration already reads. `app_color_theme` is returned only when the app color theme is enabled on the cluster; `navigation_panel` is always returned. * @param searchStyleCustomizationsRequest */ searchStyleCustomizations(searchStyleCustomizationsRequest: SearchStyleCustomizationsRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Returns custom fonts from the cluster-level or org-level font library. Omitting all filter fields returns all fonts in the target scope. When `include_font_assignments` is `true`, the response includes only the visualization areas explicitly assigned to each font. For cluster-scoped fonts, `org` is returned as `null`. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to search the cluster-level library. Set `scope` to `ORG` (default) to search the authenticated user\'s org library. - Use `font_identifier` to look up a specific font by UUID or name. - Use `name_pattern` for partial, case-insensitive name matching. - Set `include_font_assignments` to `true` to include visualization areas this font is currently assigned to. Defaults to `false`. * @param searchStyleFontsRequest */ searchStyleFonts(searchStyleFontsRequest: SearchStyleFontsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of tag objects available on the ThoughtSpot system. To get details of a specific tag object, specify the GUID or name. Any authenticated user can search for tag objects. * @param searchTagsRequest */ searchTags(searchTagsRequest: SearchTagsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of user group objects from the ThoughtSpot system. To get details of a specific user group, specify the user group GUID or name. You can also filter the API response based on User ID, Org ID, Role ID, type of group, sharing visibility, privileges assigned to the group, and the Liveboard IDs assigned to the users in the group. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. **NOTE**: In addition to the GUID and name, `group_identifier` accepts a Custom object ID if one is configured for the group. The response also includes the `obj_id` field for each group that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUserGroupsRequest */ searchUserGroups(searchUserGroupsRequest: SearchUserGroupsRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of users available on the ThoughtSpot system. To get details of a specific user, specify the user GUID or name. You can also filter the API response based on groups, Org ID, user visibility, account status, user type, and user preference settings and favorites. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUsersRequest */ searchUsers(searchUsersRequest: SearchUsersRequest, _options?: Configuration): Promise; /** * Search variables Version: 26.4.0.cl or later Allows searching for variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports searching variables by: * Variable identifier (ID or name) * Variable type * Name pattern (case-insensitive, supports % for wildcard) The search results can be formatted in three ways: * METADATA - Returns only variable metadata (default) * METADATA_AND_VALUES - Returns variable metadata and values The values can be filtered by scope: * org_identifier * principal_identifier * model_identifier **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchVariablesRequest */ searchVariables(searchVariablesRequest: SearchVariablesRequest, _options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Searches for webhook configurations based on various criteria such as Org, webhook identifier, event type, with support for pagination and sorting. Returns matching webhook configurations with their complete details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param searchWebhookConfigurationsRequest */ searchWebhookConfigurations(searchWebhookConfigurationsRequest: SearchWebhookConfigurationsRequest, _options?: Configuration): Promise; /** * Version: 26.5.0.cl or later Sends natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - For real-time streamed responses, use `sendAgentConversationMessageStreaming` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageRequest */ sendAgentConversationMessage(conversationIdentifier: string, sendAgentConversationMessageRequest: SendAgentConversationMessageRequest, _options?: Configuration): Promise; /** * Version: 26.5.0.cl or later Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | | ---- | -------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). > - For the complete response in a single payload, use `sendAgentConversationMessage` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageStreamingRequest */ sendAgentConversationMessageStreaming(conversationIdentifier: string, sendAgentConversationMessageStreamingRequest: SendAgentConversationMessageStreamingRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessage` instead. Send natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessage` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentMessageRequest */ sendAgentMessage(conversationIdentifier: string, sendAgentMessageRequest: SendAgentMessageRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessageStreaming` instead. Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessageStreaming` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). * @param sendAgentMessageStreamingRequest */ sendAgentMessageStreaming(sendAgentMessageStreamingRequest: SendAgentMessageStreamingRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Sends a follow-up message to an existing conversation within the context of a data model. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. A conversation must first be created using the `createConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createConversation` - `metadata_identifier`: the unique ID of the data source used for the conversation - `message`: a natural language string with the follow-up question If the request is successful, the API returns an array of response messages, each containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param sendMessageRequest */ sendMessage(conversationIdentifier: string, sendMessageRequest: SendMessageRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Creates or updates the admin instructions for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. If instructions already exist for the org, they are replaced (upsert semantics). Requires admin privileges. Only users with org admin access can set agent instructions. #### Usage guidelines The request must include: - `instructions`: the instructions text to apply to the agent (maximum 5000 characters) Instructions are validated against system guardrails before being saved. If the instructions contain content that conflicts with guardrails, the request is rejected with a `409` error and the existing instructions remain unchanged. If the request is successful, the response includes the saved `AgentInstructions` record: - `id`: unique identifier of the record - `instructions`: the saved instructions text - `created_at`: ISO timestamp when the instructions were first created - `updated_at`: ISO timestamp of this update - `last_updated_by`: user ID of the admin who performed this update #### Error responses | Code | Description | |------|-------------| | 400 | Bad request — the request body is missing required fields or the `instructions` field exceeds the maximum allowed length of 5000 characters. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to set agent instructions. | | 409 | Conflict — the provided instructions conflict with system guardrails. Review and revise the instructions text before retrying. | | 500 | Internal server error. | > ###### Note: > > - This operation uses upsert semantics: it creates the instructions record if none exists, or replaces the existing one. > - Instructions take effect immediately for new conversations created after the update. > - Use `getAgentInstructions` to retrieve the current instructions before making changes. > - Available from version 26.6.0.cl and later. * @param setAgentInstructionsRequest */ setAgentInstructions(setAgentInstructionsRequest: SetAgentInstructionsRequest, _options?: Configuration): Promise; /** * Version: 10.15.0.cl or later This API allows users to set natural language (NL) instructions for a specific data-model to improve AI-generated answers and query processing. These instructions help guide the AI system to better understand the data context and provide more accurate responses. Requires `CAN_USE_SPOTTER` privilege, either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines To set NL instructions for a data-model, the request must include: - `data_source_identifier`: The unique ID of the data-model for which to set NL instructions - `nl_instructions_info`: An array of instruction objects, each containing: - `instructions`: Array of text instructions for the LLM - `scope`: The scope of the instruction (`GLOBAL`). Currently only `GLOBAL` is supported. It can be extended to data-model-user scope in future. #### Instructions scope - **GLOBAL**: instructions that apply to all users querying this data model If the request is successful, the API returns: - `success`: a boolean indicating whether the operation completed successfully #### Error responses | Code | Description | |------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Instructions help improve the accuracy and relevance of AI-generated responses for the specified data-model. * @param setNLInstructionsRequest */ setNLInstructions(setNLInstructionsRequest: SetNLInstructionsRequest, _options?: Configuration): Promise; /** * Updates share permissions on a Spotter Analyst, one entry per principal (user or group). `READ_ONLY` and `MODIFY` grant or change the principal\'s access; `NO_ACCESS` revokes it. Granting access also shares the analyst\'s data sources with the principal so the analyst keeps working for them. A successful share returns an empty `204 No Content` response. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Updates share permissions on a Spotter Analyst for one or more principals (users or groups). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The analyst is identified by the `analyst_identifier` path parameter. The request body contains a `permissions` array with one entry per principal: - `principal.identifier` (required): unique identifier of the user or group. - `principal.type` (required): `USER` or `USER_GROUP`. - `share_mode` (required): `READ_ONLY` or `MODIFY` grants (or changes) the principal\'s access; `NO_ACCESS` revokes it. A principal may appear at most once per request. When access is granted, the analyst\'s data sources are automatically shared with the principal as well, so the analyst keeps working for them. A successful request returns an empty `204 No Content` response. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as an empty `permissions` array, a duplicate principal, or a missing field. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to share. * @param shareAnalystRequest */ shareAnalyst(analystIdentifier: string, shareAnalystRequest: ShareAnalystRequest, _options?: Configuration): Promise; /** * Grants or revokes access to a shared conversation for one or more principals (users or groups). When principals are added, a read-only shared view of the conversation is created from its current state. Use `refresh_shared_content` to regenerate the shared view with the latest conversation content. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation to share. * @param shareConversationRequest */ shareConversation(conversationIdentifier: string, shareConversationRequest: ShareConversationRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Allows sharing one or several metadata objects with users and groups in ThoughtSpot. Requires edit access to the metadata object. #### Supported metadata objects: * Liveboards * Visualizations * Answers * Models * Views * Connections * Collections #### Object permissions You can provide `READ_ONLY` or `MODIFY` access when sharing an object with another user or group. The `READ_ONLY` permission grants view access to the shared object, whereas `MODIFY` provides edit access. To prevent a user or group from accessing the shared object, specify the GUID or name of the principal and set `shareMode` to `NO_ACCESS`. #### Sharing a visualization * Sharing a visualization implicitly shares the entire Liveboard with the recipient. * Object permissions set for a shared visualization also apply to the Liveboard unless overridden by another API request or via UI. * If email notifications for object sharing are enabled, a notification with a link to the shared visualization will be sent to the recipient’s email address. Although this link opens the shared visualization, recipients can also access other visualizations in the Liveboard. #### Sharing a collection Collections support **dual permissions** that provide fine-grained control: * **Collection permissions** (`share_mode`) - controls access to the collection itself (view, edit, delete the collection) * **Content permissions** (`content_share_mode`) - controls access to objects within the collection (view, edit objects inside) **Default Behavior:** - If only `share_mode` is specified, the content permissions default to `READ_ONLY` (except when `share_mode` is `NO_ACCESS`, then content also gets `NO_ACCESS`) - To give users edit access to collection contents, explicitly set `content_share_mode: \"MODIFY\"` ## Examples The following JSON examples can be copy-pasted as request bodies for the REST v2 API endpoint: ```bash POST /callosum/v1/v2/security/metadata/share Content-Type: application/x-www-form-urlencoded ``` ### Basic collection sharing Share a collection with read-only access: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Sales Reports Collection\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"alice@company.com\" }, \"share_mode\": \"READ_ONLY\" }], \"notification\": { \"message\": \"I\'ve shared the Sales Reports collection with you\", \"notify_on_share\": true } } ``` ### Collection sharing with dual permissions Share a collection with different permissions for the collection vs. its contents: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Marketing Analytics\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"bob@company.com\" }, \"share_mode\": \"MODIFY\", \"content_share_mode\": \"READ_ONLY\" }, { \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Marketing Team\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"READ_ONLY\" }], \"notification\": { \"emails\": [\"bob@company.com\"], \"message\": \"You can edit the collection but content is read-only\", \"enable_custom_url\": false, \"notify_on_share\": true }, \"has_lenient_discoverability\": false } ``` ### Multiple collections sharing Share multiple collections with different users: ```json { \"metadata\": [ { \"type\": \"COLLECTION\", \"identifier\": \"Q4 Reports\" }, { \"type\": \"COLLECTION\", \"identifier\": \"Executive Dashboard Collection\" } ], \"permissions\": [{ \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Executives\" }, \"share_mode\": \"MODIFY\" }, { \"principal\": { \"type\": \"USER\", \"identifier\": \"manager@company.com\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"MODIFY\" }], \"notification\": { \"message\": \"Sharing quarterly collections with leadership team\", \"notify_on_share\": true } } ``` ### Remove collection access Remove access to a collection by setting share_mode to NO_ACCESS: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Confidential Reports\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"former-employee@company.com\" }, \"share_mode\": \"NO_ACCESS\" }], \"notification\": { \"notify_on_share\": false } } ``` ### Collection Permission Scenarios **Scenario 1: Collection Admin** - `share_mode: MODIFY` + `content_share_mode: MODIFY` = Full control over collection and its contents **Scenario 2: Collection Curator** - `share_mode: MODIFY` + `content_share_mode: READ_ONLY` = Can manage collection structure but not edit contents **Scenario 3: Content Editor** - `share_mode: READ_ONLY` + `content_share_mode: MODIFY` = Can edit objects within collection but can\'t change collection itself **Scenario 4: Viewer** - `share_mode: READ_ONLY` + `content_share_mode: READ_ONLY` = View-only access to collection and contents * @param shareMetadataRequest */ shareMetadata(shareMetadataRequest: ShareMetadataRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Processes a natural language query against a specified data model and returns a single AI-generated answer without requiring a conversation session. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `query`: a natural language question (e.g., \"What were total sales last quarter?\") - `metadata_identifier`: the unique ID of the data source to query against If the request is successful, the API returns a response message containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param singleAnswerRequest */ singleAnswer(singleAnswerRequest: SingleAnswerRequest, _options?: Configuration): Promise; /** * Stops an in-progress agent conversation response. Version: 26.6.0.cl or later Version: 26.6.0.cl or later Stops an in-progress agent response for the specified conversation. Use this endpoint to cancel a response that is actively being generated — for example, when the user navigates away, reformulates their question, or no longer needs the current result. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation whose active response should be stopped, as returned by `createAgentConversation` A successful request returns an empty `204 No Content` response. If there is no active response in progress at the time of the call, the request is still treated as successful. After stopping a response, the conversation session remains active. You can continue sending messages using `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming`. #### Example request ```bash POST /api/rest/2.0/ai/agent/conversation/{conversation_identifier}/stop-response ``` #### Typical usage scenario This endpoint is useful when integrating Spotter into a chat UI where users can cancel a long-running query. For example: 1. User sends a message via `sendAgentConversationMessageStreaming`. 2. User clicks a \"Stop generating\" button while the response is streaming. 3. Your client calls `stopConversation` with the active `conversation_identifier`. 4. The stream is terminated and the user can ask a new question. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | > ###### Note: > > - Calling this endpoint when no response is in progress does not return an error. > - The conversation context is preserved after stopping — previous messages and answers remain accessible. > - Available from version 26.6.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - This feature is available only for **Spotter 3** (`SPOTTER3`) version. * @param conversationIdentifier Unique identifier of the conversation to stop. */ stopConversation(conversationIdentifier: string, _options?: Configuration): Promise; /** * Version: 26.5.0.cl or later Synchronizes connection metadata attributes from your Cloud Data Warehouse (CDW) with ThoughtSpot. Requires the `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. #### Usage guidelines To synchronize attributes from a CDW, specify the connection GUID or name in the `connection_identifier` path parameter and `sync_attributes` in the request body. Default attribute is `[\"DESCRIPTION\"]`. ##### Hierarchical schema * Connection: The connection object for the sync operation. * Tables: Tables for the sync operation. When no table is specified, all tables are synchronized. * Columns: If the table is specified, you can add the columns for the sync operation. If no columns are specified, all columns in the specified table are considered for the sync operation. To set the scope for the sync operation: * Connection-level: To sync all tables and columns, pass an empty request body, or only the attributes in the request body. * Table-level: To synchronize specific tables and their columns, specify the table identifiers in the `tables` array. * Column-level: To synchronize specific columns, specify the table identifier as the key and column identifiers as the value in the `tables` array. ``` { \"tables\": [ {\"table-guid-1\": [\"column-guid-1\", \"column-guid-2\"]}, \"table-guid-2\" ], \"sync_attributes\": [\"DESCRIPTION\"] } ``` ##### API response If the sync operation is successful, the API returns the following information: * Status of the sync operation. For example, `SUCCESS`, `PARTIAL_SUCCESS`, or `NO_UPDATE`. * Number of tables and columns that were updated. * Number of tables and columns with the sync failed status when the overall sync status is `PARTIAL_SUCCESS`. * Message text indicating the sync results. * @param connectionIdentifier Unique ID or name of the connection. * @param syncMetadataRequest */ syncMetadata(connectionIdentifier: string, syncMetadataRequest: SyncMetadataRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Removes the tags applied to a Liveboard, Answer, Table, or Worksheet. Requires edit access to the metadata object. * @param unassignTagRequest */ unassignTag(unassignTagRequest: UnassignTagRequest, _options?: Configuration): Promise; /** * Remove parameterization from fields in metadata objects. Version: 26.10.0.cl or later Allows removing parameterization from fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows unparameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be unparameterized. For Connection Config, the only supported field name is: * impersonate_user ## Restored value The endpoint has two mutually exclusive modes, and the value that is restored differs per mode: * Single-field mode (`field_name` + `value`) restores the supplied `value`. * Bulk mode (`metadata_entries`) ignores `value` and restores the Primary org (`org_id=0`) value of the variable bound to the field, even when the request is made from a secondary org. In bulk mode, a secret Connection field bound to a sensitive variable is restored from the variable\'s Primary-org secret. Bulk mode has no partial success. The request fails with `400` and nothing is changed if any field: * is a non-secret field bound to a sensitive variable, * is bound to a per-principal variable, whose value is user-specific or group-specific, * has a variable that cannot be read, because it is deleted or not visible to you, * has no Primary-org value, or * is a secret field whose value is unavailable from the secure store, which includes the case where the Confidant Vault is disabled, since the restored secret could then not be stored securely. Such a field can still be unparameterized individually in single-field mode with an explicit `value`. Duplicate entries for the same object and field are coalesced. * @param unparameterizeMetadataRequest */ unparameterizeMetadata(unparameterizeMetadataRequest: UnparameterizeMetadataRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Allows unpublishing metadata objects from organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows unpublishing the following types of metadata objects: * Liveboards * Answers * Logical Tables When unpublishing objects, you can: * Include dependencies by setting `include_dependencies` to true - this will unpublish all dependent objects if no other published object is using them * Force unpublish by setting `force` to true - this will break all dependent objects in the unpublished organizations * @param unpublishMetadataRequest */ unpublishMetadata(unpublishMetadataRequest: UnpublishMetadataRequest, _options?: Configuration): Promise; /** * Updates a Spotter Analyst. The request body is identical to `createAnalyst` and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset (no instructions, no MCP connectors, no starter prompts). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot edit it. Version: 26.10.0.cl or later Updates a Spotter Analyst. The request body is identical to the create analyst API, and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with can use it but cannot edit it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior. Instructions that conflict with system guardrails are rejected with `409`. Omitting this field clears any existing instructions. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). Replaces the existing list in full. When new sources are added, they are automatically shared with users the analyst was previously shared with, so those users keep a working analyst. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors. Replaces the existing list in full; omit or pass an empty array to clear. - `starter_prompts` (optional): up to 4 plain-text prompts, each between 10 and 250 characters; display order follows list position. Replaces the existing list in full; omit or pass an empty array to clear. If the request is successful, the response contains the updated analyst, including the refreshed `updated_time_in_millis` timestamp (epoch milliseconds) and `updated_by` user. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, and starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`). #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to update. * @param updateAnalystRequest */ updateAnalyst(analystIdentifier: string, updateAnalystRequest: UpdateAnalystRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Updates the properties of a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can update the properties of a calendar using one of the following methods: * `FROM_INPUT_PARAMS` to update the calendar properties with the values defined in the API request. * `FROM_EXISTING_TABLE` Creates a calendar from the parameters defined in the API request. To update a custom calendar, specify the calendar ID as a path parameter in the request URL and the following parameters in the request body: * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. The 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. #### Examples Update a custom calendar using an existing Table in ThoughtSpot: ``` { \"update_method\": \"FROM_EXISTING_TABLE\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" } } ``` Update a custom calendar with the attributes defined in the API request: ``` { \"update_method\": \"FROM_INPUT_PARAMS\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" }, \"month_offset\": \"August\", \"start_day_of_week\": \"Monday\", \"start_date\": \"08/01/2025\", \"end_date\": \"07/31/2026\" } ``` * @param calendarIdentifier Unique Id or name of the calendar. * @param updateCalendarRequest */ updateCalendar(calendarIdentifier: string, updateCalendarRequest: UpdateCalendarRequest, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Updates an existing collection in ThoughtSpot. #### Supported operations This API endpoint lets you perform the following operations: * Update collection name and description * Change visibility settings * Add metadata objects to the collection (operation: ADD) * Remove metadata objects from the collection (operation: REMOVE) * Replace all metadata objects in the collection (operation: REPLACE) #### Operation types * **ADD**: Adds the specified metadata objects to the existing collection without removing current items * **REMOVE**: Removes only the specified metadata objects from the collection * **REPLACE**: Replaces all existing metadata objects with the specified items (default behavior) * @param collectionIdentifier Unique GUID of the collection. Note: Collection names cannot be used as identifiers since duplicate names are allowed. * @param updateCollectionRequest */ updateCollection(collectionIdentifier: string, updateCollectionRequest: UpdateCollectionRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Creates, updates, or deletes column security rules for specified tables. This 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. #### Usage guidelines - Provide table identifier using either `identifier` (GUID or name) or `obj_identifier` (object ID) - Use `clear_csr: true` to remove all column security rules from the table - For each column, specify the security rule using `column_security_rules` array - Use `is_unsecured: true` to mark a specific column as unprotected - Use `group_access` operations to manage group associations: - `ADD`: Add groups to the column\'s access list - `REMOVE`: Remove groups from the column\'s access list - `REPLACE`: Replace all existing groups with the specified groups #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data (if RBAC is disabled) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables (if RBAC is enabled) #### Example request ```json { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\", \"clear_csr\": false, \"column_security_rules\": [ { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"ADD\", \"group_identifiers\": [\"hr_group_id\", \"hr_group_name\", \"finance_group_id\"] } ] }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": true }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"REPLACE\", \"group_identifiers\": [\"management_group_id\", \"management_group_name\"] } ] } ] } ``` #### Request Body Schema - `identifier` (string, optional): GUID or name of the table for which we want to create column security rules - `obj_identifier` (string, optional): The object ID of the table - `clear_csr` (boolean, optional): If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed - `column_security_rules` (array of objects, required): An array where each object defines the security rule for a specific column Each column security rule object contains: - `column_identifier` (string, required): Column identifier (col_id or name) - `is_unsecured` (boolean, optional): If true, the column will be marked as unprotected and all groups associated with it will be removed - `group_access` (array of objects, optional): Array of group operation objects Each group operation object contains: - `operation` (string, required): Operation type - ADD, REMOVE, or REPLACE - `group_identifiers` (array of strings, required): Array of group identifiers (name or GUID) on which the operation will be performed #### Response This API does not return any response body. A successful operation returns HTTP 200 status code. #### Operation Types - **ADD**: Adds the specified groups to the column\'s access list - **REMOVE**: Removes the specified groups from the column\'s access list - **REPLACE**: Replaces all existing groups with the specified groups * @param updateColumnSecurityRulesRequest */ updateColumnSecurityRules(updateColumnSecurityRulesRequest: UpdateColumnSecurityRulesRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Updates Git repository configuration settings. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param updateConfigRequest */ updateConfig(updateConfigRequest: UpdateConfigRequest, _options?: Configuration): Promise; /** * @deprecated * * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Update connection V2](#/http/api-endpoints/connections/update-connection-v2) endpoint to update your connection objects. #### Usage guidelines Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. * @param updateConnectionRequest */ updateConnection(updateConnectionRequest: UpdateConnectionRequest, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Updates a connection configuration object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit the name or description of the configuration * Edit the configuration properties * Edit the `policy_type` * Edit the type of authentication * Enable or disable a configuration #### Parameterized Connection Support For 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. **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`. * @param configurationIdentifier Unique ID or name of the configuration. * @param updateConnectionConfigurationRequest */ updateConnectionConfiguration(configurationIdentifier: string, updateConnectionConfigurationRequest: UpdateConnectionConfigurationRequest, _options?: Configuration): Promise; /** * Version: 26.6.0.cl or later Activates or deactivates a connection. A deactivated connection cannot be used for queries or operations until it is activated again. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [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. Only the connection owner or an administrator can perform this operation. #### Usage guidelines To update the status of a connection, specify the connection GUID or name in the `connection_identifier` path parameter and the desired `status` in the request body. - **ACTIVATED**: Enables the connection. Queries and operations can resume on an activated connection. - **DEACTIVATED**: Disables the connection. It does not remove the connection metadata, but only makes the connection unavailable for queries and operations. You can reactivate a deactivated connection by setting \"status\": \"ACTIVATED\". * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionStatusRequest */ updateConnectionStatus(connectionIdentifier: string, updateConnectionStatusRequest: UpdateConnectionStatusRequest, _options?: Configuration): Promise; /** * Version: 10.4.0.cl or later Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: * This is an example of updating a single table in a empty connection: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"DEMORENAME\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"Col1\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col2\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col3\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col312\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col4\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` * This is an example of updating a single table in an existing connection with tables: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"CUSTOMER\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [], \"relationships\": [] }, { \"name\": \"tpch5k_falcon_default_schema_users\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"user_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"product_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"user_cost\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a Snowflake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"databases\":[\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionV2Request */ updateConnectionV2(connectionIdentifier: string, updateConnectionV2Request: UpdateConnectionV2Request, _options?: Configuration): Promise; /** * Updates attributes of an existing agent conversation. Supports updating the display title and the pinned state; additional conversation attributes may be supported in future versions. At least one updatable attribute must be provided in the request body. Each attribute is applied independently, so omitted attributes are left unchanged. Version: 26.7.0.cl or later Updates attributes of an existing saved agent conversation. Supports updating the conversation\'s display `title` and its `is_pinned` state; additional updatable attributes may be supported in future versions. At least one updatable attribute must be supplied in the request body. Use this endpoint to rename a conversation, or to pin a conversation so that it is surfaced first in the conversation list for quick access. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being updated. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to update, as returned by `createAgentConversation` or `getConversationList` - At least one updatable attribute in the request body: - `title` *(optional)*: the new display name for the conversation. An empty or whitespace-only value is replaced with a default title rather than rejected. - `is_pinned` *(optional)*: `true` to pin the conversation, `false` to unpin it. Available from version 26.10.0.cl. Each attribute is applied independently: omitted attributes are left unchanged, so you can update the title and the pinned state in a single request or in separate requests. Updating `is_pinned` is idempotent — pinning an already-pinned conversation, or unpinning an already-unpinned one, succeeds with no side effects. A successful request returns an empty `204 No Content` response. Updated attributes are reflected immediately in subsequent calls to `getConversationList`. #### Example request Rename a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\" } ``` Pin a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"is_pinned\": true } ``` Update both attributes in a single request: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\", \"is_pinned\": true } ``` #### Error responses | Code | Description | |------|-------------| | 400 | Bad Request — the request body supplies neither `title` nor `is_pinned`, or `is_pinned` is not a boolean. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | | 422 | Unprocessable Entity — the request body is malformed or contains an invalid field value. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` can be updated. Unsaved conversations are not persisted and do not have a retrievable identifier. > - There is no limit on the number of conversations a user can pin. > - Available from version 26.7.0.cl and later. The `is_pinned` attribute is available from version 26.10.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to update. * @param updateConversationRequest */ updateConversation(conversationIdentifier: string, updateConversationRequest: UpdateConversationRequest, _options?: Configuration): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Updates a custom action. 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. #### Usage Guidelines The API allows you to modify the following properties: * Name of the custom action * Action availability to groups * Association to metadata objects * Authentication settings for a URL-based action For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param customActionIdentifier Unique ID or name of the custom action. * @param updateCustomActionRequest */ updateCustomAction(customActionIdentifier: string, updateCustomActionRequest: UpdateCustomActionRequest, _options?: Configuration): Promise; /** * Version: 9.9.0.cl or later Updates a DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About update DBT connection You can modify DBT connection object properties such as embrace connection name, embrace database name, import type, account identifier, access token, project identifier and environment (or) embrace connection, embrace database name, import type, file_content settings. * @param dbtConnectionIdentifier Unique ID of the DBT Connection. * @param connectionName Name of the connection. * @param databaseName Name of the Database. * @param importType Mention type of Import * @param accessToken Access token is mandatory when Import_Type is DBT_CLOUD. * @param dbtUrl DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param accountId Account ID is mandatory when Import_Type is DBT_CLOUD * @param projectId Project ID is mandatory when Import_Type is DBT_CLOUD * @param dbtEnvId DBT Environment ID\\\" * @param projectName Name of the project * @param fileContent Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ updateDbtConnection(dbtConnectionIdentifier: string, connectionName?: string, databaseName?: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: Configuration): Promise; /** * Version: 10.12.0.cl or later Updates a customization configuration for the notification email. #### 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 To update a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param updateEmailCustomizationRequest */ updateEmailCustomization(updateEmailCustomizationRequest: UpdateEmailCustomizationRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Updates the Org assignments for a feature. Available to cluster admins only. #### Pre-requisites Requires the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege in the cluster-admin (All-Org / default-org) context. This endpoint manages Org assignments across the cluster, so it must be called by a cluster admin; org-scoped admins cannot call it. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To update the Org assignments for a feature, pass these parameters in your API request: - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature to update. - `org_identifiers` — Numeric IDs of the Orgs to assign. Send an empty array with `operation` set to `REPLACE` to clear all Org assignments for this feature. - `operation` — Type of update to apply. `ADD` assigns the given Orgs in addition to the existing ones; `REMOVE` unassigns the given Orgs; `REPLACE` sets the assignment to exactly the given Orgs. Defaults to `REPLACE`. The following example assigns Orgs `1` and `2` to a feature, in addition to any Orgs already assigned: ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [1, 2], \"operation\": \"ADD\" } ``` Clear all Org assignments for a feature by sending an empty array with `operation` set to `REPLACE` (this is the only way to unassign every Org at once): ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [], \"operation\": \"REPLACE\" } ``` * @param updateFeatureAssignmentsRequest */ updateFeatureAssignments(updateFeatureAssignmentsRequest: UpdateFeatureAssignmentsRequest, _options?: Configuration): Promise; /** * Version: 26.10.0.cl or later Sets the value of a feature at the cluster or Org scope. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To set a feature value, pass these parameters in your API request: - `scope` — Determines the scope at which the value is set. Use `CLUSTER` to set the cluster-level value; use `ORG` to set a per-Org value override. - `org_identifier` — Numeric ID of the Org for which to set the value. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature whose value should be set. - `feature_value` — New value to set for the feature. - `reset_org_overrides` — Applicable only when `scope` is `CLUSTER`. When `true`, any existing per-Org value overrides for this feature are also removed so that all Orgs inherit the new cluster-level value. Required when `scope` is `CLUSTER` for an org-aware feature. Must be omitted when `scope` is `ORG`; passing it at `ORG` scope returns a 400 error. The following example sets a per-Org value override for Org `1`: ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\" } ``` Set the cluster-level value and clear all per-Org overrides so every Org inherits the new value (CLUSTER scope). `reset_org_overrides: true` is destructive — it strips existing per-Org overrides cluster-wide: ``` { \"scope\": \"CLUSTER\", \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\", \"reset_org_overrides\": true } ``` * @param updateFeatureValueRequest */ updateFeatureValue(updateFeatureValueRequest: UpdateFeatureValueRequest, _options?: Configuration): Promise; /** * Update header attributes for a given list of header objects. Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **headers_update** - **Description:** List of header objects with their attributes to be updated. Each object contains a list of attributes to be updated in the header. - **Usage:** - You must provide either `identifier` or `obj_identifier`, but not both. Both fields cannot be empty. - When `org_identifier` is set to `-1`, only the `identifier` value is accepted; `obj_identifier` is not allowed. 2. **org_identifier** - **Description:** GUID (Globally Unique Identifier) or name of the organization. - **Usage:** - Leaving this field empty assumes that the changes should be applied to the current organization - Provide `org_guid` or `org_name` to uniquely identify the organization where changes need to be applied. . - Provide `-1` if changes have to be applied across all the org. --- ## Note Currently, this API is enabled only for updating the `obj_identifier` attribute. Only `text` will be allowed in attribute\'s value. ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the update process --- ## Examples ### Only `identifier` is given ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"obj_identifier\": \"\", \"type\": \"LOGICAL_COLUMN\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgGuid\" } ``` ### Only `obj_identifier` is given ```json { \"headers_update\": [ { \"obj_identifier\": \"custom_object_id\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgName\" } ``` ### Executing update for all org `-1` ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` ### Optional `type` is not provided ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` * @param updateMetadataHeaderRequest */ updateMetadataHeader(updateMetadataHeaderRequest: UpdateMetadataHeaderRequest, _options?: Configuration): Promise; /** * Update object IDs for given metadata objects. Version: 10.8.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **metadata** - **Description:** List of metadata objects to update their object IDs. - **Usage:** - Use either `current_obj_id` alone OR use `metadata_identifier` with `type` (when needed). - When using `metadata_identifier`, the `type` field is required if using a name instead of a GUID. - The `new_obj_id` field is always required. --- ## Note This API is specifically designed for updating object IDs of metadata objects. It internally uses the header update mechanism to perform the changes. ## Best Practices 1. **Backup Before Update:** Always export metadata as a backup before initiating the update process. 2. **Validation:** - When using `current_obj_id`, ensure it matches the existing object ID exactly. - When using `metadata_identifier` with a name, ensure the `type` is specified correctly. - Verify that the `new_obj_id` follows your naming conventions and is unique within your system. --- ## Examples ### Using current_obj_id ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with GUID ```json { \"metadata\": [ { \"metadata_identifier\": \"01234567-89ab-cdef-0123-456789abcdef\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with name and type ```json { \"metadata\": [ { \"metadata_identifier\": \"My Answer\", \"type\": \"ANSWER\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Multiple objects update ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id_1\", \"new_obj_id\": \"new_object_id_1\" }, { \"metadata_identifier\": \"My Worksheet\", \"type\": \"LOGICAL_TABLE\", \"new_obj_id\": \"new_object_id_2\" } ] } ``` * @param updateMetadataObjIdRequest */ updateMetadataObjId(updateMetadataObjIdRequest: UpdateMetadataObjIdRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates an Org object. You can modify Org properties such as name, description, and user associations. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param orgIdentifier ID or name of the Org * @param updateOrgRequest */ updateOrg(orgIdentifier: string, updateOrgRequest: UpdateOrgRequest, _options?: Configuration): Promise; /** * Version: 9.5.0.cl or later Updates the properties of a Role object. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To update a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. * @param updateRoleRequest */ updateRole(roleIdentifier: string, updateRoleRequest: UpdateRoleRequest, _options?: Configuration): Promise; /** * Update schedule. Version: 9.4.0.cl or later Updates a scheduled Liveboard job. Requires at least edit access to Liveboards. To update a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, changing a schedule\'s `file_format` also requires the download privilege that corresponds to the selected format: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. The API endpoint allows you to pause a scheduled job, change the status of a paused job. You can also edit the recipients list, frequency of the job, format of the file to send to the recipients in email notifications, PDF options, and time zone setting. * @param scheduleIdentifier Unique ID or name of the schedule. * @param updateScheduleRequest */ updateSchedule(scheduleIdentifier: string, updateScheduleRequest: UpdateScheduleRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Updates style preferences at cluster level or for the authenticated user\'s org, including navigation panel color, chart color palette, embedded footer text, logo, and font assignments per visualization area. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Resetting an Org-level preference falls back to Cluster-level preference, which on reset falls back to system defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines Two operations are supported via the `operation` field: - **REPLACE** (default): Applies the fields provided in the request. Omitted fields remain unchanged. - **RESET**: Reverts specific fields to defaults. Specify which fields to reset using `reset_options.style` (for style fields) and `reset_options.visualization_areas` (for font assignments). Fields not listed in `reset_options` are not affected. #### Logo upload Logo files are uploaded as binary fields using `multipart/form-data`: - `default_logo`: Square app icon and favicon. Recommended size: 140×140 px. Accepted formats: PNG, JPG. - `wide_logo`: Horizontal top nav bar logo. Recommended size: 230×45 px. Accepted formats: PNG, JPG. To reset a logo to the default, use `operation: RESET` with `reset_options.style` set to `DEFAULT_LOGO` or `WIDE_LOGO`. #### Navigation panel color Set `navigation_panel.theme` to one of: - `DARK`: Default dark theme. - `TWO_TONE`: Dual-tone panel style. - `CUSTOM`: User-defined color. Provide `navigation_panel.base_color` as a 6-digit hex string (e.g. `#2359B6`). #### App color theme `app_color_theme` (_available from 26.10.0.cl_) sets the same underlying color as `navigation_panel`, expressed as a brand color plus how it is applied. Provide exactly one of `navigation_panel` or `app_color_theme` per request; providing both returns an error. `app_color_theme` is supported only when the app color theme is enabled on the cluster; using it otherwise returns an error. - `brand_color`: Brand color as a 6-digit hex string (e.g. `#2359B6`). Omit to leave the stored color unchanged. To clear it, use `operation: RESET` with `reset_options.style` set to `APP_COLOR_THEME`. - `apply_as_top_nav_color`: Whether the brand color is painted on the top navigation bar literally, instead of the surface shade generated from it. Omit to leave the stored choice unchanged. `brand_color` and `apply_as_top_nav_color` may be set independently in the same request. #### Chart color palette Provide exactly 8 color entries in `chart_color_palette.colors`. Each entry requires a `primary` hex color. If `secondary` shades are omitted, the server auto-generates 4 shades from the primary color. #### Font assignments Specify `visualization_fonts.chart_visualization_fonts`, `visualization_fonts.table_visualization_fonts`, and `visualization_fonts.advanced_chart_visualization_fonts` to assign custom fonts to specific visualization areas. Only provide the areas you want to update; omitted areas remain unchanged. * @param scope Scope at which to apply the preferences. CLUSTER sets cluster-level defaults for all orgs. ORG applies to the authenticated user\\\'s org. * @param operation Operation to perform. REPLACE (default) applies the provided fields and leaves omitted fields unchanged. RESET reverts fields listed in reset_options to defaults. * @param resetOptions Fields to reset when operation is RESET. Specify style fields and visualization areas to revert to defaults. * @param navigationPanel Navigation panel color. Provide theme and, when theme is CUSTOM, also provide base_color. * @param chartColorPalette Chart color palette. When provided with operation REPLACE, exactly 8 color entries must be specified in colors. * @param embeddedFooterText Custom footer text for the embedded application. An empty string clears the footer. * @param visualizationFonts Font assignments per visualization area. Provide only the areas to update; omitted areas remain unchanged. * @param defaultLogo Binary image for the DEFAULT logo slot (square app icon and favicon; recommended 140x140 px). Accepted formats: PNG, JPG. * @param wideLogo Binary image for the WIDE logo slot (horizontal top nav bar logo; recommended 230x45 px). Accepted formats: PNG, JPG. */ updateStyleCustomization(scope: string, operation?: string, resetOptions?: StyleResetOptionsInput, navigationPanel?: NavigationPanelInput, chartColorPalette?: StyleColorPaletteInput, embeddedFooterText?: string, visualizationFonts?: VisualizationFontsInput, defaultLogo?: HttpFile, wideLogo?: HttpFile, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Updates the metadata of an existing custom font in the cluster-level or org-level font library. Only the fields provided in the request are modified; omitted fields remain unchanged. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Identify the font using `font_identifier` (UUID or name). - Set `scope` to `CLUSTER` to target the cluster-level library. Set `scope` to `ORG` (default) to target the authenticated user\'s org library. - To replace the font file itself (WOFF/WOFF2 binary), delete the existing font and re-upload using `uploadStyleFont`. - `color` must be a valid 6-digit hex string (e.g. `#333333`) if provided. * @param fontIdentifier UUID or name of the font to update. * @param updateStyleFontRequest */ updateStyleFont(fontIdentifier: string, updateStyleFontRequest: UpdateStyleFontRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Updates the current configuration of the cluster. You must send the configuration data in JSON format. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. * @param updateSystemConfigRequest */ updateSystemConfig(updateSystemConfigRequest: UpdateSystemConfigRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates a tag object. You can modify the `name` and `color` properties of a tag object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Name or Id of the tag. * @param updateTagRequest */ updateTag(tagIdentifier: string, updateTagRequest: UpdateTagRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates the properties of a user object. You can modify user properties such as username, email, and share notification settings. You can also assign new groups and Orgs, remove the user from a group or Org, reset password, and modify user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user * @param updateUserRequest */ updateUser(userIdentifier: string, updateUserRequest: UpdateUserRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates the properties of a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit [privileges](https://developers.thoughtspot.com/docs/?pageid=api-user-management#group-privileges) * Add or remove users * Change sharing visibility settings * Add or remove sub-groups * Assign a default Liveboard or update the existing settings * @param groupIdentifier GUID or name of the group. * @param updateUserGroupRequest */ updateUserGroup(groupIdentifier: string, updateUserGroupRequest: UpdateUserGroupRequest, _options?: Configuration): Promise; /** * Update a variable\'s name Version: 26.4.0.cl or later Allows updating a variable\'s name in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows updating: * The variable name * @param identifier Unique id, name, or object id of the variable to update. * @param updateVariableRequest */ updateVariable(identifier: string, updateVariableRequest: UpdateVariableRequest, _options?: Configuration): Promise; /** * @deprecated * * Update values for multiple variables Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/{identifier}/update-values](/api/rest/2.0/template/variables/%7Bidentifier%7D/update-values) instead. Allows updating values for multiple variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to variables * Replacing existing values * Deleting values from variables When updating variable values, you need to specify: * The variable identifiers * The values to add/replace/remove for each variable * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constrains for a given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param updateVariableValuesRequest */ updateVariableValues(updateVariableValuesRequest: UpdateVariableValuesRequest, _options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Updates an existing webhook configuration by its unique id or name. With the default `REPLACE` operation, only the provided fields are updated. Use the `RESET` operation with `reset_options` to clear an optional configuration section, such as authentication or the storage destination. A `RESET` request cannot carry any other field. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param webhookIdentifier Unique ID or name of the webhook configuration. * @param updateWebhookConfigurationRequest */ updateWebhookConfiguration(webhookIdentifier: string, updateWebhookConfigurationRequest: UpdateWebhookConfigurationRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Uploads a custom font to the cluster-level or org-level font library. Cluster-level fonts are available as defaults for all orgs. Org-level fonts are only available within that org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Only **WOFF** and **WOFF2** font formats are accepted. TTF and OTF files are rejected with an error. - Set `scope` to `CLUSTER` to upload to the cluster-level library. Set `scope` to `ORG` (default) to upload to the authenticated user\'s org library. - `weight` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `LIGHT`, `BOLD`. - `style` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `ITALIC`, `OBLIQUE`. - `color` defaults to `#000000` (black) if omitted. Provide as a 6-digit hex string (e.g. `#333333`). - The uploaded font can be assigned to visualization areas using the `updateStyleCustomization` endpoint. * @param name Display name for the font (e.g. \\\"Acme Sans\\\"). * @param fileContent Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats are accepted; TTF and OTF are rejected. The file is validated on upload. * @param scope Scope of the font library to upload to. CLUSTER uploads to the cluster-level library, making the font available as a default for all orgs. ORG uploads to the authenticated user\\\'s org library. Defaults to ORG if omitted. * @param weight Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to NORMAL if omitted. * @param style Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults to NORMAL if omitted. * @param color Color of the font as a 6-digit hex string (e.g. \\\"#333333\\\"). Defaults to #000000 (black) if omitted. Returns an error if the value is malformed. */ uploadStyleFont(name: string, fileContent: HttpFile, scope?: string, weight?: string, style?: string, color?: string, _options?: Configuration): Promise; /** * Version: 26.4.0.cl or later Validates a communication channel configuration to ensure it is properly set up and can receive events. - Use `channel_type` to specify the type of communication channel to validate (e.g., WEBHOOK). - Use `channel_identifier` to provide the unique identifier or name for the communication channel. - Use `event_type` to specify the event type to validate for this channel. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. For webhook channels, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param validateCommunicationChannelRequest */ validateCommunicationChannel(validateCommunicationChannelRequest: ValidateCommunicationChannelRequest, _options?: Configuration): Promise; /** * Version: 10.10.0.cl or later Validates the email customization configuration if any set for the ThoughtSpot system. #### 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. */ validateEmailCustomization(_options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Validates the content of your source branch against the objects in your destination environment. Before merging content from your source branch to the destination branch, run this API operation from your destination environment and ensure that the changes from the source branch function in the destination environment. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param validateMergeRequest */ validateMerge(validateMergeRequest: ValidateMergeRequest, _options?: Configuration): Promise; /** * Version: 9.12.0.cl or later Validates the authentication token specified in the API request. If your token is not valid, [Get a new token](#/http/api-endpoints/authentication/get-full-access-token). * @param validateTokenRequest */ validateToken(validateTokenRequest: ValidateTokenRequest, _options?: Configuration): Promise; } declare class ThoughtSpotRestApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to activateUser * @throws ApiException if the response code was not in [200, 299] */ activateUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to assignChangeAuthor * @throws ApiException if the response code was not in [200, 299] */ assignChangeAuthorWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to assignTag * @throws ApiException if the response code was not in [200, 299] */ assignTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to changeUserPassword * @throws ApiException if the response code was not in [200, 299] */ changeUserPasswordWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to commitBranch * @throws ApiException if the response code was not in [200, 299] */ commitBranchWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to configureAuthSettings * @throws ApiException if the response code was not in [200, 299] */ configureAuthSettingsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to configureCommunicationChannelPreferences * @throws ApiException if the response code was not in [200, 299] */ configureCommunicationChannelPreferencesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to configureSecuritySettings * @throws ApiException if the response code was not in [200, 299] */ configureSecuritySettingsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to connectionConfigurationSearch * @throws ApiException if the response code was not in [200, 299] */ connectionConfigurationSearchWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to convertWorksheetToModel * @throws ApiException if the response code was not in [200, 299] */ convertWorksheetToModelWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to copyObject * @throws ApiException if the response code was not in [200, 299] */ copyObjectWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createAgentConversation * @throws ApiException if the response code was not in [200, 299] */ createAgentConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createAnalyst * @throws ApiException if the response code was not in [200, 299] */ createAnalystWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createCalendar * @throws ApiException if the response code was not in [200, 299] */ createCalendarWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createCollection * @throws ApiException if the response code was not in [200, 299] */ createCollectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createConfig * @throws ApiException if the response code was not in [200, 299] */ createConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createConnection * @throws ApiException if the response code was not in [200, 299] */ createConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createConnectionConfiguration * @throws ApiException if the response code was not in [200, 299] */ createConnectionConfigurationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createConversation * @throws ApiException if the response code was not in [200, 299] */ createConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createCustomAction * @throws ApiException if the response code was not in [200, 299] */ createCustomActionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ createEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createOrg * @throws ApiException if the response code was not in [200, 299] */ createOrgWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createRole * @throws ApiException if the response code was not in [200, 299] */ createRoleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createSchedule * @throws ApiException if the response code was not in [200, 299] */ createScheduleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createSemanticIntegration * @throws ApiException if the response code was not in [200, 299] */ createSemanticIntegrationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createTag * @throws ApiException if the response code was not in [200, 299] */ createTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createUser * @throws ApiException if the response code was not in [200, 299] */ createUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createUserGroup * @throws ApiException if the response code was not in [200, 299] */ createUserGroupWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createVariable * @throws ApiException if the response code was not in [200, 299] */ createVariableWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createWebhookConfiguration * @throws ApiException if the response code was not in [200, 299] */ createWebhookConfigurationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to dbtConnection * @throws ApiException if the response code was not in [200, 299] */ dbtConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to dbtGenerateSyncTml * @throws ApiException if the response code was not in [200, 299] */ dbtGenerateSyncTmlWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to dbtGenerateTml * @throws ApiException if the response code was not in [200, 299] */ dbtGenerateTmlWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to dbtSearch * @throws ApiException if the response code was not in [200, 299] */ dbtSearchWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deactivateUser * @throws ApiException if the response code was not in [200, 299] */ deactivateUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteAnalyst * @throws ApiException if the response code was not in [200, 299] */ deleteAnalystWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteCalendar * @throws ApiException if the response code was not in [200, 299] */ deleteCalendarWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteCollection * @throws ApiException if the response code was not in [200, 299] */ deleteCollectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConfig * @throws ApiException if the response code was not in [200, 299] */ deleteConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConnection * @throws ApiException if the response code was not in [200, 299] */ deleteConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConnectionConfiguration * @throws ApiException if the response code was not in [200, 299] */ deleteConnectionConfigurationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConnectionV2 * @throws ApiException if the response code was not in [200, 299] */ deleteConnectionV2WithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConversation * @throws ApiException if the response code was not in [200, 299] */ deleteConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteCustomAction * @throws ApiException if the response code was not in [200, 299] */ deleteCustomActionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteDbtConnection * @throws ApiException if the response code was not in [200, 299] */ deleteDbtConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ deleteEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteManualTranslations * @throws ApiException if the response code was not in [200, 299] */ deleteManualTranslationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteMetadata * @throws ApiException if the response code was not in [200, 299] */ deleteMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteOrg * @throws ApiException if the response code was not in [200, 299] */ deleteOrgWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteOrgEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ deleteOrgEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteRole * @throws ApiException if the response code was not in [200, 299] */ deleteRoleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteSchedule * @throws ApiException if the response code was not in [200, 299] */ deleteScheduleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteSemanticIntegration * @throws ApiException if the response code was not in [200, 299] */ deleteSemanticIntegrationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteStyleFonts * @throws ApiException if the response code was not in [200, 299] */ deleteStyleFontsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteTag * @throws ApiException if the response code was not in [200, 299] */ deleteTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteUser * @throws ApiException if the response code was not in [200, 299] */ deleteUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteUserGroup * @throws ApiException if the response code was not in [200, 299] */ deleteUserGroupWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteVariable * @throws ApiException if the response code was not in [200, 299] */ deleteVariableWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteVariables * @throws ApiException if the response code was not in [200, 299] */ deleteVariablesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteWebhookConfigurations * @throws ApiException if the response code was not in [200, 299] */ deleteWebhookConfigurationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deployCommit * @throws ApiException if the response code was not in [200, 299] */ deployCommitWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to downloadConnectionMetadataChanges * @throws ApiException if the response code was not in [200, 299] */ downloadConnectionMetadataChangesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportAnswerReport * @throws ApiException if the response code was not in [200, 299] */ exportAnswerReportWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportLiveboardReport * @throws ApiException if the response code was not in [200, 299] */ exportLiveboardReportWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportManualTranslations * @throws ApiException if the response code was not in [200, 299] */ exportManualTranslationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportMemory * @throws ApiException if the response code was not in [200, 299] */ exportMemoryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportMetadataTML * @throws ApiException if the response code was not in [200, 299] */ exportMetadataTMLWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportMetadataTMLBatched * @throws ApiException if the response code was not in [200, 299] */ exportMetadataTMLBatchedWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to exportStyleLogos * @throws ApiException if the response code was not in [200, 299] */ exportStyleLogosWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchAnswerData * @throws ApiException if the response code was not in [200, 299] */ fetchAnswerDataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchAnswerSqlQuery * @throws ApiException if the response code was not in [200, 299] */ fetchAnswerSqlQueryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchAsyncImportTaskStatus * @throws ApiException if the response code was not in [200, 299] */ fetchAsyncImportTaskStatusWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchColumnSecurityRules * @throws ApiException if the response code was not in [200, 299] */ fetchColumnSecurityRulesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchConnectionDiffStatus * @throws ApiException if the response code was not in [200, 299] */ fetchConnectionDiffStatusWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchLiveboardData * @throws ApiException if the response code was not in [200, 299] */ fetchLiveboardDataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchLiveboardSqlQuery * @throws ApiException if the response code was not in [200, 299] */ fetchLiveboardSqlQueryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchLogs * @throws ApiException if the response code was not in [200, 299] */ fetchLogsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchObjectPrivileges * @throws ApiException if the response code was not in [200, 299] */ fetchObjectPrivilegesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchPermissionsOfPrincipals * @throws ApiException if the response code was not in [200, 299] */ fetchPermissionsOfPrincipalsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to fetchPermissionsOnMetadata * @throws ApiException if the response code was not in [200, 299] */ fetchPermissionsOnMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to forceLogoutUsers * @throws ApiException if the response code was not in [200, 299] */ forceLogoutUsersWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to generateCSV * @throws ApiException if the response code was not in [200, 299] */ generateCSVWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getAgentInstructions * @throws ApiException if the response code was not in [200, 299] */ getAgentInstructionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getConversation * @throws ApiException if the response code was not in [200, 299] */ getConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getConversationList * @throws ApiException if the response code was not in [200, 299] */ getConversationListWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getCurrentUserInfo * @throws ApiException if the response code was not in [200, 299] */ getCurrentUserInfoWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getCurrentUserToken * @throws ApiException if the response code was not in [200, 299] */ getCurrentUserTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getCustomAccessToken * @throws ApiException if the response code was not in [200, 299] */ getCustomAccessTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getDataSourceSuggestions * @throws ApiException if the response code was not in [200, 299] */ getDataSourceSuggestionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getFullAccessToken * @throws ApiException if the response code was not in [200, 299] */ getFullAccessTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getManualTranslationBundle * @throws ApiException if the response code was not in [200, 299] */ getManualTranslationBundleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getNLInstructions * @throws ApiException if the response code was not in [200, 299] */ getNLInstructionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getObjectAccessToken * @throws ApiException if the response code was not in [200, 299] */ getObjectAccessTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getRelevantQuestions * @throws ApiException if the response code was not in [200, 299] */ getRelevantQuestionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getShareInfo * @throws ApiException if the response code was not in [200, 299] */ getShareInfoWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getSharedContent * @throws ApiException if the response code was not in [200, 299] */ getSharedContentWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getSystemConfig * @throws ApiException if the response code was not in [200, 299] */ getSystemConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getSystemInformation * @throws ApiException if the response code was not in [200, 299] */ getSystemInformationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getSystemOverrideInfo * @throws ApiException if the response code was not in [200, 299] */ getSystemOverrideInfoWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getWebhookStorageConfig * @throws ApiException if the response code was not in [200, 299] */ getWebhookStorageConfigWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importManualTranslations * @throws ApiException if the response code was not in [200, 299] */ importManualTranslationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importMemory * @throws ApiException if the response code was not in [200, 299] */ importMemoryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importMetadataTML * @throws ApiException if the response code was not in [200, 299] */ importMetadataTMLWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importMetadataTMLAsync * @throws ApiException if the response code was not in [200, 299] */ importMetadataTMLAsyncWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importSemanticIntegration * @throws ApiException if the response code was not in [200, 299] */ importSemanticIntegrationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importUserGroups * @throws ApiException if the response code was not in [200, 299] */ importUserGroupsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importUsers * @throws ApiException if the response code was not in [200, 299] */ importUsersWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to loadAnswer * @throws ApiException if the response code was not in [200, 299] */ loadAnswerWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to login * @throws ApiException if the response code was not in [200, 299] */ loginWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to logout * @throws ApiException if the response code was not in [200, 299] */ logoutWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to manageObjectPrivilege * @throws ApiException if the response code was not in [200, 299] */ manageObjectPrivilegeWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to parameterizeMetadata * @throws ApiException if the response code was not in [200, 299] */ parameterizeMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to parameterizeMetadataFields * @throws ApiException if the response code was not in [200, 299] */ parameterizeMetadataFieldsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to publishMetadata * @throws ApiException if the response code was not in [200, 299] */ publishMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to putVariableValues * @throws ApiException if the response code was not in [200, 299] */ putVariableValuesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to queryGetDecomposedQuery * @throws ApiException if the response code was not in [200, 299] */ queryGetDecomposedQueryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to resetUserPassword * @throws ApiException if the response code was not in [200, 299] */ resetUserPasswordWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to revertCommit * @throws ApiException if the response code was not in [200, 299] */ revertCommitWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to revokeRefreshTokens * @throws ApiException if the response code was not in [200, 299] */ revokeRefreshTokensWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to revokeToken * @throws ApiException if the response code was not in [200, 299] */ revokeTokenWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchAnalysts * @throws ApiException if the response code was not in [200, 299] */ searchAnalystsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchAuthSettings * @throws ApiException if the response code was not in [200, 299] */ searchAuthSettingsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCalendars * @throws ApiException if the response code was not in [200, 299] */ searchCalendarsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchChannelHistory * @throws ApiException if the response code was not in [200, 299] */ searchChannelHistoryWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCollections * @throws ApiException if the response code was not in [200, 299] */ searchCollectionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCommits * @throws ApiException if the response code was not in [200, 299] */ searchCommitsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCommunicationChannelPreferences * @throws ApiException if the response code was not in [200, 299] */ searchCommunicationChannelPreferencesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchConfig * @throws ApiException if the response code was not in [200, 299] */ searchConfigWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchConnection * @throws ApiException if the response code was not in [200, 299] */ searchConnectionWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCustomActions * @throws ApiException if the response code was not in [200, 299] */ searchCustomActionsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchData * @throws ApiException if the response code was not in [200, 299] */ searchDataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ searchEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchFeatures * @throws ApiException if the response code was not in [200, 299] */ searchFeaturesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchMetadata * @throws ApiException if the response code was not in [200, 299] */ searchMetadataWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchOrgs * @throws ApiException if the response code was not in [200, 299] */ searchOrgsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchRoles * @throws ApiException if the response code was not in [200, 299] */ searchRolesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchSchedules * @throws ApiException if the response code was not in [200, 299] */ searchSchedulesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchSecuritySettings * @throws ApiException if the response code was not in [200, 299] */ searchSecuritySettingsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchSemanticIntegrations * @throws ApiException if the response code was not in [200, 299] */ searchSemanticIntegrationsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchStyleCustomizations * @throws ApiException if the response code was not in [200, 299] */ searchStyleCustomizationsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchStyleFonts * @throws ApiException if the response code was not in [200, 299] */ searchStyleFontsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchTags * @throws ApiException if the response code was not in [200, 299] */ searchTagsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchUserGroups * @throws ApiException if the response code was not in [200, 299] */ searchUserGroupsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchUsers * @throws ApiException if the response code was not in [200, 299] */ searchUsersWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchVariables * @throws ApiException if the response code was not in [200, 299] */ searchVariablesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchWebhookConfigurations * @throws ApiException if the response code was not in [200, 299] */ searchWebhookConfigurationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendAgentConversationMessage * @throws ApiException if the response code was not in [200, 299] */ sendAgentConversationMessageWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendAgentConversationMessageStreaming * @throws ApiException if the response code was not in [200, 299] */ sendAgentConversationMessageStreamingWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendAgentMessage * @throws ApiException if the response code was not in [200, 299] */ sendAgentMessageWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendAgentMessageStreaming * @throws ApiException if the response code was not in [200, 299] */ sendAgentMessageStreamingWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to sendMessage * @throws ApiException if the response code was not in [200, 299] */ sendMessageWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to setAgentInstructions * @throws ApiException if the response code was not in [200, 299] */ setAgentInstructionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to setNLInstructions * @throws ApiException if the response code was not in [200, 299] */ setNLInstructionsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to shareAnalyst * @throws ApiException if the response code was not in [200, 299] */ shareAnalystWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to shareConversation * @throws ApiException if the response code was not in [200, 299] */ shareConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to shareMetadata * @throws ApiException if the response code was not in [200, 299] */ shareMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to singleAnswer * @throws ApiException if the response code was not in [200, 299] */ singleAnswerWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to stopConversation * @throws ApiException if the response code was not in [200, 299] */ stopConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to syncMetadata * @throws ApiException if the response code was not in [200, 299] */ syncMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to unassignTag * @throws ApiException if the response code was not in [200, 299] */ unassignTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to unparameterizeMetadata * @throws ApiException if the response code was not in [200, 299] */ unparameterizeMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to unpublishMetadata * @throws ApiException if the response code was not in [200, 299] */ unpublishMetadataWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateAnalyst * @throws ApiException if the response code was not in [200, 299] */ updateAnalystWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateCalendar * @throws ApiException if the response code was not in [200, 299] */ updateCalendarWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateCollection * @throws ApiException if the response code was not in [200, 299] */ updateCollectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateColumnSecurityRules * @throws ApiException if the response code was not in [200, 299] */ updateColumnSecurityRulesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConfig * @throws ApiException if the response code was not in [200, 299] */ updateConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConnection * @throws ApiException if the response code was not in [200, 299] */ updateConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConnectionConfiguration * @throws ApiException if the response code was not in [200, 299] */ updateConnectionConfigurationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConnectionStatus * @throws ApiException if the response code was not in [200, 299] */ updateConnectionStatusWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConnectionV2 * @throws ApiException if the response code was not in [200, 299] */ updateConnectionV2WithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConversation * @throws ApiException if the response code was not in [200, 299] */ updateConversationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateCustomAction * @throws ApiException if the response code was not in [200, 299] */ updateCustomActionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateDbtConnection * @throws ApiException if the response code was not in [200, 299] */ updateDbtConnectionWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ updateEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateFeatureAssignments * @throws ApiException if the response code was not in [200, 299] */ updateFeatureAssignmentsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateFeatureValue * @throws ApiException if the response code was not in [200, 299] */ updateFeatureValueWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateMetadataHeader * @throws ApiException if the response code was not in [200, 299] */ updateMetadataHeaderWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateMetadataObjId * @throws ApiException if the response code was not in [200, 299] */ updateMetadataObjIdWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateOrg * @throws ApiException if the response code was not in [200, 299] */ updateOrgWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateRole * @throws ApiException if the response code was not in [200, 299] */ updateRoleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateSchedule * @throws ApiException if the response code was not in [200, 299] */ updateScheduleWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateStyleCustomization * @throws ApiException if the response code was not in [200, 299] */ updateStyleCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateStyleFont * @throws ApiException if the response code was not in [200, 299] */ updateStyleFontWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateSystemConfig * @throws ApiException if the response code was not in [200, 299] */ updateSystemConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateTag * @throws ApiException if the response code was not in [200, 299] */ updateTagWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateUser * @throws ApiException if the response code was not in [200, 299] */ updateUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateUserGroup * @throws ApiException if the response code was not in [200, 299] */ updateUserGroupWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateVariable * @throws ApiException if the response code was not in [200, 299] */ updateVariableWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateVariableValues * @throws ApiException if the response code was not in [200, 299] */ updateVariableValuesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateWebhookConfiguration * @throws ApiException if the response code was not in [200, 299] */ updateWebhookConfigurationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to uploadStyleFont * @throws ApiException if the response code was not in [200, 299] */ uploadStyleFontWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to validateCommunicationChannel * @throws ApiException if the response code was not in [200, 299] */ validateCommunicationChannelWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to validateEmailCustomization * @throws ApiException if the response code was not in [200, 299] */ validateEmailCustomizationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to validateMerge * @throws ApiException if the response code was not in [200, 299] */ validateMergeWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to validateToken * @throws ApiException if the response code was not in [200, 299] */ validateTokenWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class UsersApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.7.0.cl or later Activates a deactivated user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To activate an inactive user account, the API request body must include the following information: - Username or the GUID of the user account. - Auth token generated for the deactivated user. The auth token is sent in the API response when a user is deactivated. - Password for the user account. * @param activateUserRequest */ activateUser(activateUserRequest: ActivateUserRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates the current password of the user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param changeUserPasswordRequest */ changeUserPassword(changeUserPasswordRequest: ChangeUserPasswordRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Creates a user in ThoughtSpot. The API endpoint allows you to configure several user properties such as email address, account status, share notification preferences, and sharing visibility. You can provision the user to [groups](https://docs.thoughtspot.com/cloud/latest/groups-privileges) and [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview). You can also add Liveboard, Answer, and Worksheet objects to the user’s favorites list, assign a default Liveboard for the user, and set user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param createUserRequest */ createUser(createUserRequest: CreateUserRequest, _options?: Configuration): Promise; /** * Version: 9.7.0.cl or later Deactivates a user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To deactivate a user account, the API request body must include the following information: - Username or the GUID of the user account - Base URL of the ThoughtSpot instance If the API request is successful, ThoughtSpot returns the activation URL in the response. The activation URL is valid for 14 days and can be used to re-activate the account and reset the password of the deactivated account. * @param deactivateUserRequest */ deactivateUser(deactivateUserRequest: DeactivateUserRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Deletes a user from the ThoughtSpot system. If you want to remove a user from a specific Org but not from ThoughtSpot, update the group and Org mapping properties of the user object via a POST API call to the [/api/rest/2.0/users/{user_identifier}/update](#/http/api-endpoints/users/update-user) endpoint. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user */ deleteUser(userIdentifier: string, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Enforces logout on current user sessions. Use this API with caution as it may invalidate active user sessions and force users to re-login. Make sure you specify the usernames or GUIDs. If you pass null values in the API call, all user sessions on your cluster become invalid, and the users are forced to re-login. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param forceLogoutUsersRequest */ forceLogoutUsers(forceLogoutUsersRequest: ForceLogoutUsersRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Imports user data from external databases into ThoughtSpot. During the user import operation: * If the specified users are not available in ThoughtSpot, the users are created and assigned a default password. Defining a `default_password` in the API request is optional. * If `delete_unspecified_users` is set to `true`, the users not specified in the API request, excluding the `tsadmin`, `guest`, `system` and `su` users, are deleted. * If the specified user objects are already available in ThoughtSpot, the object properties are updated and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param importUsersRequest */ importUsers(importUsersRequest: ImportUsersRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Resets the password of a user account. Administrators can reset password on behalf of a user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param resetUserPasswordRequest */ resetUserPassword(resetUserPasswordRequest: ResetUserPasswordRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Gets a list of users available on the ThoughtSpot system. To get details of a specific user, specify the user GUID or name. You can also filter the API response based on groups, Org ID, user visibility, account status, user type, and user preference settings and favorites. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUsersRequest */ searchUsers(searchUsersRequest: SearchUsersRequest, _options?: Configuration): Promise; /** * Version: 9.0.0.cl or later Updates the properties of a user object. You can modify user properties such as username, email, and share notification settings. You can also assign new groups and Orgs, remove the user from a group or Org, reset password, and modify user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user * @param updateUserRequest */ updateUser(userIdentifier: string, updateUserRequest: UpdateUserRequest, _options?: Configuration): Promise; } declare class UsersApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to activateUser * @throws ApiException if the response code was not in [200, 299] */ activateUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to changeUserPassword * @throws ApiException if the response code was not in [200, 299] */ changeUserPasswordWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createUser * @throws ApiException if the response code was not in [200, 299] */ createUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deactivateUser * @throws ApiException if the response code was not in [200, 299] */ deactivateUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteUser * @throws ApiException if the response code was not in [200, 299] */ deleteUserWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to forceLogoutUsers * @throws ApiException if the response code was not in [200, 299] */ forceLogoutUsersWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to importUsers * @throws ApiException if the response code was not in [200, 299] */ importUsersWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to resetUserPassword * @throws ApiException if the response code was not in [200, 299] */ resetUserPasswordWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchUsers * @throws ApiException if the response code was not in [200, 299] */ searchUsersWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateUser * @throws ApiException if the response code was not in [200, 299] */ updateUserWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class VariableApiRequestFactory extends BaseAPIRequestFactory { /** * Create a variable which can be used for parameterizing metadata objects Version: 26.4.0.cl or later Allows creating a variable which can be used for parameterizing metadata objects in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports the following types of variables: * CONNECTION_PROPERTY - For connection properties * TABLE_MAPPING - For table mappings * CONNECTION_PROPERTY_PER_PRINCIPAL - For connection properties per principal. In order to use this please contact support to enable this. * FORMULA_VARIABLE - For Formula variables, introduced in 10.15.0.cl When creating a variable, you need to specify: * The variable type * A unique name for the variable * Whether the variable contains sensitive values (defaults to false) * The data type of the variable, only specify for formula variables (defaults to null) The operation will fail if: * The user lacks required permissions * The variable name already exists * The variable type is invalid * @param createVariableRequest */ createVariable(createVariableRequest: CreateVariableRequest, _options?: Configuration): Promise; /** * @deprecated * * Delete a variable Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/delete](/api/rest/2.0/template/variables/delete) instead. Allows deleting a variable from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifier (ID or name) The operation will fail if: * The user lacks required permissions * The variable doesn\'t exist * The variable is being used by other objects * @param identifier Unique id, name, or object id of the variable */ deleteVariable(identifier: string, _options?: Configuration): Promise; /** * Delete variable(s) Version: 26.4.0.cl or later Allows deleting multiple variables from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifiers (IDs or names) The operation will fail if: * The user lacks required permissions * Any of the variables don\'t exist * Any of the variables are being used by other objects * @param deleteVariablesRequest */ deleteVariables(deleteVariablesRequest: DeleteVariablesRequest, _options?: Configuration): Promise; /** * Update values for a variable Version: 26.4.0.cl or later Allows updating values for a specific variable in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to the variable * Replacing existing values * Deleting values from the variable * Resetting all values When updating variable values, you need to specify: * The variable identifier (ID or name) * The values to add/replace/remove * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constraints for the given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param identifier Unique ID or name of the variable * @param putVariableValuesRequest */ putVariableValues(identifier: string, putVariableValuesRequest: PutVariableValuesRequest, _options?: Configuration): Promise; /** * Search variables Version: 26.4.0.cl or later Allows searching for variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports searching variables by: * Variable identifier (ID or name) * Variable type * Name pattern (case-insensitive, supports % for wildcard) The search results can be formatted in three ways: * METADATA - Returns only variable metadata (default) * METADATA_AND_VALUES - Returns variable metadata and values The values can be filtered by scope: * org_identifier * principal_identifier * model_identifier **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchVariablesRequest */ searchVariables(searchVariablesRequest: SearchVariablesRequest, _options?: Configuration): Promise; /** * Update a variable\'s name Version: 26.4.0.cl or later Allows updating a variable\'s name in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows updating: * The variable name * @param identifier Unique id, name, or object id of the variable to update. * @param updateVariableRequest */ updateVariable(identifier: string, updateVariableRequest: UpdateVariableRequest, _options?: Configuration): Promise; /** * @deprecated * * Update values for multiple variables Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/{identifier}/update-values](/api/rest/2.0/template/variables/%7Bidentifier%7D/update-values) instead. Allows updating values for multiple variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to variables * Replacing existing values * Deleting values from variables When updating variable values, you need to specify: * The variable identifiers * The values to add/replace/remove for each variable * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constrains for a given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param updateVariableValuesRequest */ updateVariableValues(updateVariableValuesRequest: UpdateVariableValuesRequest, _options?: Configuration): Promise; } declare class VariableApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createVariable * @throws ApiException if the response code was not in [200, 299] */ createVariableWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteVariable * @throws ApiException if the response code was not in [200, 299] */ deleteVariableWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteVariables * @throws ApiException if the response code was not in [200, 299] */ deleteVariablesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to putVariableValues * @throws ApiException if the response code was not in [200, 299] */ putVariableValuesWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchVariables * @throws ApiException if the response code was not in [200, 299] */ searchVariablesWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateVariable * @throws ApiException if the response code was not in [200, 299] */ updateVariableWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateVariableValues * @throws ApiException if the response code was not in [200, 299] */ updateVariableValuesWithHttpInfo(response: ResponseContext): Promise>; } /** * no description */ declare class VersionControlApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 9.2.0.cl or later Commits TML files of metadata objects to the Git branch configured on your instance. Requires at least edit access to objects used in the commit operation. Before using this endpoint to push your commits: * Enable Git integration on your instance. * Make sure the Git repository and branch details are configured on your instance. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitBranchRequest */ commitBranch(commitBranchRequest: CommitBranchRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Allows you to connect a ThoughtSpot instance to a Git repository. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. You can use this API endpoint to connect your ThoughtSpot development and production environments to the development and production branches of a Git repository. Before using this endpoint to connect your ThoughtSpot instance to a Git repository, check the following prerequisites: * You have a Git repository. If you are using GitHub, make sure you have a valid account and an access token to connect ThoughtSpot to GitHub. For information about generating a token, see [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens). * Your access token has `repo` scope that grants full access to public and private repositories. * Your Git repository has a branch that can be configured as a default branch in ThoughtSpot. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/?pageid=git-integration). **Note**: ThoughtSpot supports only GitHub / itHub Enterprise for CI/CD. * @param createConfigRequest */ createConfig(createConfigRequest: CreateConfigRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Deletes Git repository configuration from your ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param deleteConfigRequest */ deleteConfig(deleteConfigRequest: DeleteConfigRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Allows you to deploy a commit and publish TML content to your ThoughtSpot instance. Requires at least edit access to the objects used in the deploy operation. The API deploys the head of the branch unless a `commit_id` is specified in the API request. If the branch name is not defined in the request, the default branch is considered for deploying commits. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param deployCommitRequest */ deployCommit(deployCommitRequest: DeployCommitRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Reverts TML objects to a previous commit specified in the API request. Requires at least edit access to objects. In the API request, specify the `commit_id`. If the branch name is not specified in the request, the API will consider the default branch configured on your instance. By default, the API reverts all objects. If the revert operation fails for one of the objects provided in the commit, the API returns an error and does not revert any object. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitId Commit id to which the object should be reverted * @param revertCommitRequest */ revertCommit(commitId: string, revertCommitRequest: RevertCommitRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Gets a list of commits for a given metadata object. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param searchCommitsRequest */ searchCommits(searchCommitsRequest: SearchCommitsRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Gets Git repository connections configured on the ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param searchConfigRequest */ searchConfig(searchConfigRequest: SearchConfigRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Updates Git repository configuration settings. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param updateConfigRequest */ updateConfig(updateConfigRequest: UpdateConfigRequest, _options?: Configuration): Promise; /** * Version: 9.2.0.cl or later Validates the content of your source branch against the objects in your destination environment. Before merging content from your source branch to the destination branch, run this API operation from your destination environment and ensure that the changes from the source branch function in the destination environment. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param validateMergeRequest */ validateMerge(validateMergeRequest: ValidateMergeRequest, _options?: Configuration): Promise; } declare class VersionControlApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to commitBranch * @throws ApiException if the response code was not in [200, 299] */ commitBranchWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createConfig * @throws ApiException if the response code was not in [200, 299] */ createConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteConfig * @throws ApiException if the response code was not in [200, 299] */ deleteConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deployCommit * @throws ApiException if the response code was not in [200, 299] */ deployCommitWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to revertCommit * @throws ApiException if the response code was not in [200, 299] */ revertCommitWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchCommits * @throws ApiException if the response code was not in [200, 299] */ searchCommitsWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchConfig * @throws ApiException if the response code was not in [200, 299] */ searchConfigWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateConfig * @throws ApiException if the response code was not in [200, 299] */ updateConfigWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to validateMerge * @throws ApiException if the response code was not in [200, 299] */ validateMergeWithHttpInfo(response: ResponseContext): Promise>>; } /** * no description */ declare class WebhooksApiRequestFactory extends BaseAPIRequestFactory { /** * Version: 10.14.0.cl or later Creates a new webhook configuration to receive notifications for specified events. The webhook will be triggered when the configured events occur in the system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param createWebhookConfigurationRequest */ createWebhookConfiguration(createWebhookConfigurationRequest: CreateWebhookConfigurationRequest, _options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Deletes one or more webhook configurations by their unique id or name. Returns status of each deletion operation, including successfully deleted webhooks and any failures with error details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param deleteWebhookConfigurationsRequest */ deleteWebhookConfigurations(deleteWebhookConfigurationsRequest: DeleteWebhookConfigurationsRequest, _options?: Configuration): Promise; /** * Version: 26.7.0.cl or later Returns cluster-level storage setup information for configuring customer-managed storage. Use this endpoint to obtain the IAM identity details required before configuring a webhook storage destination. For S3 destinations, returns the platform AWS account ID and IAM trust policy template. For GCS destinations, returns the platform GCP service account email and the IAM role to grant for service account impersonation. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. */ getWebhookStorageConfig(_options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Searches for webhook configurations based on various criteria such as Org, webhook identifier, event type, with support for pagination and sorting. Returns matching webhook configurations with their complete details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param searchWebhookConfigurationsRequest */ searchWebhookConfigurations(searchWebhookConfigurationsRequest: SearchWebhookConfigurationsRequest, _options?: Configuration): Promise; /** * Version: 10.14.0.cl or later Updates an existing webhook configuration by its unique id or name. With the default `REPLACE` operation, only the provided fields are updated. Use the `RESET` operation with `reset_options` to clear an optional configuration section, such as authentication or the storage destination. A `RESET` request cannot carry any other field. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param webhookIdentifier Unique ID or name of the webhook configuration. * @param updateWebhookConfigurationRequest */ updateWebhookConfiguration(webhookIdentifier: string, updateWebhookConfigurationRequest: UpdateWebhookConfigurationRequest, _options?: Configuration): Promise; } declare class WebhooksApiResponseProcessor { /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to createWebhookConfiguration * @throws ApiException if the response code was not in [200, 299] */ createWebhookConfigurationWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to deleteWebhookConfigurations * @throws ApiException if the response code was not in [200, 299] */ deleteWebhookConfigurationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to getWebhookStorageConfig * @throws ApiException if the response code was not in [200, 299] */ getWebhookStorageConfigWithHttpInfo(response: ResponseContext): Promise>>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to searchWebhookConfigurations * @throws ApiException if the response code was not in [200, 299] */ searchWebhookConfigurationsWithHttpInfo(response: ResponseContext): Promise>; /** * Unwraps the actual response sent by the server from the response context and deserializes the response content * to the expected objects * * @params response Response returned by the server for a request to updateWebhookConfiguration * @throws ApiException if the response code was not in [200, 299] */ updateWebhookConfigurationWithHttpInfo(response: ResponseContext): Promise>; } declare class PromiseAIApi { private api; constructor(configuration: Configuration, requestFactory?: AIApiRequestFactory, responseProcessor?: AIApiResponseProcessor); /** * Version: 26.2.0.cl or later Creates a new Spotter agent conversation based on the provided context and settings. The endpoint was in Beta from 26.2.0.cl through 26.4.0.cl. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The conversation context is defined by exactly one of the following parameters: - `metadata_context`: defines the conversation context by data source. The context type can be one of: - `DATA_SOURCE` *(available from 26.5.0.cl)*: targets a specific data source. Provide `data_source_identifier` in `data_source_context` for a single data source, or `data_source_identifiers` for multi-data-source context. The deprecated `guid` field is accepted for backwards compatibility. - `AUTO_MODE` *(available from 26.5.0.cl)*: automatically discovers and selects the most relevant datasets for the user\'s queries. - `analyst_identifier` *(available from 26.10.0.cl)*: unique identifier of a Spotter Analyst to start the conversation from. The conversation uses the analyst\'s configuration — its data sources, agent instructions, and connectors — so `metadata_context` must be omitted. The caller must be the analyst\'s author, have the analyst shared with them, or hold admin / Spotter-management privileges. Passing both `analyst_identifier` and `metadata_context`, or neither, is rejected. > **Note for callers on versions 26.2.0.cl – 26.4.0.cl (Beta):** use the lowercase `data_source` enum value with the `guid` field instead of the above. Example: `{ \"type\": \"data_source\", \"data_source_context\": { \"guid\": \"\" } }`. The `conversation_settings` parameter controls which Spotter capabilities are enabled for the conversation: - `enable_contextual_change_analysis` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_natural_language_answer_generation` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_reasoning` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_save_chat` (default: `false`, *available from 26.5.0.cl*) — enables saving the conversation for later retrieval via conversation history If the request is successful, the response includes a unique `conversation_identifier` that must be passed to `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming` to send messages within this conversation. The response also includes `conversation_id` with the same value for backwards compatibility; use `conversation_identifier` for new integrations. When the conversation is started from an analyst, the response additionally carries the analyst\'s `analyst_id`; it is `null` otherwise. #### Example request ```json { \"metadata_context\": { \"type\": \"DATA_SOURCE\", \"data_source_context\": { \"data_source_identifier\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\" } }, \"conversation_settings\": {} } ``` #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view permission on the specified metadata object, or has no access to the analyst specified in `analyst_identifier`. | | 404 | Not found — no analyst with the given `analyst_identifier` exists in the caller\'s Org. | | 422 | Unprocessable entity — the request fails validation: both `analyst_identifier` and `metadata_context` were provided, neither was provided, or `metadata_context` is malformed (for example, `DATA_SOURCE` context without a data source identifier). | > ###### Note: > > - This endpoint was in Beta from 26.2.0.cl through 26.4.0.cl and is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createAgentConversationRequest */ createAgentConversationWithHttpInfo(createAgentConversationRequest: CreateAgentConversationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Creates a new Spotter agent conversation based on the provided context and settings. The endpoint was in Beta from 26.2.0.cl through 26.4.0.cl. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The conversation context is defined by exactly one of the following parameters: - `metadata_context`: defines the conversation context by data source. The context type can be one of: - `DATA_SOURCE` *(available from 26.5.0.cl)*: targets a specific data source. Provide `data_source_identifier` in `data_source_context` for a single data source, or `data_source_identifiers` for multi-data-source context. The deprecated `guid` field is accepted for backwards compatibility. - `AUTO_MODE` *(available from 26.5.0.cl)*: automatically discovers and selects the most relevant datasets for the user\'s queries. - `analyst_identifier` *(available from 26.10.0.cl)*: unique identifier of a Spotter Analyst to start the conversation from. The conversation uses the analyst\'s configuration — its data sources, agent instructions, and connectors — so `metadata_context` must be omitted. The caller must be the analyst\'s author, have the analyst shared with them, or hold admin / Spotter-management privileges. Passing both `analyst_identifier` and `metadata_context`, or neither, is rejected. > **Note for callers on versions 26.2.0.cl – 26.4.0.cl (Beta):** use the lowercase `data_source` enum value with the `guid` field instead of the above. Example: `{ \"type\": \"data_source\", \"data_source_context\": { \"guid\": \"\" } }`. The `conversation_settings` parameter controls which Spotter capabilities are enabled for the conversation: - `enable_contextual_change_analysis` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_natural_language_answer_generation` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_reasoning` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_save_chat` (default: `false`, *available from 26.5.0.cl*) — enables saving the conversation for later retrieval via conversation history If the request is successful, the response includes a unique `conversation_identifier` that must be passed to `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming` to send messages within this conversation. The response also includes `conversation_id` with the same value for backwards compatibility; use `conversation_identifier` for new integrations. When the conversation is started from an analyst, the response additionally carries the analyst\'s `analyst_id`; it is `null` otherwise. #### Example request ```json { \"metadata_context\": { \"type\": \"DATA_SOURCE\", \"data_source_context\": { \"data_source_identifier\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\" } }, \"conversation_settings\": {} } ``` #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view permission on the specified metadata object, or has no access to the analyst specified in `analyst_identifier`. | | 404 | Not found — no analyst with the given `analyst_identifier` exists in the caller\'s Org. | | 422 | Unprocessable entity — the request fails validation: both `analyst_identifier` and `metadata_context` were provided, neither was provided, or `metadata_context` is malformed (for example, `DATA_SOURCE` context without a data source identifier). | > ###### Note: > > - This endpoint was in Beta from 26.2.0.cl through 26.4.0.cl and is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createAgentConversationRequest */ createAgentConversation(createAgentConversationRequest: CreateAgentConversationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Creates a Spotter Analyst: a configured agent with a name, description, at least one data source, and optional agent instructions, MCP connectors, and starter prompts. Analysts created via API use the default icon until one is set in the UI. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Version: 26.10.0.cl or later Creates a Spotter Analyst: a configured agent with a name, description, data sources, and optional agent instructions, MCP connectors, and starter prompts that your users converse with in Spotter. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Use a bearer token for the Org in which the analyst should be created. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior for this analyst. Instructions that conflict with system guardrails are rejected with `409`. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). The caller must have view access to every referenced source. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors to link to the analyst. - `starter_prompts` (optional): up to 4 plain-text prompts shown on the analyst landing page, each between 10 and 250 characters. Display order follows list position. If the request is successful, the response contains the created analyst, including the server-assigned `id`. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`), the last-update time as `updated_time_in_millis` (epoch milliseconds), and the `created_by` and `updated_by` users. #### Error conditions - `403` — missing privileges, or no view access to a referenced data source. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param createAnalystRequest */ createAnalystWithHttpInfo(createAnalystRequest: CreateAnalystRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Creates a Spotter Analyst: a configured agent with a name, description, at least one data source, and optional agent instructions, MCP connectors, and starter prompts. Analysts created via API use the default icon until one is set in the UI. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Version: 26.10.0.cl or later Creates a Spotter Analyst: a configured agent with a name, description, data sources, and optional agent instructions, MCP connectors, and starter prompts that your users converse with in Spotter. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Use a bearer token for the Org in which the analyst should be created. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior for this analyst. Instructions that conflict with system guardrails are rejected with `409`. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). The caller must have view access to every referenced source. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors to link to the analyst. - `starter_prompts` (optional): up to 4 plain-text prompts shown on the analyst landing page, each between 10 and 250 characters. Display order follows list position. If the request is successful, the response contains the created analyst, including the server-assigned `id`. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`), the last-update time as `updated_time_in_millis` (epoch milliseconds), and the `created_by` and `updated_by` users. #### Error conditions - `403` — missing privileges, or no view access to a referenced data source. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param createAnalystRequest */ createAnalyst(createAnalystRequest: CreateAnalystRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Creates a new conversation session tied to a specific data model for AI-driven natural language querying. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `metadata_identifier`: the unique ID of the data source that provides context for the conversation Optionally, you can provide: - `tokens`: a token string to set initial context for the conversation (e.g., `\"[sales],[item type],[state]\"`) If the request is successful, ThoughtSpot returns a unique `conversation_identifier` that must be passed to `sendMessage` to continue the conversation. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createConversationRequest */ createConversationWithHttpInfo(createConversationRequest: CreateConversationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Creates a new conversation session tied to a specific data model for AI-driven natural language querying. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `metadata_identifier`: the unique ID of the data source that provides context for the conversation Optionally, you can provide: - `tokens`: a token string to set initial context for the conversation (e.g., `\"[sales],[item type],[state]\"`) If the request is successful, ThoughtSpot returns a unique `conversation_identifier` that must be passed to `sendMessage` to continue the conversation. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createConversationRequest */ createConversation(createConversationRequest: CreateConversationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. The request has no body; the response contains the `id` of the deleted analyst. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot delete it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request has no body — the analyst to delete is identified by the `analyst_identifier` path parameter, as returned by the create analyst API. A successful request returns the `id` of the deleted analyst. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to delete. */ deleteAnalystWithHttpInfo(analystIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. The request has no body; the response contains the `id` of the deleted analyst. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot delete it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request has no body — the analyst to delete is identified by the `analyst_identifier` path parameter, as returned by the create analyst API. A successful request returns the `id` of the deleted analyst. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to delete. */ deleteAnalyst(analystIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Deletes an existing agent conversation. Version: 26.7.0.cl or later Permanently deletes an existing saved agent conversation and all its associated messages. This operation is irreversible — deleted conversations cannot be recovered. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being deleted. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to delete, as returned by `createAgentConversation` or `getConversationList` A successful request returns an empty `204 No Content` response. The deleted conversation no longer appears in `getConversationList`. #### Example request ```bash DELETE /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/delete ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | > ###### Note: > > - Deletion is permanent and cannot be undone. Ensure the correct `conversation_identifier` is used before calling this endpoint. > - Only conversations created with `enable_save_chat: true` are persisted and can be deleted via this endpoint. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to delete. */ deleteConversationWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Deletes an existing agent conversation. Version: 26.7.0.cl or later Permanently deletes an existing saved agent conversation and all its associated messages. This operation is irreversible — deleted conversations cannot be recovered. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being deleted. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to delete, as returned by `createAgentConversation` or `getConversationList` A successful request returns an empty `204 No Content` response. The deleted conversation no longer appears in `getConversationList`. #### Example request ```bash DELETE /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/delete ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | > ###### Note: > > - Deletion is permanent and cannot be undone. Ensure the correct `conversation_identifier` is used before calling this endpoint. > - Only conversations created with `enable_save_chat: true` are persisted and can be deleted via this endpoint. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to delete. */ deleteConversation(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Exports memory entries (rules, recipes, and always-apply rules) for the specified data-models as a single YAML payload. The payload can be edited locally and re-submitted through `importMemory`. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to export data-model memories for a given list of data-models. This exported yaml file can then be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To export memory for one or more data-models, the request may include: - `sources`: A list of typed scope groups identifying which data-models to export memory for. Each group contains: - `type`: The source object type for this group — `DATA_MODEL`. - `identifiers`: An array of GUIDs or human-readable `obj_id`s of the data-models to export memory for. obj_ids are resolved server-side before forwarding. The API returns a response object with: - `content`: The serialized memory payload (YAML) — exactly the shape that the `importMemory` API consumes. Edit it locally and pass it back through `importMemory` to apply changes. #### Source Type - **DATA_MODEL**: The `identifiers` are data-model GUIDs. This is the default source type for Spotter memory and covers the rules, recipes and always-apply rules attached directly to a data-model. #### File format The exported `content` is a YAML document with a single top-level `memories` key holding a list of memory items — exactly the format the `importMemory` API consumes. The full format reference (an annotated example, memory item fields, per-type content, and `datamodel_sources` identification) is documented in the `importMemory` API\'s **File format** section. Exported files populate each source\'s `guid` and, if present, `obj_id` as well. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have necessary permissions, or lacks read access on a referenced data-model, or the bearer token does not correspond to the data-model\'s org. | > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param exportMemoryRequest */ exportMemoryWithHttpInfo(exportMemoryRequest: ExportMemoryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Exports memory entries (rules, recipes, and always-apply rules) for the specified data-models as a single YAML payload. The payload can be edited locally and re-submitted through `importMemory`. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to export data-model memories for a given list of data-models. This exported yaml file can then be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To export memory for one or more data-models, the request may include: - `sources`: A list of typed scope groups identifying which data-models to export memory for. Each group contains: - `type`: The source object type for this group — `DATA_MODEL`. - `identifiers`: An array of GUIDs or human-readable `obj_id`s of the data-models to export memory for. obj_ids are resolved server-side before forwarding. The API returns a response object with: - `content`: The serialized memory payload (YAML) — exactly the shape that the `importMemory` API consumes. Edit it locally and pass it back through `importMemory` to apply changes. #### Source Type - **DATA_MODEL**: The `identifiers` are data-model GUIDs. This is the default source type for Spotter memory and covers the rules, recipes and always-apply rules attached directly to a data-model. #### File format The exported `content` is a YAML document with a single top-level `memories` key holding a list of memory items — exactly the format the `importMemory` API consumes. The full format reference (an annotated example, memory item fields, per-type content, and `datamodel_sources` identification) is documented in the `importMemory` API\'s **File format** section. Exported files populate each source\'s `guid` and, if present, `obj_id` as well. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have necessary permissions, or lacks read access on a referenced data-model, or the bearer token does not correspond to the data-model\'s org. | > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param exportMemoryRequest */ exportMemory(exportMemoryRequest: ExportMemoryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.6.0.cl or later Retrieves the admin instructions currently configured for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. Requires admin privileges. Only users with org admin access can retrieve agent instructions. #### Usage guidelines No input parameters are required. The API returns the stored `AgentInstructions` record for the caller\'s tenant and org. If no instructions have been configured yet, the API returns a record with an empty `instructions` field and `null` values for `id`, `created_at`, `updated_at`, and `last_updated_by`. If the request is successful, the response includes: - `id`: unique identifier of the instructions record - `instructions`: the configured instructions text - `created_at`: ISO timestamp when the instructions were first saved - `updated_at`: ISO timestamp when the instructions were last updated - `last_updated_by`: user ID of the admin who last updated the instructions (may be `null` for older records) #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to read agent instructions. | > ###### Note: > > - Use `setAgentInstructions` to create or update agent instructions. > - Available from version 26.6.0.cl and later. */ getAgentInstructionsWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Retrieves the admin instructions currently configured for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. Requires admin privileges. Only users with org admin access can retrieve agent instructions. #### Usage guidelines No input parameters are required. The API returns the stored `AgentInstructions` record for the caller\'s tenant and org. If no instructions have been configured yet, the API returns a record with an empty `instructions` field and `null` values for `id`, `created_at`, `updated_at`, and `last_updated_by`. If the request is successful, the response includes: - `id`: unique identifier of the instructions record - `instructions`: the configured instructions text - `created_at`: ISO timestamp when the instructions were first saved - `updated_at`: ISO timestamp when the instructions were last updated - `last_updated_by`: user ID of the admin who last updated the instructions (may be `null` for older records) #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to read agent instructions. | > ###### Note: > > - Use `setAgentInstructions` to create or update agent instructions. > - Available from version 26.6.0.cl and later. */ getAgentInstructions(_options?: PromiseConfigurationOptions): Promise; /** * Retrieves the full public-safe content of a saved agent conversation: ordered turns (user messages and agent response items) and sanitized code-execution file metadata. Internal graph or branch state, Azure file identifiers, and messages with a `SYSTEM` source are omitted. The full answer payload is not embedded; fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Retrieves the full public-safe content of a saved agent conversation. Returns ordered conversation messages — each carrying an optional user prompt (the user\'s message and any attachments) and the agent response items produced for that turn — plus sanitized metadata for any files generated by the code-execution tool. Use this endpoint to render a persisted conversation in a UI, build an audit trail, or post-process a completed conversation. The full answer payload is not embedded — fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` _(path parameter)_: the unique ID of the conversation, as returned by `createAgentConversation` or `getConversationList`. If the request is successful, the response contains two top-level fields: | Field | Type | Description | | ---------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | | `messages` | `ConversationMessage[]` | Ordered oldest to newest. Empty array when the conversation has no messages. | | `code_execution_files` | `CodeExecutionFileMetadata[]` | List of sanitized file metadata entries (one per `file_id`). Covers all code-execution-generated files referenced anywhere in the conversation. Empty array when there are none. | No other top-level fields are returned. #### ConversationMessage fields | Field | Type | Description | | --------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------- | | `message_id` | `String` | Stable identifier for the turn. For liveboard-started synthetic first turns, this is the root node identifier. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch for the turn. | | `user_prompt` | `UserPrompt` | User-authored prompt that started the turn (message and attachments). `null` for liveboard-started synthetic first turns. | | `response_items` | `ConversationResponseItem[]` | Agent-side output produced in response to this turn. Empty array for in-progress turns. | #### UserPrompt fields | Field | Type | Description | | ------------- | ---------------------- | ---------------------------------------------------------------------------------------------------- | | `message` | `UserMessage` | User query that started the turn. `null` for liveboard-started synthetic first turns. | | `attachments` | `UserAttachmentItem[]` | Files or connector resources attached to the user message. Empty array when there are no attachments. | #### UserMessage fields | Field | Type | Description | | ------------ | -------- | --------------------------------------------- | | `message_id` | `String` | Unique identifier of the user-source message. | | `content` | `String` | Text body of the user query. | #### UserAttachmentItem fields Discriminated by `type`. Only `\"file\"` or `\"resource\"` are valid values. Only the fields for the indicated variant are populated. See `ConversationResponseItem` below for the field definitions of the `file` and `resource` variants — `UserAttachmentItem` uses the same fields. #### ConversationResponseItem fields Every item carries a `type` discriminator and these shared fields: | Field | Type | Description | | --------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ | | `type` | `String` | Discriminator. One of `\"text\"`, `\"tool_call\"`, `\"tool_result\"`, `\"answer\"`, `\"file\"`, `\"resource\"`, `\"search_datasets\"`. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch when this item was produced. | | `is_thinking` | `Boolean` | `true` when the item represents internal agent reasoning rather than user-facing output. Consumers may hide or collapse these. | | `step_title` | `String` | Human-readable label for the agent step producing this item (e.g. `\"Searching\"`, `\"Visualising\"`). | Variant-specific fields: - **`text`** — agent text output: `content` (String), `content_type` (`ContentMimeType` enum), `file_reference` (FileReference). - **`tool_call`** — agent invoked a tool: `tool_call_id` (String), `tool_name` (String), `arguments` (JSON object). - **`tool_result`** — result returned from a tool invocation: `tool_call_id`, `tool_name`, `content`, `content_type` (`ContentMimeType` enum), `success` (Boolean). - **`answer`** — slim reference to a saved answer: `answer_id` (String), `tool_call_id`, `tool_name`. - **`file`** — uploaded or generated files: `files` (`PublicFileInfo[]`). - **`resource`** — MCP connector resource: `title`, `uri`, `name`, `mime_type`, `description`, `size` (Int), `connector_id`, `connector_name`, `connector_slug`, `transport_type` (`TransportType` enum). - **`search_datasets`** — dataset discovery result: `text` (String), `data_sources` (`DataSourceInfo[]`). Clients should switch on `type` and ignore unknown variants for forward-compatibility. #### content_type values `content_type` is the `ContentMimeType` enum. The following values are defined: | Value | Wire MIME | Meaning | | --------------------------- | --------------------------- | ---------------------------------------------------- | | `TEXT_PLAIN` | `text/plain` | Plain text. Default for `tool_result`. | | `TEXT_MARKDOWN` | `text/markdown` | Markdown. Default for `text`. | | `TEXT_X_MARKDOWN_WITH_CODE` | `text/x-markdown-with-code` | Markdown whose body starts with a fenced code block. | | `TEXT_HTML` | `text/html` | Raw HTML. | #### transport_type values `transport_type` is the `TransportType` enum used on the `resource` variant. | Value | Meaning | | ------------------ | --------------------------------------------- | | `STREAMABLE_HTTP` | Streamable HTTP transport (default for MCP). | | `SSE` | Server-sent events transport. | #### FileReference fields | Field | Type | Description | | ------------------------ | -------- | ------------------------------------------------------------ | | `file_id` | `String` | Unique identifier of the code-execution-generated file. | | `display_name` | `String` | Human-readable file name. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | Cross-reference `file_id` against `code_execution_files` to retrieve full metadata including the `expired` flag before attempting a download. #### PublicFileInfo fields | Field | Type | Description | | ------------------------ | -------- | -------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `size_bytes` | `Int` | File size in bytes. | #### CodeExecutionFileMetadata fields Each entry in the `code_execution_files` array contains: | Field | Type | Description | | ------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `expired` | `Boolean` | When `true`, the underlying file is no longer retrievable from code-execution storage; UIs should disable download and preview. | #### Loading answer payloads Each `AnswerResponseItem` in the response contains an `answer_id` field. Pass this value as the `answer_identifier` parameter to `loadAnswer` to retrieve the full answer payload (TML tokens, visualization metadata) for that item. #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/messages ``` #### Example response ```json { \"messages\": [ { \"message_id\": \"node_u_01\", \"timestamp_in_millis\": 1744000000000, \"user_prompt\": { \"message\": { \"message_id\": \"msg_u_01\", \"content\": \"Show me revenue by region as a chart.\" }, \"attachments\": [] }, \"response_items\": [ { \"type\": \"tool_call\", \"tool_call_id\": \"toolu_01ABC\", \"tool_name\": \"search_datasets\", \"step_title\": \"Searching datasets\", \"arguments\": { \"query\": \"revenue\" }, \"timestamp_in_millis\": 1744000001000, \"is_thinking\": false }, { \"type\": \"answer\", \"answer_id\": \"ans_01XYZ\", \"tool_call_id\": \"toolu_02DEF\", \"tool_name\": \"fetch_and_visualize\", \"step_title\": \"Visualising\", \"timestamp_in_millis\": 1744000004000, \"is_thinking\": false }, { \"type\": \"text\", \"content\": \"Revenue is highest in APAC.\", \"content_type\": \"TEXT_MARKDOWN\", \"timestamp_in_millis\": 1744000005000, \"is_thinking\": false, \"step_title\": null, \"file_reference\": { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"created_time_in_millis\": 1744027200000 } } ] } ], \"code_execution_files\": [ { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"file_type\": \"csv\", \"created_time_in_millis\": 1744027200000, \"expired\": false } ] } ``` #### Example: liveboard-started conversation When a conversation is initiated from a saved liveboard visualization rather than a user query, the first turn is synthetic. `user_prompt` is `null`, and `response_items` contains a single `answer` item referencing the seed visualization. ```json { \"messages\": [ { \"message_id\": \"ROOT_NODE\", \"timestamp_in_millis\": 1743999000000, \"user_prompt\": null, \"response_items\": [ { \"type\": \"answer\", \"answer_id\": \"lb_seed_01\", \"tool_call_id\": null, \"tool_name\": null, \"step_title\": null, \"timestamp_in_millis\": 1743999000000, \"is_thinking\": false } ] } ], \"code_execution_files\": [] } ``` Subsequent turns follow the normal user-to-agent pattern. #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation exists with the given identifier for the authenticated user. | > ###### Note: > > - Messages with an internal `SYSTEM` source are always dropped from the response. > - In-progress turns are still returned with an empty `response_items` array so clients can render the user message immediately. > - Do not assume every `tool_call` has a paired `tool_result` or `answer` — an interrupted conversation can leave a dangling call. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to load. */ getConversationWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Retrieves the full public-safe content of a saved agent conversation: ordered turns (user messages and agent response items) and sanitized code-execution file metadata. Internal graph or branch state, Azure file identifiers, and messages with a `SYSTEM` source are omitted. The full answer payload is not embedded; fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Retrieves the full public-safe content of a saved agent conversation. Returns ordered conversation messages — each carrying an optional user prompt (the user\'s message and any attachments) and the agent response items produced for that turn — plus sanitized metadata for any files generated by the code-execution tool. Use this endpoint to render a persisted conversation in a UI, build an audit trail, or post-process a completed conversation. The full answer payload is not embedded — fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` _(path parameter)_: the unique ID of the conversation, as returned by `createAgentConversation` or `getConversationList`. If the request is successful, the response contains two top-level fields: | Field | Type | Description | | ---------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | | `messages` | `ConversationMessage[]` | Ordered oldest to newest. Empty array when the conversation has no messages. | | `code_execution_files` | `CodeExecutionFileMetadata[]` | List of sanitized file metadata entries (one per `file_id`). Covers all code-execution-generated files referenced anywhere in the conversation. Empty array when there are none. | No other top-level fields are returned. #### ConversationMessage fields | Field | Type | Description | | --------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------- | | `message_id` | `String` | Stable identifier for the turn. For liveboard-started synthetic first turns, this is the root node identifier. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch for the turn. | | `user_prompt` | `UserPrompt` | User-authored prompt that started the turn (message and attachments). `null` for liveboard-started synthetic first turns. | | `response_items` | `ConversationResponseItem[]` | Agent-side output produced in response to this turn. Empty array for in-progress turns. | #### UserPrompt fields | Field | Type | Description | | ------------- | ---------------------- | ---------------------------------------------------------------------------------------------------- | | `message` | `UserMessage` | User query that started the turn. `null` for liveboard-started synthetic first turns. | | `attachments` | `UserAttachmentItem[]` | Files or connector resources attached to the user message. Empty array when there are no attachments. | #### UserMessage fields | Field | Type | Description | | ------------ | -------- | --------------------------------------------- | | `message_id` | `String` | Unique identifier of the user-source message. | | `content` | `String` | Text body of the user query. | #### UserAttachmentItem fields Discriminated by `type`. Only `\"file\"` or `\"resource\"` are valid values. Only the fields for the indicated variant are populated. See `ConversationResponseItem` below for the field definitions of the `file` and `resource` variants — `UserAttachmentItem` uses the same fields. #### ConversationResponseItem fields Every item carries a `type` discriminator and these shared fields: | Field | Type | Description | | --------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ | | `type` | `String` | Discriminator. One of `\"text\"`, `\"tool_call\"`, `\"tool_result\"`, `\"answer\"`, `\"file\"`, `\"resource\"`, `\"search_datasets\"`. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch when this item was produced. | | `is_thinking` | `Boolean` | `true` when the item represents internal agent reasoning rather than user-facing output. Consumers may hide or collapse these. | | `step_title` | `String` | Human-readable label for the agent step producing this item (e.g. `\"Searching\"`, `\"Visualising\"`). | Variant-specific fields: - **`text`** — agent text output: `content` (String), `content_type` (`ContentMimeType` enum), `file_reference` (FileReference). - **`tool_call`** — agent invoked a tool: `tool_call_id` (String), `tool_name` (String), `arguments` (JSON object). - **`tool_result`** — result returned from a tool invocation: `tool_call_id`, `tool_name`, `content`, `content_type` (`ContentMimeType` enum), `success` (Boolean). - **`answer`** — slim reference to a saved answer: `answer_id` (String), `tool_call_id`, `tool_name`. - **`file`** — uploaded or generated files: `files` (`PublicFileInfo[]`). - **`resource`** — MCP connector resource: `title`, `uri`, `name`, `mime_type`, `description`, `size` (Int), `connector_id`, `connector_name`, `connector_slug`, `transport_type` (`TransportType` enum). - **`search_datasets`** — dataset discovery result: `text` (String), `data_sources` (`DataSourceInfo[]`). Clients should switch on `type` and ignore unknown variants for forward-compatibility. #### content_type values `content_type` is the `ContentMimeType` enum. The following values are defined: | Value | Wire MIME | Meaning | | --------------------------- | --------------------------- | ---------------------------------------------------- | | `TEXT_PLAIN` | `text/plain` | Plain text. Default for `tool_result`. | | `TEXT_MARKDOWN` | `text/markdown` | Markdown. Default for `text`. | | `TEXT_X_MARKDOWN_WITH_CODE` | `text/x-markdown-with-code` | Markdown whose body starts with a fenced code block. | | `TEXT_HTML` | `text/html` | Raw HTML. | #### transport_type values `transport_type` is the `TransportType` enum used on the `resource` variant. | Value | Meaning | | ------------------ | --------------------------------------------- | | `STREAMABLE_HTTP` | Streamable HTTP transport (default for MCP). | | `SSE` | Server-sent events transport. | #### FileReference fields | Field | Type | Description | | ------------------------ | -------- | ------------------------------------------------------------ | | `file_id` | `String` | Unique identifier of the code-execution-generated file. | | `display_name` | `String` | Human-readable file name. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | Cross-reference `file_id` against `code_execution_files` to retrieve full metadata including the `expired` flag before attempting a download. #### PublicFileInfo fields | Field | Type | Description | | ------------------------ | -------- | -------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `size_bytes` | `Int` | File size in bytes. | #### CodeExecutionFileMetadata fields Each entry in the `code_execution_files` array contains: | Field | Type | Description | | ------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `expired` | `Boolean` | When `true`, the underlying file is no longer retrievable from code-execution storage; UIs should disable download and preview. | #### Loading answer payloads Each `AnswerResponseItem` in the response contains an `answer_id` field. Pass this value as the `answer_identifier` parameter to `loadAnswer` to retrieve the full answer payload (TML tokens, visualization metadata) for that item. #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/messages ``` #### Example response ```json { \"messages\": [ { \"message_id\": \"node_u_01\", \"timestamp_in_millis\": 1744000000000, \"user_prompt\": { \"message\": { \"message_id\": \"msg_u_01\", \"content\": \"Show me revenue by region as a chart.\" }, \"attachments\": [] }, \"response_items\": [ { \"type\": \"tool_call\", \"tool_call_id\": \"toolu_01ABC\", \"tool_name\": \"search_datasets\", \"step_title\": \"Searching datasets\", \"arguments\": { \"query\": \"revenue\" }, \"timestamp_in_millis\": 1744000001000, \"is_thinking\": false }, { \"type\": \"answer\", \"answer_id\": \"ans_01XYZ\", \"tool_call_id\": \"toolu_02DEF\", \"tool_name\": \"fetch_and_visualize\", \"step_title\": \"Visualising\", \"timestamp_in_millis\": 1744000004000, \"is_thinking\": false }, { \"type\": \"text\", \"content\": \"Revenue is highest in APAC.\", \"content_type\": \"TEXT_MARKDOWN\", \"timestamp_in_millis\": 1744000005000, \"is_thinking\": false, \"step_title\": null, \"file_reference\": { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"created_time_in_millis\": 1744027200000 } } ] } ], \"code_execution_files\": [ { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"file_type\": \"csv\", \"created_time_in_millis\": 1744027200000, \"expired\": false } ] } ``` #### Example: liveboard-started conversation When a conversation is initiated from a saved liveboard visualization rather than a user query, the first turn is synthetic. `user_prompt` is `null`, and `response_items` contains a single `answer` item referencing the seed visualization. ```json { \"messages\": [ { \"message_id\": \"ROOT_NODE\", \"timestamp_in_millis\": 1743999000000, \"user_prompt\": null, \"response_items\": [ { \"type\": \"answer\", \"answer_id\": \"lb_seed_01\", \"tool_call_id\": null, \"tool_name\": null, \"step_title\": null, \"timestamp_in_millis\": 1743999000000, \"is_thinking\": false } ] } ], \"code_execution_files\": [] } ``` Subsequent turns follow the normal user-to-agent pattern. #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation exists with the given identifier for the authenticated user. | > ###### Note: > > - Messages with an internal `SYSTEM` source are always dropped from the response. > - In-progress turns are still returned with an empty `response_items` array so clients can render the user message immediately. > - Do not assume every `tool_call` has a paired `tool_result` or `answer` — an interrupted conversation can leave a dangling call. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to load. */ getConversation(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Retrieves the list of saved agent conversations for the currently authenticated user. Only conversations created with `enable_save_chat: true` are returned. Version: 26.7.0.cl or later Retrieves a paginated list of saved agent conversations for the currently authenticated user. Only conversations that were created with `enable_save_chat: true` in `createAgentConversation` are returned. Requires `CAN_USE_SPOTTER` privilege. #### Usage guidelines The request supports the following optional query parameters: - `limit`: maximum number of conversations to return. Use this together with `offset` for pagination. - `offset`: number of conversations to skip before returning results. Defaults to `0`. - `skip_empty`: when `true` (default), conversations with no messages are excluded from the results. Set to `false` to include empty conversations. If the request is successful, the response includes a `conversations` array. Each entry contains: - `conversation_identifier`: the unique ID of the conversation, used as input to `sendAgentConversationMessage`, `updateConversation`, `deleteConversation`, `stopConversation`, and `loadAnswer` - `conversation_title`: the display name of the conversation - `created_at`: ISO 8601 timestamp of when the conversation was created - `updated_at`: ISO 8601 timestamp of the most recent update to the conversation - `data_source_identifiers`: list of unique IDs of the data sources associated with the conversation - `data_source_names`: array of `{ id, name }` objects for the data sources associated with the conversation - `is_pinned`: whether the current user has pinned this conversation. Pinned conversations are surfaced first in the list. Available from version 26.10.0.cl. - `analyst_id`: unique identifier of the Spotter Analyst the conversation is associated with, or `null` when the conversation is not associated with an analyst. Available from version 26.10.0.cl. #### Pagination Use `limit` and `offset` to page through large result sets: ``` GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=0 → first page GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=20 → second page ``` #### Pagination and `has_more` The response includes a `has_more: Boolean` field. When `true`, there are additional conversations beyond the current page — increment `offset` by `limit` to fetch the next page. When `has_more` is `false`, the current page is the last. Note that `total_count` is not returned; use `has_more` to drive paging controls. #### Example response ```json { \"conversations\": [ { \"conversation_identifier\": \"abc123\", \"conversation_title\": \"Sales by Region Q1\", \"created_at\": \"2026-03-01T10:00:00Z\", \"updated_at\": \"2026-03-05T14:23:00Z\", \"data_source_identifiers\": [\"ds-001\"], \"data_source_names\": [{ \"id\": \"ds-001\", \"name\": \"Retail Sales\" }], \"is_pinned\": true } ], \"has_more\": false } ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` appear in this list. Conversations created with `enable_save_chat: false` (the default) are not persisted and cannot be retrieved. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param [limit] Maximum number of conversations to return. Used for pagination. * @param [offset] Number of conversations to skip before returning results. Used for pagination. * @param [skipEmpty] When true, excludes conversations with no messages. Defaults to true. */ getConversationListWithHttpInfo(limit?: number, offset?: number, skipEmpty?: boolean, _options?: PromiseConfigurationOptions): Promise>; /** * Retrieves the list of saved agent conversations for the currently authenticated user. Only conversations created with `enable_save_chat: true` are returned. Version: 26.7.0.cl or later Retrieves a paginated list of saved agent conversations for the currently authenticated user. Only conversations that were created with `enable_save_chat: true` in `createAgentConversation` are returned. Requires `CAN_USE_SPOTTER` privilege. #### Usage guidelines The request supports the following optional query parameters: - `limit`: maximum number of conversations to return. Use this together with `offset` for pagination. - `offset`: number of conversations to skip before returning results. Defaults to `0`. - `skip_empty`: when `true` (default), conversations with no messages are excluded from the results. Set to `false` to include empty conversations. If the request is successful, the response includes a `conversations` array. Each entry contains: - `conversation_identifier`: the unique ID of the conversation, used as input to `sendAgentConversationMessage`, `updateConversation`, `deleteConversation`, `stopConversation`, and `loadAnswer` - `conversation_title`: the display name of the conversation - `created_at`: ISO 8601 timestamp of when the conversation was created - `updated_at`: ISO 8601 timestamp of the most recent update to the conversation - `data_source_identifiers`: list of unique IDs of the data sources associated with the conversation - `data_source_names`: array of `{ id, name }` objects for the data sources associated with the conversation - `is_pinned`: whether the current user has pinned this conversation. Pinned conversations are surfaced first in the list. Available from version 26.10.0.cl. - `analyst_id`: unique identifier of the Spotter Analyst the conversation is associated with, or `null` when the conversation is not associated with an analyst. Available from version 26.10.0.cl. #### Pagination Use `limit` and `offset` to page through large result sets: ``` GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=0 → first page GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=20 → second page ``` #### Pagination and `has_more` The response includes a `has_more: Boolean` field. When `true`, there are additional conversations beyond the current page — increment `offset` by `limit` to fetch the next page. When `has_more` is `false`, the current page is the last. Note that `total_count` is not returned; use `has_more` to drive paging controls. #### Example response ```json { \"conversations\": [ { \"conversation_identifier\": \"abc123\", \"conversation_title\": \"Sales by Region Q1\", \"created_at\": \"2026-03-01T10:00:00Z\", \"updated_at\": \"2026-03-05T14:23:00Z\", \"data_source_identifiers\": [\"ds-001\"], \"data_source_names\": [{ \"id\": \"ds-001\", \"name\": \"Retail Sales\" }], \"is_pinned\": true } ], \"has_more\": false } ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` appear in this list. Conversations created with `enable_save_chat: false` (the default) are not persisted and cannot be retrieved. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param [limit] Maximum number of conversations to return. Used for pagination. * @param [offset] Number of conversations to skip before returning results. Used for pagination. * @param [skipEmpty] When true, excludes conversations with no messages. Defaults to true. */ getConversationList(limit?: number, offset?: number, skipEmpty?: boolean, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.15.0.cl or later Suggests the most relevant data sources for a given natural language query, ranked by confidence with LLM-generated reasoning. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the underlying metadata entities referenced in the response. #### Usage guidelines The request must include: - `query`: the natural language question to find relevant data sources for If the request is successful, the API returns a ranked list of suggested data sources, each containing: - `confidence`: a float score indicating the model\'s confidence in the relevance of the suggestion - `details`: metadata about the data source - `data_source_identifier`: the unique ID of the data source - `data_source_name`: the display name of the data source - `description`: a description of the data source - `reasoning`: LLM-generated rationale explaining why the data source was recommended #### Error responses | Code | Description | |------|--------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the underlying metadata entities. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before it is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param getDataSourceSuggestionsRequest */ getDataSourceSuggestionsWithHttpInfo(getDataSourceSuggestionsRequest: GetDataSourceSuggestionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.15.0.cl or later Suggests the most relevant data sources for a given natural language query, ranked by confidence with LLM-generated reasoning. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the underlying metadata entities referenced in the response. #### Usage guidelines The request must include: - `query`: the natural language question to find relevant data sources for If the request is successful, the API returns a ranked list of suggested data sources, each containing: - `confidence`: a float score indicating the model\'s confidence in the relevance of the suggestion - `details`: metadata about the data source - `data_source_identifier`: the unique ID of the data source - `data_source_name`: the display name of the data source - `description`: a description of the data source - `reasoning`: LLM-generated rationale explaining why the data source was recommended #### Error responses | Code | Description | |------|--------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the underlying metadata entities. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before it is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param getDataSourceSuggestionsRequest */ getDataSourceSuggestions(getDataSourceSuggestionsRequest: GetDataSourceSuggestionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.15.0.cl or later Retrieves existing natural language (NL) instructions configured for a specific data model. These instructions guide the AI system in understanding data context and generating more accurate responses. Requires `CAN_USE_SPOTTER` privilege, at least view access on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines The request must include: - `data_source_identifier`: the unique ID of the data model to retrieve instructions for If the request is successful, the API returns: - `nl_instructions_info`: an array of instruction objects, each containing: - `instructions`: the configured text instructions for AI processing - `scope`: the scope of the instruction — currently only `GLOBAL` is supported #### Instructions scope - **GLOBAL**: Instructions that apply globally across the system on the given data-model (currently only global instructions are supported) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view access on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs at least view access on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Use this API to review currently configured instructions before modifying them with `setNLInstructions`. * @param getNLInstructionsRequest */ getNLInstructionsWithHttpInfo(getNLInstructionsRequest: GetNLInstructionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.15.0.cl or later Retrieves existing natural language (NL) instructions configured for a specific data model. These instructions guide the AI system in understanding data context and generating more accurate responses. Requires `CAN_USE_SPOTTER` privilege, at least view access on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines The request must include: - `data_source_identifier`: the unique ID of the data model to retrieve instructions for If the request is successful, the API returns: - `nl_instructions_info`: an array of instruction objects, each containing: - `instructions`: the configured text instructions for AI processing - `scope`: the scope of the instruction — currently only `GLOBAL` is supported #### Instructions scope - **GLOBAL**: Instructions that apply globally across the system on the given data-model (currently only global instructions are supported) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view access on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs at least view access on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Use this API to review currently configured instructions before modifying them with `setNLInstructions`. * @param getNLInstructionsRequest */ getNLInstructions(getNLInstructionsRequest: GetNLInstructionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.13.0.cl or later Breaks down a natural language query into a series of smaller analytical sub-questions, each mapped to a relevant data source. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request must include: - `query`: the natural language question to decompose into analytical sub-questions - `metadata_context`: at least one of the following context identifiers to guide question generation: - `conversation_identifier` — an existing conversation session ID - `answer_identifiers` — a list of Answer GUIDs - `liveboard_identifiers` — a list of Liveboard GUIDs - `data_source_identifiers` — a list of data source GUIDs Optional parameters for refining the output: - `ai_context`: additional context to improve response quality - `content` — supplementary text or CSV data as string input - `instructions` — custom text instructions for the AI system - `limit_relevant_questions`: maximum number of questions to return (default: `5`) - `bypass_cache`: if `true`, forces fresh computation instead of returning cached results If the request is successful, the API returns a list of relevant analytical questions, each containing: - `query`: the generated sub-question - `data_source_identifier`: the unique ID of the data source the question targets - `data_source_name`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param getRelevantQuestionsRequest */ getRelevantQuestionsWithHttpInfo(getRelevantQuestionsRequest: GetRelevantQuestionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.13.0.cl or later Breaks down a natural language query into a series of smaller analytical sub-questions, each mapped to a relevant data source. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request must include: - `query`: the natural language question to decompose into analytical sub-questions - `metadata_context`: at least one of the following context identifiers to guide question generation: - `conversation_identifier` — an existing conversation session ID - `answer_identifiers` — a list of Answer GUIDs - `liveboard_identifiers` — a list of Liveboard GUIDs - `data_source_identifiers` — a list of data source GUIDs Optional parameters for refining the output: - `ai_context`: additional context to improve response quality - `content` — supplementary text or CSV data as string input - `instructions` — custom text instructions for the AI system - `limit_relevant_questions`: maximum number of questions to return (default: `5`) - `bypass_cache`: if `true`, forces fresh computation instead of returning cached results If the request is successful, the API returns a list of relevant analytical questions, each containing: - `query`: the generated sub-question - `data_source_identifier`: the unique ID of the data source the question targets - `data_source_name`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param getRelevantQuestionsRequest */ getRelevantQuestions(getRelevantQuestionsRequest: GetRelevantQuestionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Returns the current share state for a conversation the caller owns: whether the shared view is outdated relative to the latest conversation content, and the list of principals that currently have access. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation. */ getShareInfoWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Returns the current share state for a conversation the caller owns: whether the shared view is outdated relative to the latest conversation content, and the list of principals that currently have access. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation. */ getShareInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Returns the full read-only view of a shared conversation, including ordered messages and data source metadata. Accessible by the conversation owner and any principal (user or group) that has been granted access. Requires `CAN_USE_SPOTTER` privilege. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the source conversation. */ getSharedContentWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Returns the full read-only view of a shared conversation, including ordered messages and data source metadata. Accessible by the conversation owner and any principal (user or group) that has been granted access. Requires `CAN_USE_SPOTTER` privilege. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the source conversation. */ getSharedContent(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Imports memory entries (rules, recipes, and always-apply rules) from a YAML payload, typically a payload produced by `exportMemory` and edited locally. The imported entries replace the existing memory for the data-models referenced in the payload. `dry_run` is required. Pass `true` first to validate the payload and review the preview counts and any row-level failures without making changes, then re-run with `dry_run = false` to apply the import. An import is not applied if any row fails validation. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to import data-model memories using a given yaml file. This yaml file can be obtained from the export memory API in source env and can be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To import memory, the request must include: - `content`: The full serialized memory payload to import (YAML). Typically the `content` value returned by the `exportMemory` API, edited locally and re-submitted. The payload itself identifies which data-models the memory applies to, so no separate identifier list is required. - `dry_run`: Required. When `true`, validate the payload and return preview counts without writing anything; when `false`, apply the import. Always run with `dry_run = true` first, then re-run with `dry_run = false` once you are satisfied with the preview. The import replaces the existing global memories on the data-models referenced in the payload with the entries supplied in the payload. The API returns a response object with: - `status`: The terminal status of the import (`SUCCESS`, `VALIDATION_FAILED`, or `FAILED`). - `summary`: Per `(memory_type, source)` counts. In a dry run the `deleted_record_count`/`inserted_record_count` are previews; in a real import they are actuals. On `VALIDATION_FAILED`, `summary` is `null` when validation fails before any item is processed (e.g. an unresolved or inaccessible data-model source) and an empty list otherwise — treat both as \"no counts available\". - `validation_failures`: Per-item validation failures, each with `line_number`, `reason`, `field_name`, and `message` for click-to-locate and inline highlighting. - `diagnostics`: Groups of diagnostic messages, each with a `sub_status` (`WARNING`, `FAILURE`, `ROLLED_BACK`, or `UNKNOWN`) and a `messages` list. This is the single channel for both non-fatal warnings (under `WARNING`, e.g. when some older memory entries could not be fully cleaned up) and fatal causes (e.g. the failure reason under `FAILURE`, or a `ROLLED_BACK` group when new entries were undone). - `operation_id`: A server-generated identifier for this import operation; include it when contacting support to help correlate server-side logs. Populated once the server registers the import operation; `null` when the request fails earlier (e.g. while parsing the payload or resolving its data-model sources). #### File format The payload is a YAML document with a single top-level `memories` key holding a list of memory items. Each item is self-contained: a `type`, a typed `content` block, a `datamodel_sources` list, and optional `tags`. Typically you don\'t hand-author this file — you obtain it from `exportMemory`, edit it, and submit it back through `importMemory`. ```yaml memories: - type: RULE content: rule_definition: \"Always filter revenue to closed-won deals.\" datamodel_sources: - guid: 11111111-1111-1111-1111-111111111111 obj_id: sales_data_model tags: - finance - type: RULE content: rule_definition: \"Exclude internal test accounts from all results.\" datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"top accounts by revenue\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"monthly new customer count\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: ALWAYS_APPLY_RULES content: rules: - \"Never show internal test accounts.\" - \"Round currency to whole dollars.\" datamodel_sources: - guid: 22222222-2222-2222-2222-222222222222 ``` A file can contain multiple `RULE` and multiple `RECIPE` items for a data-model, but at most one `ALWAYS_APPLY_RULES` item per data-model. ##### Memory item fields | Field | Required | Type | Description | |-------|----------|------|-------------| | `type` | Yes | String enum | One of `RULE`, `RECIPE`, or `ALWAYS_APPLY_RULES`. | | `content` | Yes | Mapping | Type-specific content block (see below). | | `datamodel_sources` | Yes | Non-empty list | The data-model(s) the memory attaches to. | | `tags` | No | List of strings | Free-form labels. | ##### Memory types and content | `type` | Content fields | Notes | |--------|----------------|-------| | `RULE` | `rule_definition` — required, non-empty string | A single semantic rule. | | `RECIPE` | `recipe` and `user_query` — both required, non-empty strings | `recipe` is an opaque serialized blob; `user_query` is the natural-language query it answers. | | `ALWAYS_APPLY_RULES` | `rules` — required, non-empty list of non-empty strings | Data-model-wide always-apply rules. At most one `ALWAYS_APPLY_RULES` item per data-model. | ##### Identifying data-models (`datamodel_sources`) Each item must list at least one source. Each entry identifies a data-model by at least one of: - `guid` — the data-model GUID. - `obj_id` — a stable object ID, resolved to a GUID server-side. If both are supplied, `obj_id` takes precedence and `guid` is ignored entirely; `guid` takes effect only when `obj_id` is absent. Exported files populate `guid` and, if present, `obj_id` as well. > ⚠️ **Cross-environment import:** When `obj_id` is present it is > authoritative — the accompanying `guid` is **not** used as a fallback. > If an `obj_id` does not exist in the target environment, that item > fails with `UNRESOLVED_SOURCE`. Remove or correct stale `obj_id` > values before importing across environments. #### Validations reference The payload is fully validated before anything is written. This applies to `dry_run = true` and `dry_run = false` alike: if any item fails validation, the entire import is rejected — no partial writes — and all failures are returned together so you can fix them in one pass. ##### Limits Default limits (may be adjusted in future if the need arises): | Limit | Default | |-------|---------| | Uploaded file size | 10 MiB | | Total memory items | 10,000 | | `rule_definition` length | 1,000 characters | | `user_query` length | 1,000 characters | | `recipe` length | 2,000 characters | | `rules` combined length (`ALWAYS_APPLY_RULES`) | 2,000 characters | | Tags per item | 10 | | Characters per tag | 50 | The `rules` limit in `ALWAYS_APPLY_RULES` is a combined budget across all entries in the list, not per entry. ##### Structural rules - The document must be a mapping with a `memories` key whose value is a list. - Unknown keys — at the top level, within an item, or under `content` — are rejected. - Each item\'s `type` must be one of the three supported values, and `content` must match that type\'s shape. - Null, empty-string, or wrong-typed values in a required field are treated as missing. - Non-string or empty `tags` entries are dropped silently; certain tags reserved for internal use are stripped automatically before the item is stored. ##### Cross-item rules - A data-model referenced by more than one `ALWAYS_APPLY_RULES` item is rejected — combine them into a single item\'s `rules` list. ##### Failure reasons Each entry in `validation_failures` carries one of: | Reason | Meaning | |--------|---------| | `SCHEMA` | YAML structure is invalid or unsupported. | | `VALIDATION` | A required field is missing/empty, a count exceeds a limit, or a GUID is malformed. | | `CHAR_LIMIT` | A content field or tag exceeds its size limit. | | `UNRESOLVED_SOURCE` | A `guid` or `obj_id` could not be resolved to an existing data-model. | | `ACCESS_DENIED` | The caller lacks sufficient access on the referenced data-model. | #### Dry run `dry_run` is required and has no default, so the import is always a deliberate two-step flow: 1. **First, call with `dry_run = true`.** This validates the payload and previews what would happen — the counts in `summary` and any `validation_failures` — without writing anything. 2. **Then, after reviewing a clean preview, call again with `dry_run = false`** (same `content`). This applies the import. It refuses to write when any item fails validation, so fix the reported `validation_failures` and resubmit. > ###### Important: > Never call `dry_run = false` without first inspecting a `dry_run = true` preview. A real import deletes and replaces existing global memories on the referenced data-models. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have the necessary Spotter permissions, or the bearer token does not correspond to the data-model\'s org. Per-data-model access failures do not use this code — they surface as `ACCESS_DENIED` validation failures with HTTP `200` (see Logical failures below). | #### Logical failures Validation and write failures are not returned in the error envelope. The call returns `200` with a terminal `status` of `VALIDATION_FAILED` or `FAILED`, and the details live in `validation_failures` / `diagnostics`: - **VALIDATION_FAILED** — one or more items failed schema/semantic validation; nothing was written. Inspect `validation_failures`, fix the items, and resubmit. - **FAILED** — the import did not complete. Inspect `diagnostics`: a `ROLLED_BACK` group means writing the new entries failed and any entries written before the failure were undone (existing memory is intact, no destructive change), while a `FAILURE` group carries another non-validation cause. Sample `VALIDATION_FAILED` responses (HTTP 200): **Invalid data-model (unresolved source):** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"UNRESOLVED_SOURCE\", \"field_name\": \"datamodel_sources[0].guid\", \"message\": \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" ] } ], \"operation_id\": null } ``` **Inaccessible data-models:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'\" }, { \"line_number\": 8, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Memory import validation failed with 2 error(s): Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'; Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" ] } ], \"operation_id\": null } ``` **Character-limit validations:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": [], \"validation_failures\": [ { \"line_number\": 3, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.rule_definition\", \"message\": \"content.rule_definition is 1073 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.user_query\", \"message\": \"content.user_query is 1150 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.recipe\", \"message\": \"content.recipe is 3574 characters; max allowed is 2000\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Validation failures present; fix them and re-run to see the DRY_RUN preview.\" ] } ], \"operation_id\": \"66666666-6666-6666-6666-666666666666\" } ``` > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param importMemoryRequest */ importMemoryWithHttpInfo(importMemoryRequest: ImportMemoryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Imports memory entries (rules, recipes, and always-apply rules) from a YAML payload, typically a payload produced by `exportMemory` and edited locally. The imported entries replace the existing memory for the data-models referenced in the payload. `dry_run` is required. Pass `true` first to validate the payload and review the preview counts and any row-level failures without making changes, then re-run with `dry_run = false` to apply the import. An import is not applied if any row fails validation. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to import data-model memories using a given yaml file. This yaml file can be obtained from the export memory API in source env and can be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To import memory, the request must include: - `content`: The full serialized memory payload to import (YAML). Typically the `content` value returned by the `exportMemory` API, edited locally and re-submitted. The payload itself identifies which data-models the memory applies to, so no separate identifier list is required. - `dry_run`: Required. When `true`, validate the payload and return preview counts without writing anything; when `false`, apply the import. Always run with `dry_run = true` first, then re-run with `dry_run = false` once you are satisfied with the preview. The import replaces the existing global memories on the data-models referenced in the payload with the entries supplied in the payload. The API returns a response object with: - `status`: The terminal status of the import (`SUCCESS`, `VALIDATION_FAILED`, or `FAILED`). - `summary`: Per `(memory_type, source)` counts. In a dry run the `deleted_record_count`/`inserted_record_count` are previews; in a real import they are actuals. On `VALIDATION_FAILED`, `summary` is `null` when validation fails before any item is processed (e.g. an unresolved or inaccessible data-model source) and an empty list otherwise — treat both as \"no counts available\". - `validation_failures`: Per-item validation failures, each with `line_number`, `reason`, `field_name`, and `message` for click-to-locate and inline highlighting. - `diagnostics`: Groups of diagnostic messages, each with a `sub_status` (`WARNING`, `FAILURE`, `ROLLED_BACK`, or `UNKNOWN`) and a `messages` list. This is the single channel for both non-fatal warnings (under `WARNING`, e.g. when some older memory entries could not be fully cleaned up) and fatal causes (e.g. the failure reason under `FAILURE`, or a `ROLLED_BACK` group when new entries were undone). - `operation_id`: A server-generated identifier for this import operation; include it when contacting support to help correlate server-side logs. Populated once the server registers the import operation; `null` when the request fails earlier (e.g. while parsing the payload or resolving its data-model sources). #### File format The payload is a YAML document with a single top-level `memories` key holding a list of memory items. Each item is self-contained: a `type`, a typed `content` block, a `datamodel_sources` list, and optional `tags`. Typically you don\'t hand-author this file — you obtain it from `exportMemory`, edit it, and submit it back through `importMemory`. ```yaml memories: - type: RULE content: rule_definition: \"Always filter revenue to closed-won deals.\" datamodel_sources: - guid: 11111111-1111-1111-1111-111111111111 obj_id: sales_data_model tags: - finance - type: RULE content: rule_definition: \"Exclude internal test accounts from all results.\" datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"top accounts by revenue\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"monthly new customer count\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: ALWAYS_APPLY_RULES content: rules: - \"Never show internal test accounts.\" - \"Round currency to whole dollars.\" datamodel_sources: - guid: 22222222-2222-2222-2222-222222222222 ``` A file can contain multiple `RULE` and multiple `RECIPE` items for a data-model, but at most one `ALWAYS_APPLY_RULES` item per data-model. ##### Memory item fields | Field | Required | Type | Description | |-------|----------|------|-------------| | `type` | Yes | String enum | One of `RULE`, `RECIPE`, or `ALWAYS_APPLY_RULES`. | | `content` | Yes | Mapping | Type-specific content block (see below). | | `datamodel_sources` | Yes | Non-empty list | The data-model(s) the memory attaches to. | | `tags` | No | List of strings | Free-form labels. | ##### Memory types and content | `type` | Content fields | Notes | |--------|----------------|-------| | `RULE` | `rule_definition` — required, non-empty string | A single semantic rule. | | `RECIPE` | `recipe` and `user_query` — both required, non-empty strings | `recipe` is an opaque serialized blob; `user_query` is the natural-language query it answers. | | `ALWAYS_APPLY_RULES` | `rules` — required, non-empty list of non-empty strings | Data-model-wide always-apply rules. At most one `ALWAYS_APPLY_RULES` item per data-model. | ##### Identifying data-models (`datamodel_sources`) Each item must list at least one source. Each entry identifies a data-model by at least one of: - `guid` — the data-model GUID. - `obj_id` — a stable object ID, resolved to a GUID server-side. If both are supplied, `obj_id` takes precedence and `guid` is ignored entirely; `guid` takes effect only when `obj_id` is absent. Exported files populate `guid` and, if present, `obj_id` as well. > ⚠️ **Cross-environment import:** When `obj_id` is present it is > authoritative — the accompanying `guid` is **not** used as a fallback. > If an `obj_id` does not exist in the target environment, that item > fails with `UNRESOLVED_SOURCE`. Remove or correct stale `obj_id` > values before importing across environments. #### Validations reference The payload is fully validated before anything is written. This applies to `dry_run = true` and `dry_run = false` alike: if any item fails validation, the entire import is rejected — no partial writes — and all failures are returned together so you can fix them in one pass. ##### Limits Default limits (may be adjusted in future if the need arises): | Limit | Default | |-------|---------| | Uploaded file size | 10 MiB | | Total memory items | 10,000 | | `rule_definition` length | 1,000 characters | | `user_query` length | 1,000 characters | | `recipe` length | 2,000 characters | | `rules` combined length (`ALWAYS_APPLY_RULES`) | 2,000 characters | | Tags per item | 10 | | Characters per tag | 50 | The `rules` limit in `ALWAYS_APPLY_RULES` is a combined budget across all entries in the list, not per entry. ##### Structural rules - The document must be a mapping with a `memories` key whose value is a list. - Unknown keys — at the top level, within an item, or under `content` — are rejected. - Each item\'s `type` must be one of the three supported values, and `content` must match that type\'s shape. - Null, empty-string, or wrong-typed values in a required field are treated as missing. - Non-string or empty `tags` entries are dropped silently; certain tags reserved for internal use are stripped automatically before the item is stored. ##### Cross-item rules - A data-model referenced by more than one `ALWAYS_APPLY_RULES` item is rejected — combine them into a single item\'s `rules` list. ##### Failure reasons Each entry in `validation_failures` carries one of: | Reason | Meaning | |--------|---------| | `SCHEMA` | YAML structure is invalid or unsupported. | | `VALIDATION` | A required field is missing/empty, a count exceeds a limit, or a GUID is malformed. | | `CHAR_LIMIT` | A content field or tag exceeds its size limit. | | `UNRESOLVED_SOURCE` | A `guid` or `obj_id` could not be resolved to an existing data-model. | | `ACCESS_DENIED` | The caller lacks sufficient access on the referenced data-model. | #### Dry run `dry_run` is required and has no default, so the import is always a deliberate two-step flow: 1. **First, call with `dry_run = true`.** This validates the payload and previews what would happen — the counts in `summary` and any `validation_failures` — without writing anything. 2. **Then, after reviewing a clean preview, call again with `dry_run = false`** (same `content`). This applies the import. It refuses to write when any item fails validation, so fix the reported `validation_failures` and resubmit. > ###### Important: > Never call `dry_run = false` without first inspecting a `dry_run = true` preview. A real import deletes and replaces existing global memories on the referenced data-models. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have the necessary Spotter permissions, or the bearer token does not correspond to the data-model\'s org. Per-data-model access failures do not use this code — they surface as `ACCESS_DENIED` validation failures with HTTP `200` (see Logical failures below). | #### Logical failures Validation and write failures are not returned in the error envelope. The call returns `200` with a terminal `status` of `VALIDATION_FAILED` or `FAILED`, and the details live in `validation_failures` / `diagnostics`: - **VALIDATION_FAILED** — one or more items failed schema/semantic validation; nothing was written. Inspect `validation_failures`, fix the items, and resubmit. - **FAILED** — the import did not complete. Inspect `diagnostics`: a `ROLLED_BACK` group means writing the new entries failed and any entries written before the failure were undone (existing memory is intact, no destructive change), while a `FAILURE` group carries another non-validation cause. Sample `VALIDATION_FAILED` responses (HTTP 200): **Invalid data-model (unresolved source):** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"UNRESOLVED_SOURCE\", \"field_name\": \"datamodel_sources[0].guid\", \"message\": \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" ] } ], \"operation_id\": null } ``` **Inaccessible data-models:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'\" }, { \"line_number\": 8, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Memory import validation failed with 2 error(s): Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'; Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" ] } ], \"operation_id\": null } ``` **Character-limit validations:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": [], \"validation_failures\": [ { \"line_number\": 3, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.rule_definition\", \"message\": \"content.rule_definition is 1073 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.user_query\", \"message\": \"content.user_query is 1150 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.recipe\", \"message\": \"content.recipe is 3574 characters; max allowed is 2000\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Validation failures present; fix them and re-run to see the DRY_RUN preview.\" ] } ], \"operation_id\": \"66666666-6666-6666-6666-666666666666\" } ``` > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param importMemoryRequest */ importMemory(importMemoryRequest: ImportMemoryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Loads the full answer payload for a specific answer item in an agent conversation. Returns structured answer data including the TML query, token breakdown, visualization metadata, and agent context state. Pass the `answer_id` from an `AnswerResponseItem` in the `getConversation` response as the `answer_identifier` parameter. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Loads the answer details for a specific answer item in an agent conversation. Returns structured answer data including the TML token list, visualization metadata, and agent context state. Use this endpoint to retrieve the full answer representation for an answer item — for example, to re-render a chart, export a query, or inspect the generated TML. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation, as returned by `createAgentConversation` - `answer_identifier` *(path parameter)*: the `answer_id` field from an `AnswerResponseItem` in the `getConversation` response If the request is successful, the response contains an `answer` object with the following fields: | Field | Type | Description | |-------|------|-------------| | `title` | `String` | Display title of the generated answer (e.g., `\"sales by month\"`). | | `description` | `String` | Optional description of the answer. | | `session_identifier` | `String` | Unique identifier of the session in which this answer was generated. | | `generation_number` | `Int` | Generation sequence number of this answer within the session. | | `tokens` | `[String]` | Ordered list of TML token strings that make up the answer query (e.g., `[\"[sales]\", \"[date].\'monthly\'\"]`). | | `visualization_type` | `VizType` | Suggested visualization type: `Chart`, `Table`, or `Undefined`. `null` if no suggestion is available. | | `formulas` | `[String]` | List of formula names referenced in the answer. Empty if none are used. | | `parameters` | `[String]` | List of parameter names applied to the answer. Empty if none are used. | | `sub_queries` | `[JSON]` | List of sub-query objects used in the answer. Empty if none are present. | | `ac_state` | `ACState` | Agent context state, including `transaction_identifier` and `generation_number`, used to correlate this answer with a specific agent turn. | #### ACState fields | Field | Type | Description | |-------|------|-------------| | `transaction_identifier` | `String` | Unique identifier of the agent transaction that produced this answer. | | `generation_number` | `Int` | Generation number within the transaction. | #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/answers/{answer_identifier}/details ``` #### Example response ```json { \"answer\": { \"title\": \"sales by month\", \"description\": \"\", \"session_identifier\": \"7b00b801-73f4-4639-af5e-e775584ceba6\", \"generation_number\": 1, \"tokens\": [\"[sales]\", \"[date].\'monthly\'\"], \"visualization_type\": null, \"formulas\": [], \"parameters\": [], \"sub_queries\": [], \"ac_state\": { \"transaction_identifier\": \"7f6c9948-b4c7-4098-bb1f-6c67bc0e5699\", \"generation_number\": 1 } } } ``` #### Typical usage scenario 1. Call `getConversation` to retrieve the full conversation history. 2. Locate an `AnswerResponseItem` in `response_items` — note its `answer_id` field. 3. Call `loadAnswer` with the `conversation_identifier` and `answer_id` as `answer_identifier`. 4. The returned `tokens` array can be used to open the answer in the ThoughtSpot search interface or rendered as pill chips in the UI. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation or message exists with the given identifiers for the authenticated user. | | 422 | Unprocessable Entity — the message does not contain an answer of the expected type. | > ###### Note: > > - This endpoint only loads answer-type messages. Other message types are not supported. > - `visualization_type` may be `null` if the agent did not produce a visualization suggestion for this answer. > - `formulas`, `parameters`, and `sub_queries` are returned as empty arrays when not applicable — they are never `null`. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param answerIdentifier Unique identifier of the answer to load. Use the `answer_id` field from an `AnswerResponseItem` returned by `getConversation`. */ loadAnswerWithHttpInfo(conversationIdentifier: string, answerIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Loads the full answer payload for a specific answer item in an agent conversation. Returns structured answer data including the TML query, token breakdown, visualization metadata, and agent context state. Pass the `answer_id` from an `AnswerResponseItem` in the `getConversation` response as the `answer_identifier` parameter. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Loads the answer details for a specific answer item in an agent conversation. Returns structured answer data including the TML token list, visualization metadata, and agent context state. Use this endpoint to retrieve the full answer representation for an answer item — for example, to re-render a chart, export a query, or inspect the generated TML. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation, as returned by `createAgentConversation` - `answer_identifier` *(path parameter)*: the `answer_id` field from an `AnswerResponseItem` in the `getConversation` response If the request is successful, the response contains an `answer` object with the following fields: | Field | Type | Description | |-------|------|-------------| | `title` | `String` | Display title of the generated answer (e.g., `\"sales by month\"`). | | `description` | `String` | Optional description of the answer. | | `session_identifier` | `String` | Unique identifier of the session in which this answer was generated. | | `generation_number` | `Int` | Generation sequence number of this answer within the session. | | `tokens` | `[String]` | Ordered list of TML token strings that make up the answer query (e.g., `[\"[sales]\", \"[date].\'monthly\'\"]`). | | `visualization_type` | `VizType` | Suggested visualization type: `Chart`, `Table`, or `Undefined`. `null` if no suggestion is available. | | `formulas` | `[String]` | List of formula names referenced in the answer. Empty if none are used. | | `parameters` | `[String]` | List of parameter names applied to the answer. Empty if none are used. | | `sub_queries` | `[JSON]` | List of sub-query objects used in the answer. Empty if none are present. | | `ac_state` | `ACState` | Agent context state, including `transaction_identifier` and `generation_number`, used to correlate this answer with a specific agent turn. | #### ACState fields | Field | Type | Description | |-------|------|-------------| | `transaction_identifier` | `String` | Unique identifier of the agent transaction that produced this answer. | | `generation_number` | `Int` | Generation number within the transaction. | #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/answers/{answer_identifier}/details ``` #### Example response ```json { \"answer\": { \"title\": \"sales by month\", \"description\": \"\", \"session_identifier\": \"7b00b801-73f4-4639-af5e-e775584ceba6\", \"generation_number\": 1, \"tokens\": [\"[sales]\", \"[date].\'monthly\'\"], \"visualization_type\": null, \"formulas\": [], \"parameters\": [], \"sub_queries\": [], \"ac_state\": { \"transaction_identifier\": \"7f6c9948-b4c7-4098-bb1f-6c67bc0e5699\", \"generation_number\": 1 } } } ``` #### Typical usage scenario 1. Call `getConversation` to retrieve the full conversation history. 2. Locate an `AnswerResponseItem` in `response_items` — note its `answer_id` field. 3. Call `loadAnswer` with the `conversation_identifier` and `answer_id` as `answer_identifier`. 4. The returned `tokens` array can be used to open the answer in the ThoughtSpot search interface or rendered as pill chips in the UI. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation or message exists with the given identifiers for the authenticated user. | | 422 | Unprocessable Entity — the message does not contain an answer of the expected type. | > ###### Note: > > - This endpoint only loads answer-type messages. Other message types are not supported. > - `visualization_type` may be `null` if the agent did not produce a visualization suggestion for this answer. > - `formulas`, `parameters`, and `sub_queries` are returned as empty arrays when not applicable — they are never `null`. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param answerIdentifier Unique identifier of the answer to load. Use the `answer_id` field from an `AnswerResponseItem` returned by `getConversation`. */ loadAnswer(conversationIdentifier: string, answerIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.7.0.cl or later **Deprecated** — Use `getRelevantQuestions` instead (available from 10.13.0.cl). Breaks down a topical or goal-oriented natural language question into smaller, actionable analytical sub-questions, each mapped to a relevant data source for independent execution. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request accepts the following parameters: - `nlsRequest`: contains the user `query` to decompose, along with optional `instructions` and `bypassCache` flag - `worksheetIds`: list of data source identifiers to scope the decomposition - `answerIds`: list of Answer GUIDs whose data guides the response - `liveboardIds`: list of Liveboard GUIDs whose data guides the response - `conversationId`: an existing conversation session ID for context continuity - `content`: supplementary text or CSV data to improve response quality - `maxDecomposedQueries`: maximum number of sub-questions to return (default: `5`) If the request is successful, the API returns a `decomposedQueryResponse` containing a list of `decomposedQueries`, each with: - `query`: the generated analytical sub-question - `worksheetId`: the unique ID of the data source the question targets - `worksheetName`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is deprecated since 10.13.0.cl. Use `getRelevantQuestions` for new integrations. > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot support to enable Spotter on your cluster. * @param queryGetDecomposedQueryRequest */ queryGetDecomposedQueryWithHttpInfo(queryGetDecomposedQueryRequest: QueryGetDecomposedQueryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.7.0.cl or later **Deprecated** — Use `getRelevantQuestions` instead (available from 10.13.0.cl). Breaks down a topical or goal-oriented natural language question into smaller, actionable analytical sub-questions, each mapped to a relevant data source for independent execution. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request accepts the following parameters: - `nlsRequest`: contains the user `query` to decompose, along with optional `instructions` and `bypassCache` flag - `worksheetIds`: list of data source identifiers to scope the decomposition - `answerIds`: list of Answer GUIDs whose data guides the response - `liveboardIds`: list of Liveboard GUIDs whose data guides the response - `conversationId`: an existing conversation session ID for context continuity - `content`: supplementary text or CSV data to improve response quality - `maxDecomposedQueries`: maximum number of sub-questions to return (default: `5`) If the request is successful, the API returns a `decomposedQueryResponse` containing a list of `decomposedQueries`, each with: - `query`: the generated analytical sub-question - `worksheetId`: the unique ID of the data source the question targets - `worksheetName`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is deprecated since 10.13.0.cl. Use `getRelevantQuestions` for new integrations. > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot support to enable Spotter on your cluster. * @param queryGetDecomposedQueryRequest */ queryGetDecomposedQuery(queryGetDecomposedQueryRequest: QueryGetDecomposedQueryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Searches Spotter Analysts. Two modes: - Fetch mode: when `analyst_identifier` is provided, the response contains exactly that analyst and all other filters are ignored. - List mode: returns a paginated list of analysts visible to the caller, optionally filtered by a case-insensitive substring match on the analyst name (`query`) and by ownership (`type`). Results are ordered by most recently accessed. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Version: 26.10.0.cl or later Searches Spotter Analysts. Use this endpoint to page through the analysts visible to you, or to fetch a single analyst by its identifier. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Use a bearer token for the Org whose analysts should be searched. #### Usage guidelines The endpoint operates in one of two modes: **Fetch mode** — when `analyst_identifier` is provided, the response contains exactly that analyst (`total_size` is 1) and all other filters are ignored. The caller must have access to the analyst (owner, shared with, or admin/Spotter-management privileges). **List mode** — when `analyst_identifier` is omitted, the response is a paginated list of analysts the caller can see, ordered by most recently accessed: - `record_size` (optional): number of records per page. Default 50, between 1 and 500. - `record_offset` (optional): zero-based index of the first record. Default 0, maximum 10000. - `query` (optional): case-insensitive substring match applied to the analyst **name only**. - `type` (optional): ownership filter — `ALL` (default; created by or shared with me), `CREATED_BY_ME`, or `SHARED_TO_ME`. The response contains `analysts` — the page of matching analysts — and `total_size`, the total number of matches before pagination. Each analyst includes its `id`, `name`, `description`, `instructions`, `sources` (with `id`, `type`, and display `name`), enriched `mcp_connectors` (with `id`, `name`, and `icon_url`), `icon_id`, `starter_prompts` (including the server-managed fixed prompt, marked `is_fixed`), `updated_time_in_millis` and `last_accessed_time_in_millis` (epoch milliseconds), and `created_by` / `updated_by` user references (with `id`, `name`, and `display_name`). #### Error conditions - `403` — missing privileges, or (fetch mode) no access to the requested analyst. - `404` — (fetch mode) no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as `record_size` or `record_offset` out of range. * @param searchAnalystsRequest */ searchAnalystsWithHttpInfo(searchAnalystsRequest: SearchAnalystsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Searches Spotter Analysts. Two modes: - Fetch mode: when `analyst_identifier` is provided, the response contains exactly that analyst and all other filters are ignored. - List mode: returns a paginated list of analysts visible to the caller, optionally filtered by a case-insensitive substring match on the analyst name (`query`) and by ownership (`type`). Results are ordered by most recently accessed. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Version: 26.10.0.cl or later Searches Spotter Analysts. Use this endpoint to page through the analysts visible to you, or to fetch a single analyst by its identifier. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Use a bearer token for the Org whose analysts should be searched. #### Usage guidelines The endpoint operates in one of two modes: **Fetch mode** — when `analyst_identifier` is provided, the response contains exactly that analyst (`total_size` is 1) and all other filters are ignored. The caller must have access to the analyst (owner, shared with, or admin/Spotter-management privileges). **List mode** — when `analyst_identifier` is omitted, the response is a paginated list of analysts the caller can see, ordered by most recently accessed: - `record_size` (optional): number of records per page. Default 50, between 1 and 500. - `record_offset` (optional): zero-based index of the first record. Default 0, maximum 10000. - `query` (optional): case-insensitive substring match applied to the analyst **name only**. - `type` (optional): ownership filter — `ALL` (default; created by or shared with me), `CREATED_BY_ME`, or `SHARED_TO_ME`. The response contains `analysts` — the page of matching analysts — and `total_size`, the total number of matches before pagination. Each analyst includes its `id`, `name`, `description`, `instructions`, `sources` (with `id`, `type`, and display `name`), enriched `mcp_connectors` (with `id`, `name`, and `icon_url`), `icon_id`, `starter_prompts` (including the server-managed fixed prompt, marked `is_fixed`), `updated_time_in_millis` and `last_accessed_time_in_millis` (epoch milliseconds), and `created_by` / `updated_by` user references (with `id`, `name`, and `display_name`). #### Error conditions - `403` — missing privileges, or (fetch mode) no access to the requested analyst. - `404` — (fetch mode) no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as `record_size` or `record_offset` out of range. * @param searchAnalystsRequest */ searchAnalysts(searchAnalystsRequest: SearchAnalystsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.5.0.cl or later Sends natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - For real-time streamed responses, use `sendAgentConversationMessageStreaming` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageRequest */ sendAgentConversationMessageWithHttpInfo(conversationIdentifier: string, sendAgentConversationMessageRequest: SendAgentConversationMessageRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.5.0.cl or later Sends natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - For real-time streamed responses, use `sendAgentConversationMessageStreaming` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageRequest */ sendAgentConversationMessage(conversationIdentifier: string, sendAgentConversationMessageRequest: SendAgentConversationMessageRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.5.0.cl or later Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | | ---- | -------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). > - For the complete response in a single payload, use `sendAgentConversationMessage` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageStreamingRequest */ sendAgentConversationMessageStreamingWithHttpInfo(conversationIdentifier: string, sendAgentConversationMessageStreamingRequest: SendAgentConversationMessageStreamingRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.5.0.cl or later Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | | ---- | -------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). > - For the complete response in a single payload, use `sendAgentConversationMessage` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageStreamingRequest */ sendAgentConversationMessageStreaming(conversationIdentifier: string, sendAgentConversationMessageStreamingRequest: SendAgentConversationMessageStreamingRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessage` instead. Send natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessage` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentMessageRequest */ sendAgentMessageWithHttpInfo(conversationIdentifier: string, sendAgentMessageRequest: SendAgentMessageRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessage` instead. Send natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessage` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentMessageRequest */ sendAgentMessage(conversationIdentifier: string, sendAgentMessageRequest: SendAgentMessageRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessageStreaming` instead. Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessageStreaming` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). * @param sendAgentMessageStreamingRequest */ sendAgentMessageStreamingWithHttpInfo(sendAgentMessageStreamingRequest: SendAgentMessageStreamingRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessageStreaming` instead. Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessageStreaming` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). * @param sendAgentMessageStreamingRequest */ sendAgentMessageStreaming(sendAgentMessageStreamingRequest: SendAgentMessageStreamingRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Sends a follow-up message to an existing conversation within the context of a data model. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. A conversation must first be created using the `createConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createConversation` - `metadata_identifier`: the unique ID of the data source used for the conversation - `message`: a natural language string with the follow-up question If the request is successful, the API returns an array of response messages, each containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param sendMessageRequest */ sendMessageWithHttpInfo(conversationIdentifier: string, sendMessageRequest: SendMessageRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.4.0.cl or later Sends a follow-up message to an existing conversation within the context of a data model. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. A conversation must first be created using the `createConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createConversation` - `metadata_identifier`: the unique ID of the data source used for the conversation - `message`: a natural language string with the follow-up question If the request is successful, the API returns an array of response messages, each containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param sendMessageRequest */ sendMessage(conversationIdentifier: string, sendMessageRequest: SendMessageRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Creates or updates the admin instructions for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. If instructions already exist for the org, they are replaced (upsert semantics). Requires admin privileges. Only users with org admin access can set agent instructions. #### Usage guidelines The request must include: - `instructions`: the instructions text to apply to the agent (maximum 5000 characters) Instructions are validated against system guardrails before being saved. If the instructions contain content that conflicts with guardrails, the request is rejected with a `409` error and the existing instructions remain unchanged. If the request is successful, the response includes the saved `AgentInstructions` record: - `id`: unique identifier of the record - `instructions`: the saved instructions text - `created_at`: ISO timestamp when the instructions were first created - `updated_at`: ISO timestamp of this update - `last_updated_by`: user ID of the admin who performed this update #### Error responses | Code | Description | |------|-------------| | 400 | Bad request — the request body is missing required fields or the `instructions` field exceeds the maximum allowed length of 5000 characters. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to set agent instructions. | | 409 | Conflict — the provided instructions conflict with system guardrails. Review and revise the instructions text before retrying. | | 500 | Internal server error. | > ###### Note: > > - This operation uses upsert semantics: it creates the instructions record if none exists, or replaces the existing one. > - Instructions take effect immediately for new conversations created after the update. > - Use `getAgentInstructions` to retrieve the current instructions before making changes. > - Available from version 26.6.0.cl and later. * @param setAgentInstructionsRequest */ setAgentInstructionsWithHttpInfo(setAgentInstructionsRequest: SetAgentInstructionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Creates or updates the admin instructions for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. If instructions already exist for the org, they are replaced (upsert semantics). Requires admin privileges. Only users with org admin access can set agent instructions. #### Usage guidelines The request must include: - `instructions`: the instructions text to apply to the agent (maximum 5000 characters) Instructions are validated against system guardrails before being saved. If the instructions contain content that conflicts with guardrails, the request is rejected with a `409` error and the existing instructions remain unchanged. If the request is successful, the response includes the saved `AgentInstructions` record: - `id`: unique identifier of the record - `instructions`: the saved instructions text - `created_at`: ISO timestamp when the instructions were first created - `updated_at`: ISO timestamp of this update - `last_updated_by`: user ID of the admin who performed this update #### Error responses | Code | Description | |------|-------------| | 400 | Bad request — the request body is missing required fields or the `instructions` field exceeds the maximum allowed length of 5000 characters. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to set agent instructions. | | 409 | Conflict — the provided instructions conflict with system guardrails. Review and revise the instructions text before retrying. | | 500 | Internal server error. | > ###### Note: > > - This operation uses upsert semantics: it creates the instructions record if none exists, or replaces the existing one. > - Instructions take effect immediately for new conversations created after the update. > - Use `getAgentInstructions` to retrieve the current instructions before making changes. > - Available from version 26.6.0.cl and later. * @param setAgentInstructionsRequest */ setAgentInstructions(setAgentInstructionsRequest: SetAgentInstructionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.15.0.cl or later This API allows users to set natural language (NL) instructions for a specific data-model to improve AI-generated answers and query processing. These instructions help guide the AI system to better understand the data context and provide more accurate responses. Requires `CAN_USE_SPOTTER` privilege, either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines To set NL instructions for a data-model, the request must include: - `data_source_identifier`: The unique ID of the data-model for which to set NL instructions - `nl_instructions_info`: An array of instruction objects, each containing: - `instructions`: Array of text instructions for the LLM - `scope`: The scope of the instruction (`GLOBAL`). Currently only `GLOBAL` is supported. It can be extended to data-model-user scope in future. #### Instructions scope - **GLOBAL**: instructions that apply to all users querying this data model If the request is successful, the API returns: - `success`: a boolean indicating whether the operation completed successfully #### Error responses | Code | Description | |------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Instructions help improve the accuracy and relevance of AI-generated responses for the specified data-model. * @param setNLInstructionsRequest */ setNLInstructionsWithHttpInfo(setNLInstructionsRequest: SetNLInstructionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.15.0.cl or later This API allows users to set natural language (NL) instructions for a specific data-model to improve AI-generated answers and query processing. These instructions help guide the AI system to better understand the data context and provide more accurate responses. Requires `CAN_USE_SPOTTER` privilege, either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines To set NL instructions for a data-model, the request must include: - `data_source_identifier`: The unique ID of the data-model for which to set NL instructions - `nl_instructions_info`: An array of instruction objects, each containing: - `instructions`: Array of text instructions for the LLM - `scope`: The scope of the instruction (`GLOBAL`). Currently only `GLOBAL` is supported. It can be extended to data-model-user scope in future. #### Instructions scope - **GLOBAL**: instructions that apply to all users querying this data model If the request is successful, the API returns: - `success`: a boolean indicating whether the operation completed successfully #### Error responses | Code | Description | |------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Instructions help improve the accuracy and relevance of AI-generated responses for the specified data-model. * @param setNLInstructionsRequest */ setNLInstructions(setNLInstructionsRequest: SetNLInstructionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Updates share permissions on a Spotter Analyst, one entry per principal (user or group). `READ_ONLY` and `MODIFY` grant or change the principal\'s access; `NO_ACCESS` revokes it. Granting access also shares the analyst\'s data sources with the principal so the analyst keeps working for them. A successful share returns an empty `204 No Content` response. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Updates share permissions on a Spotter Analyst for one or more principals (users or groups). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The analyst is identified by the `analyst_identifier` path parameter. The request body contains a `permissions` array with one entry per principal: - `principal.identifier` (required): unique identifier of the user or group. - `principal.type` (required): `USER` or `USER_GROUP`. - `share_mode` (required): `READ_ONLY` or `MODIFY` grants (or changes) the principal\'s access; `NO_ACCESS` revokes it. A principal may appear at most once per request. When access is granted, the analyst\'s data sources are automatically shared with the principal as well, so the analyst keeps working for them. A successful request returns an empty `204 No Content` response. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as an empty `permissions` array, a duplicate principal, or a missing field. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to share. * @param shareAnalystRequest */ shareAnalystWithHttpInfo(analystIdentifier: string, shareAnalystRequest: ShareAnalystRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Updates share permissions on a Spotter Analyst, one entry per principal (user or group). `READ_ONLY` and `MODIFY` grant or change the principal\'s access; `NO_ACCESS` revokes it. Granting access also shares the analyst\'s data sources with the principal so the analyst keeps working for them. A successful share returns an empty `204 No Content` response. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Updates share permissions on a Spotter Analyst for one or more principals (users or groups). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The analyst is identified by the `analyst_identifier` path parameter. The request body contains a `permissions` array with one entry per principal: - `principal.identifier` (required): unique identifier of the user or group. - `principal.type` (required): `USER` or `USER_GROUP`. - `share_mode` (required): `READ_ONLY` or `MODIFY` grants (or changes) the principal\'s access; `NO_ACCESS` revokes it. A principal may appear at most once per request. When access is granted, the analyst\'s data sources are automatically shared with the principal as well, so the analyst keeps working for them. A successful request returns an empty `204 No Content` response. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as an empty `permissions` array, a duplicate principal, or a missing field. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to share. * @param shareAnalystRequest */ shareAnalyst(analystIdentifier: string, shareAnalystRequest: ShareAnalystRequest, _options?: PromiseConfigurationOptions): Promise; /** * Grants or revokes access to a shared conversation for one or more principals (users or groups). When principals are added, a read-only shared view of the conversation is created from its current state. Use `refresh_shared_content` to regenerate the shared view with the latest conversation content. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation to share. * @param shareConversationRequest */ shareConversationWithHttpInfo(conversationIdentifier: string, shareConversationRequest: ShareConversationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Grants or revokes access to a shared conversation for one or more principals (users or groups). When principals are added, a read-only shared view of the conversation is created from its current state. Use `refresh_shared_content` to regenerate the shared view with the latest conversation content. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation to share. * @param shareConversationRequest */ shareConversation(conversationIdentifier: string, shareConversationRequest: ShareConversationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Processes a natural language query against a specified data model and returns a single AI-generated answer without requiring a conversation session. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `query`: a natural language question (e.g., \"What were total sales last quarter?\") - `metadata_identifier`: the unique ID of the data source to query against If the request is successful, the API returns a response message containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param singleAnswerRequest */ singleAnswerWithHttpInfo(singleAnswerRequest: SingleAnswerRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Processes a natural language query against a specified data model and returns a single AI-generated answer without requiring a conversation session. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `query`: a natural language question (e.g., \"What were total sales last quarter?\") - `metadata_identifier`: the unique ID of the data source to query against If the request is successful, the API returns a response message containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param singleAnswerRequest */ singleAnswer(singleAnswerRequest: SingleAnswerRequest, _options?: PromiseConfigurationOptions): Promise; /** * Stops an in-progress agent conversation response. Version: 26.6.0.cl or later Version: 26.6.0.cl or later Stops an in-progress agent response for the specified conversation. Use this endpoint to cancel a response that is actively being generated — for example, when the user navigates away, reformulates their question, or no longer needs the current result. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation whose active response should be stopped, as returned by `createAgentConversation` A successful request returns an empty `204 No Content` response. If there is no active response in progress at the time of the call, the request is still treated as successful. After stopping a response, the conversation session remains active. You can continue sending messages using `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming`. #### Example request ```bash POST /api/rest/2.0/ai/agent/conversation/{conversation_identifier}/stop-response ``` #### Typical usage scenario This endpoint is useful when integrating Spotter into a chat UI where users can cancel a long-running query. For example: 1. User sends a message via `sendAgentConversationMessageStreaming`. 2. User clicks a \"Stop generating\" button while the response is streaming. 3. Your client calls `stopConversation` with the active `conversation_identifier`. 4. The stream is terminated and the user can ask a new question. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | > ###### Note: > > - Calling this endpoint when no response is in progress does not return an error. > - The conversation context is preserved after stopping — previous messages and answers remain accessible. > - Available from version 26.6.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - This feature is available only for **Spotter 3** (`SPOTTER3`) version. * @param conversationIdentifier Unique identifier of the conversation to stop. */ stopConversationWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Stops an in-progress agent conversation response. Version: 26.6.0.cl or later Version: 26.6.0.cl or later Stops an in-progress agent response for the specified conversation. Use this endpoint to cancel a response that is actively being generated — for example, when the user navigates away, reformulates their question, or no longer needs the current result. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation whose active response should be stopped, as returned by `createAgentConversation` A successful request returns an empty `204 No Content` response. If there is no active response in progress at the time of the call, the request is still treated as successful. After stopping a response, the conversation session remains active. You can continue sending messages using `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming`. #### Example request ```bash POST /api/rest/2.0/ai/agent/conversation/{conversation_identifier}/stop-response ``` #### Typical usage scenario This endpoint is useful when integrating Spotter into a chat UI where users can cancel a long-running query. For example: 1. User sends a message via `sendAgentConversationMessageStreaming`. 2. User clicks a \"Stop generating\" button while the response is streaming. 3. Your client calls `stopConversation` with the active `conversation_identifier`. 4. The stream is terminated and the user can ask a new question. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | > ###### Note: > > - Calling this endpoint when no response is in progress does not return an error. > - The conversation context is preserved after stopping — previous messages and answers remain accessible. > - Available from version 26.6.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - This feature is available only for **Spotter 3** (`SPOTTER3`) version. * @param conversationIdentifier Unique identifier of the conversation to stop. */ stopConversation(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Updates a Spotter Analyst. The request body is identical to `createAnalyst` and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset (no instructions, no MCP connectors, no starter prompts). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot edit it. Version: 26.10.0.cl or later Updates a Spotter Analyst. The request body is identical to the create analyst API, and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with can use it but cannot edit it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior. Instructions that conflict with system guardrails are rejected with `409`. Omitting this field clears any existing instructions. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). Replaces the existing list in full. When new sources are added, they are automatically shared with users the analyst was previously shared with, so those users keep a working analyst. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors. Replaces the existing list in full; omit or pass an empty array to clear. - `starter_prompts` (optional): up to 4 plain-text prompts, each between 10 and 250 characters; display order follows list position. Replaces the existing list in full; omit or pass an empty array to clear. If the request is successful, the response contains the updated analyst, including the refreshed `updated_time_in_millis` timestamp (epoch milliseconds) and `updated_by` user. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, and starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`). #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to update. * @param updateAnalystRequest */ updateAnalystWithHttpInfo(analystIdentifier: string, updateAnalystRequest: UpdateAnalystRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Updates a Spotter Analyst. The request body is identical to `createAnalyst` and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset (no instructions, no MCP connectors, no starter prompts). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot edit it. Version: 26.10.0.cl or later Updates a Spotter Analyst. The request body is identical to the create analyst API, and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with can use it but cannot edit it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior. Instructions that conflict with system guardrails are rejected with `409`. Omitting this field clears any existing instructions. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). Replaces the existing list in full. When new sources are added, they are automatically shared with users the analyst was previously shared with, so those users keep a working analyst. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors. Replaces the existing list in full; omit or pass an empty array to clear. - `starter_prompts` (optional): up to 4 plain-text prompts, each between 10 and 250 characters; display order follows list position. Replaces the existing list in full; omit or pass an empty array to clear. If the request is successful, the response contains the updated analyst, including the refreshed `updated_time_in_millis` timestamp (epoch milliseconds) and `updated_by` user. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, and starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`). #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to update. * @param updateAnalystRequest */ updateAnalyst(analystIdentifier: string, updateAnalystRequest: UpdateAnalystRequest, _options?: PromiseConfigurationOptions): Promise; /** * Updates attributes of an existing agent conversation. Supports updating the display title and the pinned state; additional conversation attributes may be supported in future versions. At least one updatable attribute must be provided in the request body. Each attribute is applied independently, so omitted attributes are left unchanged. Version: 26.7.0.cl or later Updates attributes of an existing saved agent conversation. Supports updating the conversation\'s display `title` and its `is_pinned` state; additional updatable attributes may be supported in future versions. At least one updatable attribute must be supplied in the request body. Use this endpoint to rename a conversation, or to pin a conversation so that it is surfaced first in the conversation list for quick access. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being updated. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to update, as returned by `createAgentConversation` or `getConversationList` - At least one updatable attribute in the request body: - `title` *(optional)*: the new display name for the conversation. An empty or whitespace-only value is replaced with a default title rather than rejected. - `is_pinned` *(optional)*: `true` to pin the conversation, `false` to unpin it. Available from version 26.10.0.cl. Each attribute is applied independently: omitted attributes are left unchanged, so you can update the title and the pinned state in a single request or in separate requests. Updating `is_pinned` is idempotent — pinning an already-pinned conversation, or unpinning an already-unpinned one, succeeds with no side effects. A successful request returns an empty `204 No Content` response. Updated attributes are reflected immediately in subsequent calls to `getConversationList`. #### Example request Rename a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\" } ``` Pin a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"is_pinned\": true } ``` Update both attributes in a single request: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\", \"is_pinned\": true } ``` #### Error responses | Code | Description | |------|-------------| | 400 | Bad Request — the request body supplies neither `title` nor `is_pinned`, or `is_pinned` is not a boolean. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | | 422 | Unprocessable Entity — the request body is malformed or contains an invalid field value. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` can be updated. Unsaved conversations are not persisted and do not have a retrievable identifier. > - There is no limit on the number of conversations a user can pin. > - Available from version 26.7.0.cl and later. The `is_pinned` attribute is available from version 26.10.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to update. * @param updateConversationRequest */ updateConversationWithHttpInfo(conversationIdentifier: string, updateConversationRequest: UpdateConversationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Updates attributes of an existing agent conversation. Supports updating the display title and the pinned state; additional conversation attributes may be supported in future versions. At least one updatable attribute must be provided in the request body. Each attribute is applied independently, so omitted attributes are left unchanged. Version: 26.7.0.cl or later Updates attributes of an existing saved agent conversation. Supports updating the conversation\'s display `title` and its `is_pinned` state; additional updatable attributes may be supported in future versions. At least one updatable attribute must be supplied in the request body. Use this endpoint to rename a conversation, or to pin a conversation so that it is surfaced first in the conversation list for quick access. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being updated. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to update, as returned by `createAgentConversation` or `getConversationList` - At least one updatable attribute in the request body: - `title` *(optional)*: the new display name for the conversation. An empty or whitespace-only value is replaced with a default title rather than rejected. - `is_pinned` *(optional)*: `true` to pin the conversation, `false` to unpin it. Available from version 26.10.0.cl. Each attribute is applied independently: omitted attributes are left unchanged, so you can update the title and the pinned state in a single request or in separate requests. Updating `is_pinned` is idempotent — pinning an already-pinned conversation, or unpinning an already-unpinned one, succeeds with no side effects. A successful request returns an empty `204 No Content` response. Updated attributes are reflected immediately in subsequent calls to `getConversationList`. #### Example request Rename a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\" } ``` Pin a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"is_pinned\": true } ``` Update both attributes in a single request: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\", \"is_pinned\": true } ``` #### Error responses | Code | Description | |------|-------------| | 400 | Bad Request — the request body supplies neither `title` nor `is_pinned`, or `is_pinned` is not a boolean. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | | 422 | Unprocessable Entity — the request body is malformed or contains an invalid field value. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` can be updated. Unsaved conversations are not persisted and do not have a retrievable identifier. > - There is no limit on the number of conversations a user can pin. > - Available from version 26.7.0.cl and later. The `is_pinned` attribute is available from version 26.10.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to update. * @param updateConversationRequest */ updateConversation(conversationIdentifier: string, updateConversationRequest: UpdateConversationRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseAuthenticationApi { private api; constructor(configuration: Configuration, requestFactory?: AuthenticationApiRequestFactory, responseProcessor?: AuthenticationApiResponseProcessor); /** * Version: 26.6.0.cl or later Enables or disables authentication at cluster or org level for the specified auth type. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `cluster_preferences` to enable or disable authentication at the cluster level. Cluster-level settings can only be configured from the Primary Org. - `ENABLED` — Generates a new access token if one does not exist. An existing token is preserved. - `DISABLED` — Revokes the existing cluster-level access token. Use `org_preferences` to enable or disable authentication for one or more Orgs. Each entry must include an `org_identifier` (unique ID or name) and an `auth_status`. Org-level configuration requires the per-Org authentication feature to be enabled on your instance. - `ENABLED` — Generates a new org-level access token if one does not exist. - `DISABLED` — Revokes the existing org-level access token for that Org. Both `cluster_preferences` and `org_preferences` are optional. Omitting a field leaves the corresponding settings unchanged. If both are omitted, the API returns `204 No Content` without making any changes. **Note**: Cluster-level and org-level settings are independent of each other. Enabling or disabling one does not affect the other. * @param configureAuthSettingsRequest */ configureAuthSettingsWithHttpInfo(configureAuthSettingsRequest: ConfigureAuthSettingsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Enables or disables authentication at cluster or org level for the specified auth type. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `cluster_preferences` to enable or disable authentication at the cluster level. Cluster-level settings can only be configured from the Primary Org. - `ENABLED` — Generates a new access token if one does not exist. An existing token is preserved. - `DISABLED` — Revokes the existing cluster-level access token. Use `org_preferences` to enable or disable authentication for one or more Orgs. Each entry must include an `org_identifier` (unique ID or name) and an `auth_status`. Org-level configuration requires the per-Org authentication feature to be enabled on your instance. - `ENABLED` — Generates a new org-level access token if one does not exist. - `DISABLED` — Revokes the existing org-level access token for that Org. Both `cluster_preferences` and `org_preferences` are optional. Omitting a field leaves the corresponding settings unchanged. If both are omitted, the API returns `204 No Content` without making any changes. **Note**: Cluster-level and org-level settings are independent of each other. Enabling or disabling one does not affect the other. * @param configureAuthSettingsRequest */ configureAuthSettings(configureAuthSettingsRequest: ConfigureAuthSettingsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Retrieves details of the current user session for the token provided in the request header. Any ThoughtSpot user can access this endpoint and send an API request. The data returned in the API response varies according to user\'s privilege and object access permissions. **NOTE**: In ThoughtSpot, users with cluster administration privileges can access all Orgs by default. However, unless the administrator is explicitly added to an Org, the Orgs list in the session information returned by the API will include only the Primary Org. To include other Orgs in the API response, you must explicitly add the administrator to each Org in the Admin settings page in the UI or via user REST API. */ getCurrentUserInfoWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Retrieves details of the current user session for the token provided in the request header. Any ThoughtSpot user can access this endpoint and send an API request. The data returned in the API response varies according to user\'s privilege and object access permissions. **NOTE**: In ThoughtSpot, users with cluster administration privileges can access all Orgs by default. However, unless the administrator is explicitly added to an Org, the Orgs list in the session information returned by the API will include only the Primary Org. To include other Orgs in the API response, you must explicitly add the administrator to each Org in the Admin settings page in the UI or via user REST API. */ getCurrentUserInfo(_options?: PromiseConfigurationOptions): Promise; /** * Version: 9.4.0.cl or later Generates a new bearer token from an existing authenticated session. #### Required privileges Any ThoughtSpot user with a valid bearer token can access this endpoint and send an API request. Requires no additional privileges. #### Usage guidelines This endpoint doesn\'t return the caller\'s existing session token. Instead, it issues a new token based on the current authenticated session and returns the new token string, its creation and expiration timestamps, and the associated user details in response. The token generated from this API request is valid for 24 hours. Use this endpoint when your application needs a new token without requiring the user to re-authenticate. If you need a token with a specific expiration or a different security scope, use `POST /api/rest/2.0/auth/token/full`, `POST /api/rest/2.0/auth/token/custom`, or `POST /api/rest/2.0/auth/token/object` instead. */ getCurrentUserTokenWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.4.0.cl or later Generates a new bearer token from an existing authenticated session. #### Required privileges Any ThoughtSpot user with a valid bearer token can access this endpoint and send an API request. Requires no additional privileges. #### Usage guidelines This endpoint doesn\'t return the caller\'s existing session token. Instead, it issues a new token based on the current authenticated session and returns the new token string, its creation and expiration timestamps, and the associated user details in response. The token generated from this API request is valid for 24 hours. Use this endpoint when your application needs a new token without requiring the user to re-authenticate. If you need a token with a specific expiration or a different security scope, use `POST /api/rest/2.0/auth/token/full`, `POST /api/rest/2.0/auth/token/custom`, or `POST /api/rest/2.0/auth/token/object` instead. */ getCurrentUserToken(_options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Creates an authentication token that provides values for the formula variables in the Row Level Security (RLS) rules for a given user. Recommended for use cases that require Attribute-based access control (ABAC) via RLS. #### Required privileges To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege and edit access to the data source are required. To configure formula variables for all Orgs on your instance or the Primary Org, cluster administration privileges are required. Org administrators can configure formula variables for their respective Orgs. If Role-Based Access Control (RBAC) is enabled, users with the `CAN_MANAGE_VARIABLES` (**Can manage variables**) role privilege can also create and manage variables for their Org context. #### Usage guidelines You can generate a token by providing a `username` and `password`, or by using a `secret_key`. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### ABAC via RLS To implement ABAC via RLS and assign security entitlements to users during session creation, generate a token with custom variable values. The values set in the authentication token are applied to the formula variables referenced in RLS rules at the table level, which determines the data each user can access based on their entitlements. The variable values can be configured to persist for a specific set of Models in user sessions initiated with the token, allowing different RLS rules to be set for different data models. Once defined, the rules are added to the user\'s `variable_values` object, after which all sessions will use the persisted values. For more information, see [ABAC via tokens Documentation](https://developers.thoughtspot.com/docs/abac-via-rls-variables). ##### Formula variables Before defining variable values, ensure the variables are created and available on your instance. To create a formula variable, you can use the **Create variable** (`/api/rest/2.0/template/variables/create`) REST API endpoint, with the variable `type` set as `Formula_Variable` in the API request. The API doesn\'t support `\"persist_option\": \"RESET\"` and `\"persist_option\": \"NONE\"` when `variable_values` are defined in the request. If you are using `variable_values` for token generation, you must use other supported persist options such as `APPEND` or `REPLACE`. If you want to use `RESET` or `NONE`, do not pass any `variable_values`. In such cases, `variable_values` will remain unaffected. #### Supported objects The supported object type is `LOGICAL_TABLE`. When using `object_id` with `variable_values`, models are supported. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `groups` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the username already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email, Org and group entitlements will not be updated with new values. Setting `auto_create` to `true` does not create formula variables. Hence, this setting will not be applicable to `variable_values`. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. Persist options such as `APPEND` and `REPLACE` will persist `variable_values` on the user profile when the token is created. * @param getCustomAccessTokenRequest */ getCustomAccessTokenWithHttpInfo(getCustomAccessTokenRequest: GetCustomAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Creates an authentication token that provides values for the formula variables in the Row Level Security (RLS) rules for a given user. Recommended for use cases that require Attribute-based access control (ABAC) via RLS. #### Required privileges To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege and edit access to the data source are required. To configure formula variables for all Orgs on your instance or the Primary Org, cluster administration privileges are required. Org administrators can configure formula variables for their respective Orgs. If Role-Based Access Control (RBAC) is enabled, users with the `CAN_MANAGE_VARIABLES` (**Can manage variables**) role privilege can also create and manage variables for their Org context. #### Usage guidelines You can generate a token by providing a `username` and `password`, or by using a `secret_key`. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### ABAC via RLS To implement ABAC via RLS and assign security entitlements to users during session creation, generate a token with custom variable values. The values set in the authentication token are applied to the formula variables referenced in RLS rules at the table level, which determines the data each user can access based on their entitlements. The variable values can be configured to persist for a specific set of Models in user sessions initiated with the token, allowing different RLS rules to be set for different data models. Once defined, the rules are added to the user\'s `variable_values` object, after which all sessions will use the persisted values. For more information, see [ABAC via tokens Documentation](https://developers.thoughtspot.com/docs/abac-via-rls-variables). ##### Formula variables Before defining variable values, ensure the variables are created and available on your instance. To create a formula variable, you can use the **Create variable** (`/api/rest/2.0/template/variables/create`) REST API endpoint, with the variable `type` set as `Formula_Variable` in the API request. The API doesn\'t support `\"persist_option\": \"RESET\"` and `\"persist_option\": \"NONE\"` when `variable_values` are defined in the request. If you are using `variable_values` for token generation, you must use other supported persist options such as `APPEND` or `REPLACE`. If you want to use `RESET` or `NONE`, do not pass any `variable_values`. In such cases, `variable_values` will remain unaffected. #### Supported objects The supported object type is `LOGICAL_TABLE`. When using `object_id` with `variable_values`, models are supported. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `groups` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the username already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email, Org and group entitlements will not be updated with new values. Setting `auto_create` to `true` does not create formula variables. Hence, this setting will not be applicable to `variable_values`. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. Persist options such as `APPEND` and `REPLACE` will persist `variable_values` on the user profile when the token is created. * @param getCustomAccessTokenRequest */ getCustomAccessToken(getCustomAccessTokenRequest: GetCustomAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Generates an authentication token for creating a full session in ThoughtSpot for a given user. Recommended for use cases that do not require Attribute-based access control (ABAC) via Row Level Security (RLS). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the user already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email and group assignment will be updated. To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getFullAccessTokenRequest */ getFullAccessTokenWithHttpInfo(getFullAccessTokenRequest: GetFullAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Generates an authentication token for creating a full session in ThoughtSpot for a given user. Recommended for use cases that do not require Attribute-based access control (ABAC) via Row Level Security (RLS). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the user already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email and group assignment will be updated. To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getFullAccessTokenRequest */ getFullAccessToken(getFullAccessTokenRequest: GetFullAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Generates an authentication token that provides access to a specific metadata object. This object list is intersected with the list of objects the user is allowed to access via group membership. For more information, see [Object security](https://docs.thoughtspot.com/cloud/latest/security-data-object#object_security). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the user is not available in ThoughtSpot. If the user already exists in ThoughtSpot and the `auto_create` parameter is set to `true`, user properties such as display name, email, and group assignment will be updated. To add a new user and assign privileges, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH`(**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getObjectAccessTokenRequest */ getObjectAccessTokenWithHttpInfo(getObjectAccessTokenRequest: GetObjectAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Generates an authentication token that provides access to a specific metadata object. This object list is intersected with the list of objects the user is allowed to access via group membership. For more information, see [Object security](https://docs.thoughtspot.com/cloud/latest/security-data-object#object_security). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the user is not available in ThoughtSpot. If the user already exists in ThoughtSpot and the `auto_create` parameter is set to `true`, user properties such as display name, email, and group assignment will be updated. To add a new user and assign privileges, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH`(**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getObjectAccessTokenRequest */ getObjectAccessToken(getObjectAccessTokenRequest: GetObjectAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Creates a login session for a ThoughtSpot user with Basic authentication. In Basic authentication method, REST clients log in to ThoughtSpot using `username` and `password` attributes. On a multi-tenant cluster with Orgs, users can pass the ID of the Org in the API request to log in to a specific Org context. **Note**: If Multi-Factor Authentication (MFA) is enabled on your instance, the API login request with basic authentication (`username` and `password` ) returns an error. Contact ThoughtSpot Support for assistance. A successful login returns a session cookie that can be used in your subsequent API requests. #### Redirecting after login To send a browser to a specific page once the session is created, pass `redirect_url`. It must be a path on the same ThoughtSpot instance that served the login request, for example `/pinboards`. An absolute URL is rejected with `400`, so that a login cannot be used to forward a newly issued session cookie to another host. The path is resolved against the host the caller actually reached, which means the same request works unchanged on a custom domain, behind a proxy, or on an Org-specific subdomain. * **Browser flows** — omit `no_url_redirection`. The API answers `302` with the resolved path in the `location` header, and the browser follows it on its own. This is the usual choice when the login is submitted as an HTML form or opened as a top-level navigation. * **SPA and non-browser clients** — set `no_url_redirection` to `true`. The API keeps its normal `204` response and returns the resolved path in the `location` header without redirecting, leaving the client to decide when and where to navigate. Use this from `fetch`/`XMLHttpRequest` calls, which follow a `302` internally and never expose it to your code. When `redirect_url` is omitted the response is unchanged, and `no_url_redirection` has no effect on its own. * @param loginRequest */ loginWithHttpInfo(loginRequest: LoginRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates a login session for a ThoughtSpot user with Basic authentication. In Basic authentication method, REST clients log in to ThoughtSpot using `username` and `password` attributes. On a multi-tenant cluster with Orgs, users can pass the ID of the Org in the API request to log in to a specific Org context. **Note**: If Multi-Factor Authentication (MFA) is enabled on your instance, the API login request with basic authentication (`username` and `password` ) returns an error. Contact ThoughtSpot Support for assistance. A successful login returns a session cookie that can be used in your subsequent API requests. #### Redirecting after login To send a browser to a specific page once the session is created, pass `redirect_url`. It must be a path on the same ThoughtSpot instance that served the login request, for example `/pinboards`. An absolute URL is rejected with `400`, so that a login cannot be used to forward a newly issued session cookie to another host. The path is resolved against the host the caller actually reached, which means the same request works unchanged on a custom domain, behind a proxy, or on an Org-specific subdomain. * **Browser flows** — omit `no_url_redirection`. The API answers `302` with the resolved path in the `location` header, and the browser follows it on its own. This is the usual choice when the login is submitted as an HTML form or opened as a top-level navigation. * **SPA and non-browser clients** — set `no_url_redirection` to `true`. The API keeps its normal `204` response and returns the resolved path in the `location` header without redirecting, leaving the client to decide when and where to navigate. Use this from `fetch`/`XMLHttpRequest` calls, which follow a `302` internally and never expose it to your code. When `redirect_url` is omitted the response is unchanged, and `no_url_redirection` has no effect on its own. * @param loginRequest */ login(loginRequest: LoginRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Logs out a user from their current session. */ logoutWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Logs out a user from their current session. */ logout(_options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Revokes the authentication token issued for current user session. The token of your current session expires when you make a call to the `/api/rest/2.0/auth/token/revoke` endpoint. the users will not be able to access ThoughtSpot objects until a new token is obtained. To restart your session, request for a new token from ThoughtSpot. See [Get Full Access Token](#/http/api-endpoints/authentication/get-full-access-token). * @param revokeTokenRequest */ revokeTokenWithHttpInfo(revokeTokenRequest: RevokeTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Revokes the authentication token issued for current user session. The token of your current session expires when you make a call to the `/api/rest/2.0/auth/token/revoke` endpoint. the users will not be able to access ThoughtSpot objects until a new token is obtained. To restart your session, request for a new token from ThoughtSpot. See [Get Full Access Token](#/http/api-endpoints/authentication/get-full-access-token). * @param revokeTokenRequest */ revokeToken(revokeTokenRequest: RevokeTokenRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.6.0.cl or later Returns the authentication configuration for the specified auth type at cluster and org level. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `scope` to control which level of settings are returned: - `CLUSTER` — Returns cluster-level authentication status and access tokens. Accessible only from the Primary Org. - `ORG` — Returns org-level authentication status and access tokens for the current Org. Requires the per-Org authentication feature to be enabled on your instance. - If `scope` is omitted, both cluster and org-level settings are returned based on the caller\'s org context and feature availability. The `access_tokens` array in `cluster_preferences` or `org_preferences` is omitted when no token is configured at that level. **Note**: Access tokens returned in the response are sensitive credentials. Treat them with the same care as passwords. * @param searchAuthSettingsRequest */ searchAuthSettingsWithHttpInfo(searchAuthSettingsRequest: SearchAuthSettingsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Returns the authentication configuration for the specified auth type at cluster and org level. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `scope` to control which level of settings are returned: - `CLUSTER` — Returns cluster-level authentication status and access tokens. Accessible only from the Primary Org. - `ORG` — Returns org-level authentication status and access tokens for the current Org. Requires the per-Org authentication feature to be enabled on your instance. - If `scope` is omitted, both cluster and org-level settings are returned based on the caller\'s org context and feature availability. The `access_tokens` array in `cluster_preferences` or `org_preferences` is omitted when no token is configured at that level. **Note**: Access tokens returned in the response are sensitive credentials. Treat them with the same care as passwords. * @param searchAuthSettingsRequest */ searchAuthSettings(searchAuthSettingsRequest: SearchAuthSettingsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.12.0.cl or later Validates the authentication token specified in the API request. If your token is not valid, [Get a new token](#/http/api-endpoints/authentication/get-full-access-token). * @param validateTokenRequest */ validateTokenWithHttpInfo(validateTokenRequest: ValidateTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.12.0.cl or later Validates the authentication token specified in the API request. If your token is not valid, [Get a new token](#/http/api-endpoints/authentication/get-full-access-token). * @param validateTokenRequest */ validateToken(validateTokenRequest: ValidateTokenRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseCollectionsApi { private api; constructor(configuration: Configuration, requestFactory?: CollectionsApiRequestFactory, responseProcessor?: CollectionsApiResponseProcessor); /** * Version: 26.4.0.cl or later Creates a new collection in ThoughtSpot. Collections allow you to organize and group related metadata objects such as Liveboards, Answers, worksheets, and other data objects. You can also create nested collections (sub-collections) to build a hierarchical structure. #### Supported operations The API endpoint lets you perform the following operations: * Create a new collection * Add metadata objects (Liveboards, Answers, Logical Tables) to the collection * Create nested collections by adding sub-collections * @param createCollectionRequest */ createCollectionWithHttpInfo(createCollectionRequest: CreateCollectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Creates a new collection in ThoughtSpot. Collections allow you to organize and group related metadata objects such as Liveboards, Answers, worksheets, and other data objects. You can also create nested collections (sub-collections) to build a hierarchical structure. #### Supported operations The API endpoint lets you perform the following operations: * Create a new collection * Add metadata objects (Liveboards, Answers, Logical Tables) to the collection * Create nested collections by adding sub-collections * @param createCollectionRequest */ createCollection(createCollectionRequest: CreateCollectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Deletes one or more collections from ThoughtSpot. #### Delete options * **delete_children**: When set to `true`, deletes the child objects (metadata items) within the collection that the user has access to. Objects that the user does not have permission to delete will be skipped. * **dry_run**: When set to `true`, performs a preview of the deletion operation without actually deleting anything. The response shows what would be deleted, allowing you to review before committing the deletion. #### Response The response includes: * **metadata_deleted**: List of metadata objects that were successfully deleted * **metadata_skipped**: List of metadata objects that were skipped due to lack of permissions or other constraints * @param deleteCollectionRequest */ deleteCollectionWithHttpInfo(deleteCollectionRequest: DeleteCollectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Deletes one or more collections from ThoughtSpot. #### Delete options * **delete_children**: When set to `true`, deletes the child objects (metadata items) within the collection that the user has access to. Objects that the user does not have permission to delete will be skipped. * **dry_run**: When set to `true`, performs a preview of the deletion operation without actually deleting anything. The response shows what would be deleted, allowing you to review before committing the deletion. #### Response The response includes: * **metadata_deleted**: List of metadata objects that were successfully deleted * **metadata_skipped**: List of metadata objects that were skipped due to lack of permissions or other constraints * @param deleteCollectionRequest */ deleteCollection(deleteCollectionRequest: DeleteCollectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Gets a list of collections available in ThoughtSpot. To get details of a specific collection, specify the collection GUID or name. You can also filter the API response based on the collection name pattern, author, and other criteria. #### Search options * **name_pattern**: Use \'%\' as a wildcard character to match collection names * **collection_identifiers**: Search for specific collections by their GUIDs or names * **include_metadata**: When set to `true`, includes the metadata objects within each collection in the response **NOTE**: In addition to the GUID and name, `collection_identifiers` accepts a Custom object ID if one is configured for the collection. The response also includes the `obj_id` field for each collection that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCollectionsRequest */ searchCollectionsWithHttpInfo(searchCollectionsRequest: SearchCollectionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Gets a list of collections available in ThoughtSpot. To get details of a specific collection, specify the collection GUID or name. You can also filter the API response based on the collection name pattern, author, and other criteria. #### Search options * **name_pattern**: Use \'%\' as a wildcard character to match collection names * **collection_identifiers**: Search for specific collections by their GUIDs or names * **include_metadata**: When set to `true`, includes the metadata objects within each collection in the response **NOTE**: In addition to the GUID and name, `collection_identifiers` accepts a Custom object ID if one is configured for the collection. The response also includes the `obj_id` field for each collection that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCollectionsRequest */ searchCollections(searchCollectionsRequest: SearchCollectionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Updates an existing collection in ThoughtSpot. #### Supported operations This API endpoint lets you perform the following operations: * Update collection name and description * Change visibility settings * Add metadata objects to the collection (operation: ADD) * Remove metadata objects from the collection (operation: REMOVE) * Replace all metadata objects in the collection (operation: REPLACE) #### Operation types * **ADD**: Adds the specified metadata objects to the existing collection without removing current items * **REMOVE**: Removes only the specified metadata objects from the collection * **REPLACE**: Replaces all existing metadata objects with the specified items (default behavior) * @param collectionIdentifier Unique GUID of the collection. Note: Collection names cannot be used as identifiers since duplicate names are allowed. * @param updateCollectionRequest */ updateCollectionWithHttpInfo(collectionIdentifier: string, updateCollectionRequest: UpdateCollectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Updates an existing collection in ThoughtSpot. #### Supported operations This API endpoint lets you perform the following operations: * Update collection name and description * Change visibility settings * Add metadata objects to the collection (operation: ADD) * Remove metadata objects from the collection (operation: REMOVE) * Replace all metadata objects in the collection (operation: REPLACE) #### Operation types * **ADD**: Adds the specified metadata objects to the existing collection without removing current items * **REMOVE**: Removes only the specified metadata objects from the collection * **REPLACE**: Replaces all existing metadata objects with the specified items (default behavior) * @param collectionIdentifier Unique GUID of the collection. Note: Collection names cannot be used as identifiers since duplicate names are allowed. * @param updateCollectionRequest */ updateCollection(collectionIdentifier: string, updateCollectionRequest: UpdateCollectionRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseConnectionConfigurationsApi { private api; constructor(configuration: Configuration, requestFactory?: ConnectionConfigurationsApiRequestFactory, responseProcessor?: ConnectionConfigurationsApiResponseProcessor); /** * Version: 10.12.0.cl or later Gets connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * 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. * To fetch details of a configuration object, specify the configuration object name or GUID. * @param connectionConfigurationSearchRequest */ connectionConfigurationSearchWithHttpInfo(connectionConfigurationSearchRequest: ConnectionConfigurationSearchRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.12.0.cl or later Gets connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * 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. * To fetch details of a configuration object, specify the configuration object name or GUID. * @param connectionConfigurationSearchRequest */ connectionConfigurationSearch(connectionConfigurationSearchRequest: ConnectionConfigurationSearchRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Creates an additional configuration to an existing connection to a data warehouse. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * A JSON map of configuration attributes in `configuration`. The following example shows the configuration attributes: ``` { \"user\":\"DEV_USER\", \"password\":\"TestConn123\", \"role\":\"DEV\", \"warehouse\":\"DEV_WH\" } ``` * If the `policy_type` is `PRINCIPALS`, then `policy_principals` is a required field. * If the `policy_type` is `PROCESSES`, then `policy_processes` is a required field. * If the `policy_type` is `NO_POLICY`, then `policy_principals` and `policy_processes` are not required fields. #### Parameterized Connection Support For 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. * @param createConnectionConfigurationRequest */ createConnectionConfigurationWithHttpInfo(createConnectionConfigurationRequest: CreateConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Creates an additional configuration to an existing connection to a data warehouse. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * A JSON map of configuration attributes in `configuration`. The following example shows the configuration attributes: ``` { \"user\":\"DEV_USER\", \"password\":\"TestConn123\", \"role\":\"DEV\", \"warehouse\":\"DEV_WH\" } ``` * If the `policy_type` is `PRINCIPALS`, then `policy_principals` is a required field. * If the `policy_type` is `PROCESSES`, then `policy_processes` is a required field. * If the `policy_type` is `NO_POLICY`, then `policy_principals` and `policy_processes` are not required fields. #### Parameterized Connection Support For 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. * @param createConnectionConfigurationRequest */ createConnectionConfiguration(createConnectionConfigurationRequest: CreateConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Deletes connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param deleteConnectionConfigurationRequest */ deleteConnectionConfigurationWithHttpInfo(deleteConnectionConfigurationRequest: DeleteConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Deletes connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param deleteConnectionConfigurationRequest */ deleteConnectionConfiguration(deleteConnectionConfigurationRequest: DeleteConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Updates a connection configuration object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit the name or description of the configuration * Edit the configuration properties * Edit the `policy_type` * Edit the type of authentication * Enable or disable a configuration #### Parameterized Connection Support For 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. **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`. * @param configurationIdentifier Unique ID or name of the configuration. * @param updateConnectionConfigurationRequest */ updateConnectionConfigurationWithHttpInfo(configurationIdentifier: string, updateConnectionConfigurationRequest: UpdateConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Updates a connection configuration object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit the name or description of the configuration * Edit the configuration properties * Edit the `policy_type` * Edit the type of authentication * Enable or disable a configuration #### Parameterized Connection Support For 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. **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`. * @param configurationIdentifier Unique ID or name of the configuration. * @param updateConnectionConfigurationRequest */ updateConnectionConfiguration(configurationIdentifier: string, updateConnectionConfigurationRequest: UpdateConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseConnectionsApi { private api; constructor(configuration: Configuration, requestFactory?: ConnectionsApiRequestFactory, responseProcessor?: ConnectionsApiResponseProcessor); /** * Version: 9.2.0.cl or later Creates a connection to a data warehouse for live query services. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Create a connection without tables To create a connection without tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a SnowFlake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` 2. Set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. #### Create a connection with tables If [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**) and `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. To create a connection with tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\", \"AllDatatypes\"], \"externalDatabases\":[ { \"name\":\"AllDatatypes\", \"isAutoCreated\":false, \"schemas\":[ { \"name\":\"alldatatypes\", \"tables\":[ { \"name\":\"allDatatypes\", \"type\":\"TABLE\", \"description\":\"\", \"selected\":true, \"linked\":true, \"columns\":[ { \"name\":\"CNUMBER\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" }, { \"name\":\"CDECIMAL\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" } ] } ] } ] } ] } ``` 2. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param createConnectionRequest */ createConnectionWithHttpInfo(createConnectionRequest: CreateConnectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Creates a connection to a data warehouse for live query services. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Create a connection without tables To create a connection without tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a SnowFlake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` 2. Set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. #### Create a connection with tables If [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**) and `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. To create a connection with tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\", \"AllDatatypes\"], \"externalDatabases\":[ { \"name\":\"AllDatatypes\", \"isAutoCreated\":false, \"schemas\":[ { \"name\":\"alldatatypes\", \"tables\":[ { \"name\":\"allDatatypes\", \"type\":\"TABLE\", \"description\":\"\", \"selected\":true, \"linked\":true, \"columns\":[ { \"name\":\"CNUMBER\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" }, { \"name\":\"CDECIMAL\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" } ] } ] } ] } ] } ``` 2. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param createConnectionRequest */ createConnection(createConnectionRequest: CreateConnectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Delete Connection V2](#/http/api-endpoints/connections/delete-connection-v2) endpoint to delete your connection objects. #### Usage guidelines Deletes a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. * @param deleteConnectionRequest */ deleteConnectionWithHttpInfo(deleteConnectionRequest: DeleteConnectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Delete Connection V2](#/http/api-endpoints/connections/delete-connection-v2) endpoint to delete your connection objects. #### Usage guidelines Deletes a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. * @param deleteConnectionRequest */ deleteConnection(deleteConnectionRequest: DeleteConnectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Deletes a connection object. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param connectionIdentifier Unique ID or name of the connection. */ deleteConnectionV2WithHttpInfo(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Deletes a connection object. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param connectionIdentifier Unique ID or name of the connection. */ deleteConnectionV2(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Exports the difference in connection metadata between CDW and ThoughtSpot Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) To download the connection metadata difference between ThoughtSpot and CDW, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ downloadConnectionMetadataChangesWithHttpInfo(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Exports the difference in connection metadata between CDW and ThoughtSpot Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) To download the connection metadata difference between ThoughtSpot and CDW, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ downloadConnectionMetadataChanges(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Validates the difference in connection metadata between CDW and ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) Returns a boolean indicating whether there is any difference between the connection metadata at ThoughtSpot and CDW. To get the connection metadata difference status, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ fetchConnectionDiffStatusWithHttpInfo(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Validates the difference in connection metadata between CDW and ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) Returns a boolean indicating whether there is any difference between the connection metadata at ThoughtSpot and CDW. To get the connection metadata difference status, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ fetchConnectionDiffStatus(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later Revokes OAuth refresh tokens for users who no longer require access to a data warehouse connection. When a token is revoked, the affected user\'s session for that connection is terminated, and they must re-authenticate to regain access. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on the ThoughtSpot instance, users with `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege can also make API requests to revoke tokens for connection users. #### Usage guidelines You can specify different combinations of identifiers to control which refresh tokens are revoked. - **connection_identifier**: Revokes refresh tokens for all users of the connection, except the connection author. - **connection_identifier** and **user_identifiers**: Revokes refresh tokens only for the users specified in the request. If the name or ID of the connection author is included in the request, their token will also be revoked. - **connection_identifier** and **configuration_identifiers**: Revokes refresh tokens for all users on the specified configurations, except the configuration author. - **connection_identifier**, **configuration_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users on the specified configurations. - **connection_identifier** and **org_identifiers**: Revokes refresh tokens for the specified Orgs. Applicable only for published connections. - **connection_identifier**, **org_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users in the specified Orgs. Applicable only for published connections. **NOTE**: The `org_identifiers` parameter is only applicable for published connections. Using this parameter for unpublished connections will result in an error. Ensure that the connections are published before making the API request. * @param connectionIdentifier Unique ID or name of the connection whose refresh tokens need to be revoked. All the users associated with the connection will have their refresh tokens revoked except the author. * @param revokeRefreshTokensRequest */ revokeRefreshTokensWithHttpInfo(connectionIdentifier: string, revokeRefreshTokensRequest: RevokeRefreshTokensRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Revokes OAuth refresh tokens for users who no longer require access to a data warehouse connection. When a token is revoked, the affected user\'s session for that connection is terminated, and they must re-authenticate to regain access. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on the ThoughtSpot instance, users with `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege can also make API requests to revoke tokens for connection users. #### Usage guidelines You can specify different combinations of identifiers to control which refresh tokens are revoked. - **connection_identifier**: Revokes refresh tokens for all users of the connection, except the connection author. - **connection_identifier** and **user_identifiers**: Revokes refresh tokens only for the users specified in the request. If the name or ID of the connection author is included in the request, their token will also be revoked. - **connection_identifier** and **configuration_identifiers**: Revokes refresh tokens for all users on the specified configurations, except the configuration author. - **connection_identifier**, **configuration_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users on the specified configurations. - **connection_identifier** and **org_identifiers**: Revokes refresh tokens for the specified Orgs. Applicable only for published connections. - **connection_identifier**, **org_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users in the specified Orgs. Applicable only for published connections. **NOTE**: The `org_identifiers` parameter is only applicable for published connections. Using this parameter for unpublished connections will result in an error. Ensure that the connections are published before making the API request. * @param connectionIdentifier Unique ID or name of the connection whose refresh tokens need to be revoked. All the users associated with the connection will have their refresh tokens revoked except the author. * @param revokeRefreshTokensRequest */ revokeRefreshTokens(connectionIdentifier: string, revokeRefreshTokensRequest: RevokeRefreshTokensRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Gets connection objects. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. - To get a list of all connections available in the ThoughtSpot system, send the API request without any attributes in the request body. - To get the connection objects for a specific type of data warehouse, specify the type in `data_warehouse_types`. - To fetch details of a connection object, specify the connection object GUID or name. The `name_pattern` attribute allows passing partial text with `%` for a wildcard match. - To get details of the database, schemas, tables, or columns from a data connection object, specify `data_warehouse_object_type`. - To get a specific database, schema, table, or column from a connection object, define the object type in `data_warehouse_object_type` and object properties in the `data_warehouse_objects` array. For example, to search for a column, you must pass the database, schema, and table names in the API request. Note that in the following example, object properties are set in a hierarchical order (`database` > `schema` > `table` > `column`). ``` { \"connections\": [ { \"identifier\": \"b9d1f2ef-fa65-4a4b-994e-30fa2d57b0c2\", \"data_warehouse_objects\": [ { \"database\": \"NEBULADEV\", \"schema\": \"INFORMATION_SCHEMA\", \"table\": \"APPLICABLE_ROLES\", \"column\": \"ROLE_NAME\" } ] } ], \"data_warehouse_object_type\": \"COLUMN\" } ``` - To fetch data by `configuration`, specify `data_warehouse_object_type`. For example, to fetch columns from the `DEVELOPMENT` database, specify the `data_warehouse_object_type` as `DATABASE` and define the `configuration` string as `{\"database\":\"DEVELOPMENT\"}`. To get column data for a specific table, specify the table, for example,`{\"database\":\"RETAILAPPAREL\",\"table\":\"PIPES\"}`. - To query connections by `authentication_type`, specify `data_warehouse_object_type`. Supported values for `authentication_type` are: - `SERVICE_ACCOUNT`: For connections that require service account credentials to authenticate to the Cloud Data Warehouse and fetch data. - `OAUTH`: For connections that require OAuth credentials to authenticate to the Cloud Data Warehouse and fetch data. Teradata, Oracle, and Presto Cloud Data Warehouses do not support the OAuth authentication type. - `IAM`: For connections that have the IAM OAuth set up. This authentication type is supported on Amazon Redshift connections only. - `EXTOAUTH`: For connections that have External OAuth set up. ThoughtSpot supports external [OAuth with Microsoft Azure Active Directory (AD)](https://docs.thoughtspot.com/cloud/latest/ connections-snowflake-azure-ad-oauth) and [Okta for Snowflake data connections](https://docs.thoughtspot.com/cloud/latest/connections-snowflake-okta-oauth). - `KEY_PAIR`: For connections that require Key Pair account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PKCE`: For connections that require OAuth with PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake, Starburst, Databricks, Denodo connections only. - `EXTOAUTH_WITH_PKCE`: For connections that require External OAuth With PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PEZ`: For connections that require OAuth With PEZ account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Amazon Redshift connections only. - `OAUTH_WITH_SERVICE_PRINCIPAL`: For connections that require OAuth With Service Principal account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `PERSONAL_ACCESS_TOKEN`: For connections that require Personal Access Token account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `OAUTH_CLIENT_CREDENTIALS`: For connections that require OAuth Client Credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - To include more details about connection objects in the API response, set `include_details` to `true`. - You can also sort the output by field names and filter connections by tags. **NOTE**: In addition to the connection GUID and name, the `identifier` field on each entry in `connections` accepts a Custom object ID if one is configured for the connection. The response also includes the `obj_id` field for each connection that has one set. **NOTE**: When filtering connection records by parameters other than `data_warehouse_types` or `tag_identifiers`, ensure that you set `record_size` to `-1` and `record_offset` to `0` for precise results. * @param searchConnectionRequest */ searchConnectionWithHttpInfo(searchConnectionRequest: SearchConnectionRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Gets connection objects. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. - To get a list of all connections available in the ThoughtSpot system, send the API request without any attributes in the request body. - To get the connection objects for a specific type of data warehouse, specify the type in `data_warehouse_types`. - To fetch details of a connection object, specify the connection object GUID or name. The `name_pattern` attribute allows passing partial text with `%` for a wildcard match. - To get details of the database, schemas, tables, or columns from a data connection object, specify `data_warehouse_object_type`. - To get a specific database, schema, table, or column from a connection object, define the object type in `data_warehouse_object_type` and object properties in the `data_warehouse_objects` array. For example, to search for a column, you must pass the database, schema, and table names in the API request. Note that in the following example, object properties are set in a hierarchical order (`database` > `schema` > `table` > `column`). ``` { \"connections\": [ { \"identifier\": \"b9d1f2ef-fa65-4a4b-994e-30fa2d57b0c2\", \"data_warehouse_objects\": [ { \"database\": \"NEBULADEV\", \"schema\": \"INFORMATION_SCHEMA\", \"table\": \"APPLICABLE_ROLES\", \"column\": \"ROLE_NAME\" } ] } ], \"data_warehouse_object_type\": \"COLUMN\" } ``` - To fetch data by `configuration`, specify `data_warehouse_object_type`. For example, to fetch columns from the `DEVELOPMENT` database, specify the `data_warehouse_object_type` as `DATABASE` and define the `configuration` string as `{\"database\":\"DEVELOPMENT\"}`. To get column data for a specific table, specify the table, for example,`{\"database\":\"RETAILAPPAREL\",\"table\":\"PIPES\"}`. - To query connections by `authentication_type`, specify `data_warehouse_object_type`. Supported values for `authentication_type` are: - `SERVICE_ACCOUNT`: For connections that require service account credentials to authenticate to the Cloud Data Warehouse and fetch data. - `OAUTH`: For connections that require OAuth credentials to authenticate to the Cloud Data Warehouse and fetch data. Teradata, Oracle, and Presto Cloud Data Warehouses do not support the OAuth authentication type. - `IAM`: For connections that have the IAM OAuth set up. This authentication type is supported on Amazon Redshift connections only. - `EXTOAUTH`: For connections that have External OAuth set up. ThoughtSpot supports external [OAuth with Microsoft Azure Active Directory (AD)](https://docs.thoughtspot.com/cloud/latest/ connections-snowflake-azure-ad-oauth) and [Okta for Snowflake data connections](https://docs.thoughtspot.com/cloud/latest/connections-snowflake-okta-oauth). - `KEY_PAIR`: For connections that require Key Pair account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PKCE`: For connections that require OAuth with PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake, Starburst, Databricks, Denodo connections only. - `EXTOAUTH_WITH_PKCE`: For connections that require External OAuth With PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PEZ`: For connections that require OAuth With PEZ account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Amazon Redshift connections only. - `OAUTH_WITH_SERVICE_PRINCIPAL`: For connections that require OAuth With Service Principal account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `PERSONAL_ACCESS_TOKEN`: For connections that require Personal Access Token account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `OAUTH_CLIENT_CREDENTIALS`: For connections that require OAuth Client Credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - To include more details about connection objects in the API response, set `include_details` to `true`. - You can also sort the output by field names and filter connections by tags. **NOTE**: In addition to the connection GUID and name, the `identifier` field on each entry in `connections` accepts a Custom object ID if one is configured for the connection. The response also includes the `obj_id` field for each connection that has one set. **NOTE**: When filtering connection records by parameters other than `data_warehouse_types` or `tag_identifiers`, ensure that you set `record_size` to `-1` and `record_offset` to `0` for precise results. * @param searchConnectionRequest */ searchConnection(searchConnectionRequest: SearchConnectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.5.0.cl or later Synchronizes connection metadata attributes from your Cloud Data Warehouse (CDW) with ThoughtSpot. Requires the `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. #### Usage guidelines To synchronize attributes from a CDW, specify the connection GUID or name in the `connection_identifier` path parameter and `sync_attributes` in the request body. Default attribute is `[\"DESCRIPTION\"]`. ##### Hierarchical schema * Connection: The connection object for the sync operation. * Tables: Tables for the sync operation. When no table is specified, all tables are synchronized. * Columns: If the table is specified, you can add the columns for the sync operation. If no columns are specified, all columns in the specified table are considered for the sync operation. To set the scope for the sync operation: * Connection-level: To sync all tables and columns, pass an empty request body, or only the attributes in the request body. * Table-level: To synchronize specific tables and their columns, specify the table identifiers in the `tables` array. * Column-level: To synchronize specific columns, specify the table identifier as the key and column identifiers as the value in the `tables` array. ``` { \"tables\": [ {\"table-guid-1\": [\"column-guid-1\", \"column-guid-2\"]}, \"table-guid-2\" ], \"sync_attributes\": [\"DESCRIPTION\"] } ``` ##### API response If the sync operation is successful, the API returns the following information: * Status of the sync operation. For example, `SUCCESS`, `PARTIAL_SUCCESS`, or `NO_UPDATE`. * Number of tables and columns that were updated. * Number of tables and columns with the sync failed status when the overall sync status is `PARTIAL_SUCCESS`. * Message text indicating the sync results. * @param connectionIdentifier Unique ID or name of the connection. * @param syncMetadataRequest */ syncMetadataWithHttpInfo(connectionIdentifier: string, syncMetadataRequest: SyncMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.5.0.cl or later Synchronizes connection metadata attributes from your Cloud Data Warehouse (CDW) with ThoughtSpot. Requires the `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. #### Usage guidelines To synchronize attributes from a CDW, specify the connection GUID or name in the `connection_identifier` path parameter and `sync_attributes` in the request body. Default attribute is `[\"DESCRIPTION\"]`. ##### Hierarchical schema * Connection: The connection object for the sync operation. * Tables: Tables for the sync operation. When no table is specified, all tables are synchronized. * Columns: If the table is specified, you can add the columns for the sync operation. If no columns are specified, all columns in the specified table are considered for the sync operation. To set the scope for the sync operation: * Connection-level: To sync all tables and columns, pass an empty request body, or only the attributes in the request body. * Table-level: To synchronize specific tables and their columns, specify the table identifiers in the `tables` array. * Column-level: To synchronize specific columns, specify the table identifier as the key and column identifiers as the value in the `tables` array. ``` { \"tables\": [ {\"table-guid-1\": [\"column-guid-1\", \"column-guid-2\"]}, \"table-guid-2\" ], \"sync_attributes\": [\"DESCRIPTION\"] } ``` ##### API response If the sync operation is successful, the API returns the following information: * Status of the sync operation. For example, `SUCCESS`, `PARTIAL_SUCCESS`, or `NO_UPDATE`. * Number of tables and columns that were updated. * Number of tables and columns with the sync failed status when the overall sync status is `PARTIAL_SUCCESS`. * Message text indicating the sync results. * @param connectionIdentifier Unique ID or name of the connection. * @param syncMetadataRequest */ syncMetadata(connectionIdentifier: string, syncMetadataRequest: SyncMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Update connection V2](#/http/api-endpoints/connections/update-connection-v2) endpoint to update your connection objects. #### Usage guidelines Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. * @param updateConnectionRequest */ updateConnectionWithHttpInfo(updateConnectionRequest: UpdateConnectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Update connection V2](#/http/api-endpoints/connections/update-connection-v2) endpoint to update your connection objects. #### Usage guidelines Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. * @param updateConnectionRequest */ updateConnection(updateConnectionRequest: UpdateConnectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.6.0.cl or later Activates or deactivates a connection. A deactivated connection cannot be used for queries or operations until it is activated again. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [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. Only the connection owner or an administrator can perform this operation. #### Usage guidelines To update the status of a connection, specify the connection GUID or name in the `connection_identifier` path parameter and the desired `status` in the request body. - **ACTIVATED**: Enables the connection. Queries and operations can resume on an activated connection. - **DEACTIVATED**: Disables the connection. It does not remove the connection metadata, but only makes the connection unavailable for queries and operations. You can reactivate a deactivated connection by setting \"status\": \"ACTIVATED\". * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionStatusRequest */ updateConnectionStatusWithHttpInfo(connectionIdentifier: string, updateConnectionStatusRequest: UpdateConnectionStatusRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Activates or deactivates a connection. A deactivated connection cannot be used for queries or operations until it is activated again. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [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. Only the connection owner or an administrator can perform this operation. #### Usage guidelines To update the status of a connection, specify the connection GUID or name in the `connection_identifier` path parameter and the desired `status` in the request body. - **ACTIVATED**: Enables the connection. Queries and operations can resume on an activated connection. - **DEACTIVATED**: Disables the connection. It does not remove the connection metadata, but only makes the connection unavailable for queries and operations. You can reactivate a deactivated connection by setting \"status\": \"ACTIVATED\". * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionStatusRequest */ updateConnectionStatus(connectionIdentifier: string, updateConnectionStatusRequest: UpdateConnectionStatusRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: * This is an example of updating a single table in a empty connection: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"DEMORENAME\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"Col1\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col2\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col3\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col312\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col4\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` * This is an example of updating a single table in an existing connection with tables: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"CUSTOMER\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [], \"relationships\": [] }, { \"name\": \"tpch5k_falcon_default_schema_users\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"user_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"product_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"user_cost\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a Snowflake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"databases\":[\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionV2Request */ updateConnectionV2WithHttpInfo(connectionIdentifier: string, updateConnectionV2Request: UpdateConnectionV2Request, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: * This is an example of updating a single table in a empty connection: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"DEMORENAME\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"Col1\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col2\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col3\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col312\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col4\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` * This is an example of updating a single table in an existing connection with tables: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"CUSTOMER\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [], \"relationships\": [] }, { \"name\": \"tpch5k_falcon_default_schema_users\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"user_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"product_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"user_cost\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a Snowflake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"databases\":[\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionV2Request */ updateConnectionV2(connectionIdentifier: string, updateConnectionV2Request: UpdateConnectionV2Request, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseCustomActionApi { private api; constructor(configuration: Configuration, requestFactory?: CustomActionApiRequestFactory, responseProcessor?: CustomActionApiResponseProcessor); /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Creates a custom action that appears as a menu action on a saved Answer or Liveboard visualization. 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. #### Usage Guidelines The API lets you create the following types of custom actions: * URL-based action Allows pushing data to an external URL. * Callback action Triggers a callback to the host application and initiates a response payload on an embedded ThoughtSpot instance. By default, custom actions are visible to only administrator or developer users. To make a custom action available to other users, and specify the groups in `group_identifiers`. By default, the custom action is set as a _global_ action on all visualizations and saved Answers. To assign a custom action to specific Liveboard visualization, saved Answer, or Worksheet, set `visibility` to `false` in `default_action_config` property and specify the GUID or name of the object in `associate_metadata`. For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param createCustomActionRequest */ createCustomActionWithHttpInfo(createCustomActionRequest: CreateCustomActionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Creates a custom action that appears as a menu action on a saved Answer or Liveboard visualization. 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. #### Usage Guidelines The API lets you create the following types of custom actions: * URL-based action Allows pushing data to an external URL. * Callback action Triggers a callback to the host application and initiates a response payload on an embedded ThoughtSpot instance. By default, custom actions are visible to only administrator or developer users. To make a custom action available to other users, and specify the groups in `group_identifiers`. By default, the custom action is set as a _global_ action on all visualizations and saved Answers. To assign a custom action to specific Liveboard visualization, saved Answer, or Worksheet, set `visibility` to `false` in `default_action_config` property and specify the GUID or name of the object in `associate_metadata`. For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param createCustomActionRequest */ createCustomAction(createCustomActionRequest: CreateCustomActionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Removes the custom action specified in the API request. 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. * @param customActionIdentifier Unique ID or name of the custom action. */ deleteCustomActionWithHttpInfo(customActionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Removes the custom action specified in the API request. 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. * @param customActionIdentifier Unique ID or name of the custom action. */ deleteCustomAction(customActionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Gets custom actions configured on the cluster. 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. * @param searchCustomActionsRequest */ searchCustomActionsWithHttpInfo(searchCustomActionsRequest: SearchCustomActionsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Gets custom actions configured on the cluster. 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. * @param searchCustomActionsRequest */ searchCustomActions(searchCustomActionsRequest: SearchCustomActionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Updates a custom action. 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. #### Usage Guidelines The API allows you to modify the following properties: * Name of the custom action * Action availability to groups * Association to metadata objects * Authentication settings for a URL-based action For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param customActionIdentifier Unique ID or name of the custom action. * @param updateCustomActionRequest */ updateCustomActionWithHttpInfo(customActionIdentifier: string, updateCustomActionRequest: UpdateCustomActionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Updates a custom action. 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. #### Usage Guidelines The API allows you to modify the following properties: * Name of the custom action * Action availability to groups * Association to metadata objects * Authentication settings for a URL-based action For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param customActionIdentifier Unique ID or name of the custom action. * @param updateCustomActionRequest */ updateCustomAction(customActionIdentifier: string, updateCustomActionRequest: UpdateCustomActionRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseCustomCalendarsApi { private api; constructor(configuration: Configuration, requestFactory?: CustomCalendarsApiRequestFactory, responseProcessor?: CustomCalendarsApiResponseProcessor); /** * Version: 10.12.0.cl or later Creates a new [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can create a custom calendar from scratch or an existing Table in ThoughtSpot. For both methods of calendar creation, the following parameters are required: * Name of the custom calendar. * Calendar creation method. To create a calendar from an existing table, specify the method: - `FROM_EXISTING_TABLE` - Creates calendar from the table reference provided in the API request. - `FROM_INPUT_PARAMS` - Creates a calendar from the parameters defined in the API request. * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. **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. ##### Calendar type The API allows you to create the following types of calendars: * `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. * `4-4-5`. Each quarter in the calendar will include two 4-week months followed by one 5-week month. * `4-5-4`. Each quarter in the calendar will include two 4-week months with a 5-week month between. * `5-4-4`. Each quarter begins with a 5-week month, followed by two 4-week months. To 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. You can also set the starting day of the week and customize the prefixes for year and quarter labels. #### Examples To create a calendar from an existing table: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_EXISTING_TABLE\", } ``` To create a calendar from scratch: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_INPUT_PARAMS\", \"calendar_type\": \"MONTH_OFFSET\", \"month_offset\": \"April\", \"start_day_of_week\": \"Monday\", \"quarter_name_prefix\": \"Q\", \"year_name_prefix\": \"FY\", \"start_date\": \"04/01/2025\", \"end_date\": \"04/31/2025\" } ``` * @param createCalendarRequest */ createCalendarWithHttpInfo(createCalendarRequest: CreateCalendarRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Creates a new [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can create a custom calendar from scratch or an existing Table in ThoughtSpot. For both methods of calendar creation, the following parameters are required: * Name of the custom calendar. * Calendar creation method. To create a calendar from an existing table, specify the method: - `FROM_EXISTING_TABLE` - Creates calendar from the table reference provided in the API request. - `FROM_INPUT_PARAMS` - Creates a calendar from the parameters defined in the API request. * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. **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. ##### Calendar type The API allows you to create the following types of calendars: * `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. * `4-4-5`. Each quarter in the calendar will include two 4-week months followed by one 5-week month. * `4-5-4`. Each quarter in the calendar will include two 4-week months with a 5-week month between. * `5-4-4`. Each quarter begins with a 5-week month, followed by two 4-week months. To 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. You can also set the starting day of the week and customize the prefixes for year and quarter labels. #### Examples To create a calendar from an existing table: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_EXISTING_TABLE\", } ``` To create a calendar from scratch: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_INPUT_PARAMS\", \"calendar_type\": \"MONTH_OFFSET\", \"month_offset\": \"April\", \"start_day_of_week\": \"Monday\", \"quarter_name_prefix\": \"Q\", \"year_name_prefix\": \"FY\", \"start_date\": \"04/01/2025\", \"end_date\": \"04/31/2025\" } ``` * @param createCalendarRequest */ createCalendar(createCalendarRequest: CreateCalendarRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Deletes a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines To delete a custom calendar, specify the calendar ID as a path parameter in the request URL. * @param calendarIdentifier Unique ID or name of the Calendar. */ deleteCalendarWithHttpInfo(calendarIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Deletes a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines To delete a custom calendar, specify the calendar ID as a path parameter in the request URL. * @param calendarIdentifier Unique ID or name of the Calendar. */ deleteCalendar(calendarIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Exports a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal) in the CSV format. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines Use this API to download a custom calendar in the CSV file format. In your API request, specify the following parameters. * Start and end date of the calendar. For \"month offset\" calendars, the start date must match the month defined in the `month_offset` attribute. You can also specify optional parameters such as the starting day of the week and prefixes for the quarter and year labels. * @param generateCSVRequest */ generateCSVWithHttpInfo(generateCSVRequest: GenerateCSVRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Exports a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal) in the CSV format. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines Use this API to download a custom calendar in the CSV file format. In your API request, specify the following parameters. * Start and end date of the calendar. For \"month offset\" calendars, the start date must match the month defined in the `month_offset` attribute. You can also specify optional parameters such as the starting day of the week and prefixes for the quarter and year labels. * @param generateCSVRequest */ generateCSV(generateCSVRequest: GenerateCSVRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Gets a list of [custom calendars](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines By 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. The `name_pattern` parameter filters and returns only those objects that match the specified pattern. Use `%` as a wildcard for pattern matching. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCalendarsRequest */ searchCalendarsWithHttpInfo(searchCalendarsRequest: SearchCalendarsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.12.0.cl or later Gets a list of [custom calendars](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines By 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. The `name_pattern` parameter filters and returns only those objects that match the specified pattern. Use `%` as a wildcard for pattern matching. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCalendarsRequest */ searchCalendars(searchCalendarsRequest: SearchCalendarsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Updates the properties of a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can update the properties of a calendar using one of the following methods: * `FROM_INPUT_PARAMS` to update the calendar properties with the values defined in the API request. * `FROM_EXISTING_TABLE` Creates a calendar from the parameters defined in the API request. To update a custom calendar, specify the calendar ID as a path parameter in the request URL and the following parameters in the request body: * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. The 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. #### Examples Update a custom calendar using an existing Table in ThoughtSpot: ``` { \"update_method\": \"FROM_EXISTING_TABLE\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" } } ``` Update a custom calendar with the attributes defined in the API request: ``` { \"update_method\": \"FROM_INPUT_PARAMS\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" }, \"month_offset\": \"August\", \"start_day_of_week\": \"Monday\", \"start_date\": \"08/01/2025\", \"end_date\": \"07/31/2026\" } ``` * @param calendarIdentifier Unique Id or name of the calendar. * @param updateCalendarRequest */ updateCalendarWithHttpInfo(calendarIdentifier: string, updateCalendarRequest: UpdateCalendarRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Updates the properties of a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can update the properties of a calendar using one of the following methods: * `FROM_INPUT_PARAMS` to update the calendar properties with the values defined in the API request. * `FROM_EXISTING_TABLE` Creates a calendar from the parameters defined in the API request. To update a custom calendar, specify the calendar ID as a path parameter in the request URL and the following parameters in the request body: * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. The 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. #### Examples Update a custom calendar using an existing Table in ThoughtSpot: ``` { \"update_method\": \"FROM_EXISTING_TABLE\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" } } ``` Update a custom calendar with the attributes defined in the API request: ``` { \"update_method\": \"FROM_INPUT_PARAMS\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" }, \"month_offset\": \"August\", \"start_day_of_week\": \"Monday\", \"start_date\": \"08/01/2025\", \"end_date\": \"07/31/2026\" } ``` * @param calendarIdentifier Unique Id or name of the calendar. * @param updateCalendarRequest */ updateCalendar(calendarIdentifier: string, updateCalendarRequest: UpdateCalendarRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseDBTApi { private api; constructor(configuration: Configuration, requestFactory?: DBTApiRequestFactory, responseProcessor?: DBTApiResponseProcessor); /** * Version: 9.9.0.cl or later Creates a DBT connection object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About create DBT connection DBT connection in ThoughtSpot is used by the user to define DBT credentials for cloud . The API needs embrace connection, embrace database name, DBT url, import type, DBT account identifier, DBT project identifier, DBT access token and environment details (or) embrace connection, embrace database name, import type, file_content to create a connection object. To know more about DBT, see ThoughtSpot Product Documentation. * @param connectionName Name of the connection. * @param databaseName Name of the Database. * @param [importType] Mention type of Import * @param [accessToken] Access token is mandatory when Import_Type is DBT_CLOUD. * @param [dbtUrl] DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param [accountId] Account ID is mandatory when Import_Type is DBT_CLOUD * @param [projectId] Project ID is mandatory when Import_Type is DBT_CLOUD * @param [dbtEnvId] DBT Environment ID\\\" * @param [projectName] Name of the project * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ dbtConnectionWithHttpInfo(connectionName: string, databaseName: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Creates a DBT connection object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About create DBT connection DBT connection in ThoughtSpot is used by the user to define DBT credentials for cloud . The API needs embrace connection, embrace database name, DBT url, import type, DBT account identifier, DBT project identifier, DBT access token and environment details (or) embrace connection, embrace database name, import type, file_content to create a connection object. To know more about DBT, see ThoughtSpot Product Documentation. * @param connectionName Name of the connection. * @param databaseName Name of the Database. * @param [importType] Mention type of Import * @param [accessToken] Access token is mandatory when Import_Type is DBT_CLOUD. * @param [dbtUrl] DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param [accountId] Account ID is mandatory when Import_Type is DBT_CLOUD * @param [projectId] Project ID is mandatory when Import_Type is DBT_CLOUD * @param [dbtEnvId] DBT Environment ID\\\" * @param [projectName] Name of the project * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ dbtConnection(connectionName: string, databaseName: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Resynchronize the existing list of models, tables, worksheet tml’s and import them to Thoughtspot based on the DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param [includeSemanticReport] If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateSyncTmlWithHttpInfo(dbtConnectionIdentifier: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Resynchronize the existing list of models, tables, worksheet tml’s and import them to Thoughtspot based on the DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param [includeSemanticReport] If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateSyncTml(dbtConnectionIdentifier: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Generate required table and worksheet and import them. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About generate TML Models and Worksheets to be imported can be selected by the user as part of the API. * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param modelTables List of Models and their respective Tables Example: \\\'[{\\\"model_name\\\": \\\"model_name\\\", \\\"model_path\\\": \\\"model_path\\\", \\\"tables\\\": [\\\"table_name\\\"]}]\\\' * @param importWorksheets Mention the worksheet tmls to import * @param [worksheets] List of worksheets is mandatory when import_Worksheets is type SELECTED Example: [\\\"worksheet_name\\\"] * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param [includeSemanticReport] If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateTmlWithHttpInfo(dbtConnectionIdentifier: string, modelTables: string, importWorksheets: string, worksheets?: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Generate required table and worksheet and import them. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About generate TML Models and Worksheets to be imported can be selected by the user as part of the API. * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param modelTables List of Models and their respective Tables Example: \\\'[{\\\"model_name\\\": \\\"model_name\\\", \\\"model_path\\\": \\\"model_path\\\", \\\"tables\\\": [\\\"table_name\\\"]}]\\\' * @param importWorksheets Mention the worksheet tmls to import * @param [worksheets] List of worksheets is mandatory when import_Worksheets is type SELECTED Example: [\\\"worksheet_name\\\"] * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param [includeSemanticReport] If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateTml(dbtConnectionIdentifier: string, modelTables: string, importWorksheets: string, worksheets?: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Gets a list of DBT connection objects by user and organization, available on the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About search DBT connection To get details of a specific DBT connection identifier, database connection identifier, database connection name, database name, project name, project identifier, environment identifier , import type and author. */ dbtSearchWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.9.0.cl or later Gets a list of DBT connection objects by user and organization, available on the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About search DBT connection To get details of a specific DBT connection identifier, database connection identifier, database connection name, database name, project name, project identifier, environment identifier , import type and author. */ dbtSearch(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Removes the specified DBT connection object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT Connection. */ deleteDbtConnectionWithHttpInfo(dbtConnectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Removes the specified DBT connection object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT Connection. */ deleteDbtConnection(dbtConnectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Updates a DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About update DBT connection You can modify DBT connection object properties such as embrace connection name, embrace database name, import type, account identifier, access token, project identifier and environment (or) embrace connection, embrace database name, import type, file_content settings. * @param dbtConnectionIdentifier Unique ID of the DBT Connection. * @param [connectionName] Name of the connection. * @param [databaseName] Name of the Database. * @param [importType] Mention type of Import * @param [accessToken] Access token is mandatory when Import_Type is DBT_CLOUD. * @param [dbtUrl] DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param [accountId] Account ID is mandatory when Import_Type is DBT_CLOUD * @param [projectId] Project ID is mandatory when Import_Type is DBT_CLOUD * @param [dbtEnvId] DBT Environment ID\\\" * @param [projectName] Name of the project * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ updateDbtConnectionWithHttpInfo(dbtConnectionIdentifier: string, connectionName?: string, databaseName?: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Updates a DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About update DBT connection You can modify DBT connection object properties such as embrace connection name, embrace database name, import type, account identifier, access token, project identifier and environment (or) embrace connection, embrace database name, import type, file_content settings. * @param dbtConnectionIdentifier Unique ID of the DBT Connection. * @param [connectionName] Name of the connection. * @param [databaseName] Name of the Database. * @param [importType] Mention type of Import * @param [accessToken] Access token is mandatory when Import_Type is DBT_CLOUD. * @param [dbtUrl] DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param [accountId] Account ID is mandatory when Import_Type is DBT_CLOUD * @param [projectId] Project ID is mandatory when Import_Type is DBT_CLOUD * @param [dbtEnvId] DBT Environment ID\\\" * @param [projectName] Name of the project * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ updateDbtConnection(dbtConnectionIdentifier: string, connectionName?: string, databaseName?: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseDataApi { private api; constructor(configuration: Configuration, requestFactory?: DataApiRequestFactory, responseProcessor?: DataApiResponseProcessor); /** * Version: 9.0.0.cl or later Fetches data from a saved Answer. Requires at least view access to the saved Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_apis). * @param fetchAnswerDataRequest */ fetchAnswerDataWithHttpInfo(fetchAnswerDataRequest: FetchAnswerDataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches data from a saved Answer. Requires at least view access to the saved Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_apis). * @param fetchAnswerDataRequest */ fetchAnswerData(fetchAnswerDataRequest: FetchAnswerDataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets data from a Liveboard object and its visualization. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To get data for specific visualizations, add the GUIDs or names of the visualizations in the API request. To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes. If the new Liveboard experience mode, the transient content includes ad hoc changes to visualizations such as sorting, toggling of legends, and data drill down. For more information, and see [Liveboard data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_fetch_liveboard_data_api). * @param fetchLiveboardDataRequest */ fetchLiveboardDataWithHttpInfo(fetchLiveboardDataRequest: FetchLiveboardDataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets data from a Liveboard object and its visualization. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To get data for specific visualizations, add the GUIDs or names of the visualizations in the API request. To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes. If the new Liveboard experience mode, the transient content includes ad hoc changes to visualizations such as sorting, toggling of legends, and data drill down. For more information, and see [Liveboard data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_fetch_liveboard_data_api). * @param fetchLiveboardDataRequest */ fetchLiveboardData(fetchLiveboardDataRequest: FetchLiveboardDataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Generates an Answer from a given data source. Requires at least view access to the data source object (Worksheet or View). If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines To search data, specify the data source GUID in `logical_table_identifier`. The data source can be a Worksheet, View, Table, or SQL view. Pass search tokens in the `query_string` attribute in the API request as shown in the following example: ``` { \"query_string\": \"[sales] by [store]\", \"logical_table_identifier\": \"cd252e5c-b552-49a8-821d-3eadaa049cca\", } ``` For more information about the `query_string` format and data source attribute, see [Search data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_search_data_api). The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_api). * @param searchDataRequest */ searchDataWithHttpInfo(searchDataRequest: SearchDataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Generates an Answer from a given data source. Requires at least view access to the data source object (Worksheet or View). If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines To search data, specify the data source GUID in `logical_table_identifier`. The data source can be a Worksheet, View, Table, or SQL view. Pass search tokens in the `query_string` attribute in the API request as shown in the following example: ``` { \"query_string\": \"[sales] by [store]\", \"logical_table_identifier\": \"cd252e5c-b552-49a8-821d-3eadaa049cca\", } ``` For more information about the `query_string` format and data source attribute, see [Search data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_search_data_api). The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_api). * @param searchDataRequest */ searchData(searchDataRequest: SearchDataRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseEmailCustomizationApi { private api; constructor(configuration: Configuration, requestFactory?: EmailCustomizationApiRequestFactory, responseProcessor?: EmailCustomizationApiResponseProcessor); /** * Version: 10.10.0.cl or later Creates a customization configuration for the notification email. #### 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 To create a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param createEmailCustomizationRequest */ createEmailCustomizationWithHttpInfo(createEmailCustomizationRequest: CreateEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.10.0.cl or later Creates a customization configuration for the notification email. #### 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 To create a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param createEmailCustomizationRequest */ createEmailCustomization(createEmailCustomizationRequest: CreateEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.10.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 `template_identifier` from the response. - Use that `template_identifier` as a parameter in this API request. * @param templateIdentifier Unique ID or name of the email customization. */ deleteEmailCustomizationWithHttpInfo(templateIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.10.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 `template_identifier` from the response. - Use that `template_identifier` as a parameter in this API request. * @param templateIdentifier Unique ID or name of the email customization. */ deleteEmailCustomization(templateIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * 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. * @param deleteOrgEmailCustomizationRequest */ deleteOrgEmailCustomizationWithHttpInfo(deleteOrgEmailCustomizationRequest: DeleteOrgEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * 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. * @param deleteOrgEmailCustomizationRequest */ deleteOrgEmailCustomization(deleteOrgEmailCustomizationRequest: DeleteOrgEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.10.0.cl or later Search the email customization configuration if any set for the ThoughtSpot system. #### 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. * @param searchEmailCustomizationRequest */ searchEmailCustomizationWithHttpInfo(searchEmailCustomizationRequest: SearchEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.10.0.cl or later Search the email customization configuration if any set for the ThoughtSpot system. #### 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. * @param searchEmailCustomizationRequest */ searchEmailCustomization(searchEmailCustomizationRequest: SearchEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Updates a customization configuration for the notification email. #### 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 To update a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param updateEmailCustomizationRequest */ updateEmailCustomizationWithHttpInfo(updateEmailCustomizationRequest: UpdateEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Updates a customization configuration for the notification email. #### 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 To update a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param updateEmailCustomizationRequest */ updateEmailCustomization(updateEmailCustomizationRequest: UpdateEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.10.0.cl or later Validates the email customization configuration if any set for the ThoughtSpot system. #### 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. */ validateEmailCustomizationWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.10.0.cl or later Validates the email customization configuration if any set for the ThoughtSpot system. #### 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. */ validateEmailCustomization(_options?: PromiseConfigurationOptions): Promise; } declare class PromiseFeatureManagementApi { private api; constructor(configuration: Configuration, requestFactory?: FeatureManagementApiRequestFactory, responseProcessor?: FeatureManagementApiResponseProcessor); /** * Version: 26.10.0.cl or later Returns the feature configurations available on the ThoughtSpot system, grouped by feature group. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To retrieve feature configurations, pass these parameters in your API request: - `scope` — Determines the administrative view. Use `CLUSTER` for the cluster-admin view (returns the Orgs assigned to each feature); use `ORG` for the org-admin view (returns the current value of each feature for a single Org). - `org_identifier` — Numeric ID of the Org. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `category` — Availability category of the features to return. `GENERAL_ACCESS` returns generally available features; `EARLY_ACCESS` returns features still in early access. Defaults to `GENERAL_ACCESS`. The response fields populated depend on the requested scope. In the cluster-admin view (`scope=CLUSTER`), each feature includes `assigned_orgs`, `is_org_aware`, and (for non-org-aware features) `feature_value`. In the org-admin view (`scope=ORG`), each feature includes `element_type`, `element_config`, and `element_value`. The following example retrieves the general-access features for the cluster-admin view: ``` { \"scope\": \"CLUSTER\", \"category\": \"GENERAL_ACCESS\" } ``` For the org-admin view, set `scope` to `ORG` and pass the `org_identifier` of the Org to scope the search to (`org_identifier` is required when `scope` is `ORG`; omitting it returns a 400 error): ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"category\": \"GENERAL_ACCESS\" } ``` * @param searchFeaturesRequest */ searchFeaturesWithHttpInfo(searchFeaturesRequest: SearchFeaturesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.10.0.cl or later Returns the feature configurations available on the ThoughtSpot system, grouped by feature group. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To retrieve feature configurations, pass these parameters in your API request: - `scope` — Determines the administrative view. Use `CLUSTER` for the cluster-admin view (returns the Orgs assigned to each feature); use `ORG` for the org-admin view (returns the current value of each feature for a single Org). - `org_identifier` — Numeric ID of the Org. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `category` — Availability category of the features to return. `GENERAL_ACCESS` returns generally available features; `EARLY_ACCESS` returns features still in early access. Defaults to `GENERAL_ACCESS`. The response fields populated depend on the requested scope. In the cluster-admin view (`scope=CLUSTER`), each feature includes `assigned_orgs`, `is_org_aware`, and (for non-org-aware features) `feature_value`. In the org-admin view (`scope=ORG`), each feature includes `element_type`, `element_config`, and `element_value`. The following example retrieves the general-access features for the cluster-admin view: ``` { \"scope\": \"CLUSTER\", \"category\": \"GENERAL_ACCESS\" } ``` For the org-admin view, set `scope` to `ORG` and pass the `org_identifier` of the Org to scope the search to (`org_identifier` is required when `scope` is `ORG`; omitting it returns a 400 error): ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"category\": \"GENERAL_ACCESS\" } ``` * @param searchFeaturesRequest */ searchFeatures(searchFeaturesRequest: SearchFeaturesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Updates the Org assignments for a feature. Available to cluster admins only. #### Pre-requisites Requires the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege in the cluster-admin (All-Org / default-org) context. This endpoint manages Org assignments across the cluster, so it must be called by a cluster admin; org-scoped admins cannot call it. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To update the Org assignments for a feature, pass these parameters in your API request: - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature to update. - `org_identifiers` — Numeric IDs of the Orgs to assign. Send an empty array with `operation` set to `REPLACE` to clear all Org assignments for this feature. - `operation` — Type of update to apply. `ADD` assigns the given Orgs in addition to the existing ones; `REMOVE` unassigns the given Orgs; `REPLACE` sets the assignment to exactly the given Orgs. Defaults to `REPLACE`. The following example assigns Orgs `1` and `2` to a feature, in addition to any Orgs already assigned: ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [1, 2], \"operation\": \"ADD\" } ``` Clear all Org assignments for a feature by sending an empty array with `operation` set to `REPLACE` (this is the only way to unassign every Org at once): ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [], \"operation\": \"REPLACE\" } ``` * @param updateFeatureAssignmentsRequest */ updateFeatureAssignmentsWithHttpInfo(updateFeatureAssignmentsRequest: UpdateFeatureAssignmentsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Updates the Org assignments for a feature. Available to cluster admins only. #### Pre-requisites Requires the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege in the cluster-admin (All-Org / default-org) context. This endpoint manages Org assignments across the cluster, so it must be called by a cluster admin; org-scoped admins cannot call it. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To update the Org assignments for a feature, pass these parameters in your API request: - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature to update. - `org_identifiers` — Numeric IDs of the Orgs to assign. Send an empty array with `operation` set to `REPLACE` to clear all Org assignments for this feature. - `operation` — Type of update to apply. `ADD` assigns the given Orgs in addition to the existing ones; `REMOVE` unassigns the given Orgs; `REPLACE` sets the assignment to exactly the given Orgs. Defaults to `REPLACE`. The following example assigns Orgs `1` and `2` to a feature, in addition to any Orgs already assigned: ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [1, 2], \"operation\": \"ADD\" } ``` Clear all Org assignments for a feature by sending an empty array with `operation` set to `REPLACE` (this is the only way to unassign every Org at once): ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [], \"operation\": \"REPLACE\" } ``` * @param updateFeatureAssignmentsRequest */ updateFeatureAssignments(updateFeatureAssignmentsRequest: UpdateFeatureAssignmentsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.10.0.cl or later Sets the value of a feature at the cluster or Org scope. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To set a feature value, pass these parameters in your API request: - `scope` — Determines the scope at which the value is set. Use `CLUSTER` to set the cluster-level value; use `ORG` to set a per-Org value override. - `org_identifier` — Numeric ID of the Org for which to set the value. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature whose value should be set. - `feature_value` — New value to set for the feature. - `reset_org_overrides` — Applicable only when `scope` is `CLUSTER`. When `true`, any existing per-Org value overrides for this feature are also removed so that all Orgs inherit the new cluster-level value. Required when `scope` is `CLUSTER` for an org-aware feature. Must be omitted when `scope` is `ORG`; passing it at `ORG` scope returns a 400 error. The following example sets a per-Org value override for Org `1`: ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\" } ``` Set the cluster-level value and clear all per-Org overrides so every Org inherits the new value (CLUSTER scope). `reset_org_overrides: true` is destructive — it strips existing per-Org overrides cluster-wide: ``` { \"scope\": \"CLUSTER\", \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\", \"reset_org_overrides\": true } ``` * @param updateFeatureValueRequest */ updateFeatureValueWithHttpInfo(updateFeatureValueRequest: UpdateFeatureValueRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Sets the value of a feature at the cluster or Org scope. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To set a feature value, pass these parameters in your API request: - `scope` — Determines the scope at which the value is set. Use `CLUSTER` to set the cluster-level value; use `ORG` to set a per-Org value override. - `org_identifier` — Numeric ID of the Org for which to set the value. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature whose value should be set. - `feature_value` — New value to set for the feature. - `reset_org_overrides` — Applicable only when `scope` is `CLUSTER`. When `true`, any existing per-Org value overrides for this feature are also removed so that all Orgs inherit the new cluster-level value. Required when `scope` is `CLUSTER` for an org-aware feature. Must be omitted when `scope` is `ORG`; passing it at `ORG` scope returns a 400 error. The following example sets a per-Org value override for Org `1`: ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\" } ``` Set the cluster-level value and clear all per-Org overrides so every Org inherits the new value (CLUSTER scope). `reset_org_overrides: true` is destructive — it strips existing per-Org overrides cluster-wide: ``` { \"scope\": \"CLUSTER\", \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\", \"reset_org_overrides\": true } ``` * @param updateFeatureValueRequest */ updateFeatureValue(updateFeatureValueRequest: UpdateFeatureValueRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseGroupsApi { private api; constructor(configuration: Configuration, requestFactory?: GroupsApiRequestFactory, responseProcessor?: GroupsApiResponseProcessor); /** * Version: 9.0.0.cl or later Creates a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### About groups Groups in ThoughtSpot are used by the administrators to define privileges and organize users based on their roles and access requirements. To know more about groups and privileges, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/groups-privileges). #### Supported operations The API endpoint lets you perform the following operations: * Assign privileges * Add users * Define sharing visibility * Add sub-groups * Assign a default Liveboard * @param createUserGroupRequest */ createUserGroupWithHttpInfo(createUserGroupRequest: CreateUserGroupRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### About groups Groups in ThoughtSpot are used by the administrators to define privileges and organize users based on their roles and access requirements. To know more about groups and privileges, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/groups-privileges). #### Supported operations The API endpoint lets you perform the following operations: * Assign privileges * Add users * Define sharing visibility * Add sub-groups * Assign a default Liveboard * @param createUserGroupRequest */ createUserGroup(createUserGroupRequest: CreateUserGroupRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Removes the specified group object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. * @param groupIdentifier GUID or name of the group. */ deleteUserGroupWithHttpInfo(groupIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Removes the specified group object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. * @param groupIdentifier GUID or name of the group. */ deleteUserGroup(groupIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Imports group objects from external databases into ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. During the import operation: * If the specified group is not available in ThoughtSpot, it will be added to ThoughtSpot. * If `delete_unspecified_groups` is set to `true`, the groups not specified in the API request, excluding administrator and system user groups, are deleted. * If the specified groups are already available in ThoughtSpot, the object properties of these groups are modified and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. * @param importUserGroupsRequest */ importUserGroupsWithHttpInfo(importUserGroupsRequest: ImportUserGroupsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Imports group objects from external databases into ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. During the import operation: * If the specified group is not available in ThoughtSpot, it will be added to ThoughtSpot. * If `delete_unspecified_groups` is set to `true`, the groups not specified in the API request, excluding administrator and system user groups, are deleted. * If the specified groups are already available in ThoughtSpot, the object properties of these groups are modified and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. * @param importUserGroupsRequest */ importUserGroups(importUserGroupsRequest: ImportUserGroupsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets a list of user group objects from the ThoughtSpot system. To get details of a specific user group, specify the user group GUID or name. You can also filter the API response based on User ID, Org ID, Role ID, type of group, sharing visibility, privileges assigned to the group, and the Liveboard IDs assigned to the users in the group. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. **NOTE**: In addition to the GUID and name, `group_identifier` accepts a Custom object ID if one is configured for the group. The response also includes the `obj_id` field for each group that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUserGroupsRequest */ searchUserGroupsWithHttpInfo(searchUserGroupsRequest: SearchUserGroupsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of user group objects from the ThoughtSpot system. To get details of a specific user group, specify the user group GUID or name. You can also filter the API response based on User ID, Org ID, Role ID, type of group, sharing visibility, privileges assigned to the group, and the Liveboard IDs assigned to the users in the group. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. **NOTE**: In addition to the GUID and name, `group_identifier` accepts a Custom object ID if one is configured for the group. The response also includes the `obj_id` field for each group that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUserGroupsRequest */ searchUserGroups(searchUserGroupsRequest: SearchUserGroupsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates the properties of a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit [privileges](https://developers.thoughtspot.com/docs/?pageid=api-user-management#group-privileges) * Add or remove users * Change sharing visibility settings * Add or remove sub-groups * Assign a default Liveboard or update the existing settings * @param groupIdentifier GUID or name of the group. * @param updateUserGroupRequest */ updateUserGroupWithHttpInfo(groupIdentifier: string, updateUserGroupRequest: UpdateUserGroupRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates the properties of a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit [privileges](https://developers.thoughtspot.com/docs/?pageid=api-user-management#group-privileges) * Add or remove users * Change sharing visibility settings * Add or remove sub-groups * Assign a default Liveboard or update the existing settings * @param groupIdentifier GUID or name of the group. * @param updateUserGroupRequest */ updateUserGroup(groupIdentifier: string, updateUserGroupRequest: UpdateUserGroupRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseJobsApi { private api; constructor(configuration: Configuration, requestFactory?: JobsApiRequestFactory, responseProcessor?: JobsApiResponseProcessor); /** * Version: 26.4.0.cl or later Searches delivery history for communication channels such as webhooks. Returns channel-level delivery status for each job execution record. Use this to monitor channel health and delivery success rates across events. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. **NOTE**: When `channel_type` is `WEBHOOK`, the following constraints apply: - `job_ids`, `channel_identifiers`, and `events` each accept at most one element. - When `job_ids` is provided, it is used as the sole lookup key and other filter fields are ignored. - When `job_ids` is not provided, `channel_identifiers` and `events` are both required, each containing exactly one element. - Records older than the configured retention period are not returned. - Use `start_epoch_time_in_millis` and/or `end_epoch_time_in_millis` to narrow results to a specific time window. * @param searchChannelHistoryRequest */ searchChannelHistoryWithHttpInfo(searchChannelHistoryRequest: SearchChannelHistoryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Searches delivery history for communication channels such as webhooks. Returns channel-level delivery status for each job execution record. Use this to monitor channel health and delivery success rates across events. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. **NOTE**: When `channel_type` is `WEBHOOK`, the following constraints apply: - `job_ids`, `channel_identifiers`, and `events` each accept at most one element. - When `job_ids` is provided, it is used as the sole lookup key and other filter fields are ignored. - When `job_ids` is not provided, `channel_identifiers` and `events` are both required, each containing exactly one element. - Records older than the configured retention period are not returned. - Use `start_epoch_time_in_millis` and/or `end_epoch_time_in_millis` to narrow results to a specific time window. * @param searchChannelHistoryRequest */ searchChannelHistory(searchChannelHistoryRequest: SearchChannelHistoryRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseLogApi { private api; constructor(configuration: Configuration, requestFactory?: LogApiRequestFactory, responseProcessor?: LogApiResponseProcessor); /** * Version: 9.0.0.cl or later Fetches security audit logs. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the [Admin Control](https://developers.thoughtspot.com/docs/rbac#_admin_control) privileges are required. #### Usage guidelines By default, the API retrieves logs for the last 24 hours. You can set a custom duration in EPOCH time. Make sure the log duration specified in your API request doesn’t exceed 24 hours. If you must fetch logs for a longer time range, modify the duration and make multiple sequential API requests. Upon successful execution, the API returns logs with the following information: * timestamp of the event * event ID * event type * name and GUID of the user * IP address of ThoughtSpot instance For more information see [Audit logs Documentation](https://developers.thoughtspot.com/docs/audit-logs). * @param fetchLogsRequest */ fetchLogsWithHttpInfo(fetchLogsRequest: FetchLogsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Fetches security audit logs. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the [Admin Control](https://developers.thoughtspot.com/docs/rbac#_admin_control) privileges are required. #### Usage guidelines By default, the API retrieves logs for the last 24 hours. You can set a custom duration in EPOCH time. Make sure the log duration specified in your API request doesn’t exceed 24 hours. If you must fetch logs for a longer time range, modify the duration and make multiple sequential API requests. Upon successful execution, the API returns logs with the following information: * timestamp of the event * event ID * event type * name and GUID of the user * IP address of ThoughtSpot instance For more information see [Audit logs Documentation](https://developers.thoughtspot.com/docs/audit-logs). * @param fetchLogsRequest */ fetchLogs(fetchLogsRequest: FetchLogsRequest, _options?: PromiseConfigurationOptions): Promise>; } declare class PromiseManualTranslationApi { private api; constructor(configuration: Configuration, requestFactory?: ManualTranslationApiRequestFactory, responseProcessor?: ManualTranslationApiResponseProcessor); /** * Delete manual translations. Version: 26.7.0.cl or later Deletes all manual translations for the org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - This deletes **all** translation entries for the targeted org. The operation cannot be undone. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to delete translations uploaded in the All-Org context. * @param deleteManualTranslationsRequest */ deleteManualTranslationsWithHttpInfo(deleteManualTranslationsRequest: DeleteManualTranslationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Delete manual translations. Version: 26.7.0.cl or later Deletes all manual translations for the org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - This deletes **all** translation entries for the targeted org. The operation cannot be undone. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to delete translations uploaded in the All-Org context. * @param deleteManualTranslationsRequest */ deleteManualTranslations(deleteManualTranslationsRequest: DeleteManualTranslationsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Export manual translations as a CSV file. Version: 26.7.0.cl or later Downloads all manual translations for the org as a CSV file. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The response is a CSV file with columns: `content`, `locale`, `translated-content`. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to export translations from the All-Org context. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. - Returns a `400` error if no translations exist for the targeted org or cluster scope. * @param exportManualTranslationsRequest */ exportManualTranslationsWithHttpInfo(exportManualTranslationsRequest: ExportManualTranslationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Export manual translations as a CSV file. Version: 26.7.0.cl or later Downloads all manual translations for the org as a CSV file. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The response is a CSV file with columns: `content`, `locale`, `translated-content`. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to export translations from the All-Org context. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. - Returns a `400` error if no translations exist for the targeted org or cluster scope. * @param exportManualTranslationsRequest */ exportManualTranslations(exportManualTranslationsRequest: ExportManualTranslationsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Get translations bundle for a locale. Version: 26.7.0.cl or later Retrieves all translations for a specific locale as a JSON map. Available to all authenticated users. No additional privileges are required. #### Usage guidelines - `locale` parameter must be a hyphenated locale code, in any case (for example, `fr-fr`, `de-de`, `JA-JP`). - Returns a JSON object with a `translations` map where each key is the original string and each value is the translated string. - If the org has no translations for the requested locale, the endpoint falls back to cluster-level translations. - Returns an empty `translations` map (not an error) if no entries exist at either level. * @param locale Locale code for which to retrieve translations. For example, `fr-fr`, `de-de`, `JA-JP`. */ getManualTranslationBundleWithHttpInfo(locale: string, _options?: PromiseConfigurationOptions): Promise>; /** * Get translations bundle for a locale. Version: 26.7.0.cl or later Retrieves all translations for a specific locale as a JSON map. Available to all authenticated users. No additional privileges are required. #### Usage guidelines - `locale` parameter must be a hyphenated locale code, in any case (for example, `fr-fr`, `de-de`, `JA-JP`). - Returns a JSON object with a `translations` map where each key is the original string and each value is the translated string. - If the org has no translations for the requested locale, the endpoint falls back to cluster-level translations. - Returns an empty `translations` map (not an error) if no entries exist at either level. * @param locale Locale code for which to retrieve translations. For example, `fr-fr`, `de-de`, `JA-JP`. */ getManualTranslationBundle(locale: string, _options?: PromiseConfigurationOptions): Promise; /** * Import manual translations from a CSV file. Version: 26.7.0.cl or later Uploads a CSV file containing manual translations and upserts them into the database. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The CSV file must have exactly three columns in this order: `content`, `locale`, `translated-content`. - Maximum file size: **30 MB**. Maximum rows: **10,000**. - Only `.csv` files are accepted. - The import performs an **upsert**: existing entries matched by `(org_id, locale, content)` are updated; new entries are inserted. Entries not in the upload are left untouched. - Set `scope` to `CLUSTER` to upload translations to the All-Org context. Cluster-level translations act as defaults for orgs that have no translations for a locale. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. * @param translationsFile CSV file containing translations. The file must have three columns: `content`, `locale`, `translated-content`. Max file size: 30 MB. Max rows: 10,000. * @param [scope] Org scope for the import. `ORG` (default) targets the calling user\\\'s current org. `CLUSTER` targets the All-Org context. */ importManualTranslationsWithHttpInfo(translationsFile: HttpFile, scope?: string, _options?: PromiseConfigurationOptions): Promise>; /** * Import manual translations from a CSV file. Version: 26.7.0.cl or later Uploads a CSV file containing manual translations and upserts them into the database. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The CSV file must have exactly three columns in this order: `content`, `locale`, `translated-content`. - Maximum file size: **30 MB**. Maximum rows: **10,000**. - Only `.csv` files are accepted. - The import performs an **upsert**: existing entries matched by `(org_id, locale, content)` are updated; new entries are inserted. Entries not in the upload are left untouched. - Set `scope` to `CLUSTER` to upload translations to the All-Org context. Cluster-level translations act as defaults for orgs that have no translations for a locale. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. * @param translationsFile CSV file containing translations. The file must have three columns: `content`, `locale`, `translated-content`. Max file size: 30 MB. Max rows: 10,000. * @param [scope] Org scope for the import. `ORG` (default) targets the calling user\\\'s current org. `CLUSTER` targets the All-Org context. */ importManualTranslations(translationsFile: HttpFile, scope?: string, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseMetadataApi { private api; constructor(configuration: Configuration, requestFactory?: MetadataApiRequestFactory, responseProcessor?: MetadataApiResponseProcessor); /** * Convert worksheets to models Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (Can manage data models). --- ## Usage Guidelines ### Parameters 1. **worksheet_ids** - **Description:** A comma-separated list of GUIDs (Globally Unique Identifiers) specifying the Worksheets to be converted. - **Usage:** - Used only when `convert_all` is set to `false`. - Leave empty or omit when `convert_all` is set to `true`. 2. **exclude_worksheet_ids** - **Description:** A comma-separated list of GUIDs specifying Worksheets to be excluded from conversion. - **Usage:** - Useful when `convert_all` is set to `true` and specific Worksheets should not be converted. 3. **convert_all** - **Description:** Sets the scope of conversion. - **Options:** - `true`: Converts all Worksheets in the system, except those specified in `exclude_worksheet_ids`. - `false`: Converts only the Worksheets listed in `worksheet_ids`. 4. **apply_changes** - **Description:** Specifies whether to apply changes directly to ThoughtSpot or to generate a preview before applying any changes.Used for validation of conversion. - **Options:** - `true`: Applies conversion changes directly to ThoughtSpot. - `false`: Generates only a preview of the changes and does not apply any changes to ThoughtSpot --- ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the conversion process 2. **Partial Conversion for Testing:** Test the conversion process by setting `convert_all` to `false` and specifying a small number of `worksheet_ids`. 3. **Verify Dependencies:** Check for dependent objects, such as Tables and Connections, to avoid invalid references. 4. **Review Changes:** Use `apply_changes: false` to preview the impact of the conversion before applying changes. --- ## Examples ### Convert Specific Worksheets ```json { \"worksheet_ids\": [\"guid1\", \"guid2\", \"guid3\"], \"exclude_worksheet_ids\": [], \"convert_all\": false, \"apply_changes\": true } ``` ### Convert All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [], \"convert_all\": true, \"apply_changes\": true } ``` ### Exclude Specific Worksheets While Converting All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [\"abc\"], \"convert_all\": true, \"apply_changes\": true } ``` * @param convertWorksheetToModelRequest */ convertWorksheetToModelWithHttpInfo(convertWorksheetToModelRequest: ConvertWorksheetToModelRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Convert worksheets to models Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (Can manage data models). --- ## Usage Guidelines ### Parameters 1. **worksheet_ids** - **Description:** A comma-separated list of GUIDs (Globally Unique Identifiers) specifying the Worksheets to be converted. - **Usage:** - Used only when `convert_all` is set to `false`. - Leave empty or omit when `convert_all` is set to `true`. 2. **exclude_worksheet_ids** - **Description:** A comma-separated list of GUIDs specifying Worksheets to be excluded from conversion. - **Usage:** - Useful when `convert_all` is set to `true` and specific Worksheets should not be converted. 3. **convert_all** - **Description:** Sets the scope of conversion. - **Options:** - `true`: Converts all Worksheets in the system, except those specified in `exclude_worksheet_ids`. - `false`: Converts only the Worksheets listed in `worksheet_ids`. 4. **apply_changes** - **Description:** Specifies whether to apply changes directly to ThoughtSpot or to generate a preview before applying any changes.Used for validation of conversion. - **Options:** - `true`: Applies conversion changes directly to ThoughtSpot. - `false`: Generates only a preview of the changes and does not apply any changes to ThoughtSpot --- ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the conversion process 2. **Partial Conversion for Testing:** Test the conversion process by setting `convert_all` to `false` and specifying a small number of `worksheet_ids`. 3. **Verify Dependencies:** Check for dependent objects, such as Tables and Connections, to avoid invalid references. 4. **Review Changes:** Use `apply_changes: false` to preview the impact of the conversion before applying changes. --- ## Examples ### Convert Specific Worksheets ```json { \"worksheet_ids\": [\"guid1\", \"guid2\", \"guid3\"], \"exclude_worksheet_ids\": [], \"convert_all\": false, \"apply_changes\": true } ``` ### Convert All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [], \"convert_all\": true, \"apply_changes\": true } ``` ### Exclude Specific Worksheets While Converting All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [\"abc\"], \"convert_all\": true, \"apply_changes\": true } ``` * @param convertWorksheetToModelRequest */ convertWorksheetToModel(convertWorksheetToModelRequest: ConvertWorksheetToModelRequest, _options?: PromiseConfigurationOptions): Promise; /** * Makes a copy of an Answer or Liveboard Version: 10.3.0.cl or later Creates a copy of a metadata object. Requires at least view access to the metadata object being copied. Upon successful execution, the API creates a copy of the metadata object specified in the API request and returns the ID of the new object. * @param copyObjectRequest */ copyObjectWithHttpInfo(copyObjectRequest: CopyObjectRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Makes a copy of an Answer or Liveboard Version: 10.3.0.cl or later Creates a copy of a metadata object. Requires at least view access to the metadata object being copied. Upon successful execution, the API creates a copy of the metadata object specified in the API request and returns the ID of the new object. * @param copyObjectRequest */ copyObject(copyObjectRequest: CopyObjectRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Removes the specified metadata object from the ThoughtSpot system. Requires edit access to the metadata object. * @param deleteMetadataRequest */ deleteMetadataWithHttpInfo(deleteMetadataRequest: DeleteMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Removes the specified metadata object from the ThoughtSpot system. Requires edit access to the metadata object. * @param deleteMetadataRequest */ deleteMetadata(deleteMetadataRequest: DeleteMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. Requires `DATADOWNLOADING` (**Can download Data**) and at least view access to the metadata object. #### Usage guidelines * You can export one or several objects by passing metadata object GUIDs in the `metadata` array. * When exporting TML content for a Liveboard or Answer object, you can set `export_associated` to `true` to retrieve TML content for underlying Worksheets, Tables, or Views, including the GUID of each object within the headers. When `export_associated` is set to `true`, consider retrieving one metadata object at a time. * Set `export_fqns` to `true` to add FQNs of the referenced objects in the TML content. For example, if you send an API request to retrieve TML for a Liveboard and its associated objects, the API returns the TML content with FQNs of the referenced Worksheet. Exporting TML with FQNs is useful if ThoughtSpot has multiple objects with the same name and you want to eliminate ambiguity when importing TML files into ThoughtSpot. It eliminates the need for adding FQNs of the referenced objects manually during the import operation. * To export only the TML of feedbacks associated with an object, set the GUID of the object as `identifier`, and set the `type` as `FEEDBACK` in the `metadata` array. * To export the TML of an object along with the feedbacks associated with it, set the GUID of the object as `identifier`, set the `type` as `LOGIAL_TABLE` in the `metadata` array, and set `export_with_associated_feedbacks` in `export_options` to true. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_export_a_tml). For more information on feedbacks, see [Feedback Documentation](https://docs.thoughtspot.com/cloud/latest/sage-feedback). * @param exportMetadataTMLRequest */ exportMetadataTMLWithHttpInfo(exportMetadataTMLRequest: ExportMetadataTMLRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. Requires `DATADOWNLOADING` (**Can download Data**) and at least view access to the metadata object. #### Usage guidelines * You can export one or several objects by passing metadata object GUIDs in the `metadata` array. * When exporting TML content for a Liveboard or Answer object, you can set `export_associated` to `true` to retrieve TML content for underlying Worksheets, Tables, or Views, including the GUID of each object within the headers. When `export_associated` is set to `true`, consider retrieving one metadata object at a time. * Set `export_fqns` to `true` to add FQNs of the referenced objects in the TML content. For example, if you send an API request to retrieve TML for a Liveboard and its associated objects, the API returns the TML content with FQNs of the referenced Worksheet. Exporting TML with FQNs is useful if ThoughtSpot has multiple objects with the same name and you want to eliminate ambiguity when importing TML files into ThoughtSpot. It eliminates the need for adding FQNs of the referenced objects manually during the import operation. * To export only the TML of feedbacks associated with an object, set the GUID of the object as `identifier`, and set the `type` as `FEEDBACK` in the `metadata` array. * To export the TML of an object along with the feedbacks associated with it, set the GUID of the object as `identifier`, set the `type` as `LOGIAL_TABLE` in the `metadata` array, and set `export_with_associated_feedbacks` in `export_options` to true. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_export_a_tml). For more information on feedbacks, see [Feedback Documentation](https://docs.thoughtspot.com/cloud/latest/sage-feedback). * @param exportMetadataTMLRequest */ exportMetadataTML(exportMetadataTMLRequest: ExportMetadataTMLRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.1.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. ### **Permissions Required** Requires `DATAMANAGEMENT` (**Can manage data**) and `USERMANAGEMENT` (**Can manage users**) privileges. #### **Usage Guidelines** This API is only applicable for `USER`, `GROUP`, and `ROLES` metadata types. - `batch_offset` Indicates the starting position within the complete dataset from which the API should begin returning objects. Useful for paginating results efficiently. - `batch_size` Specifies the number of objects or items to retrieve in a single request. Helps control response size for better performance. - `edoc_format` Defines the format of the TML content. The exported metadata can be in JSON or YAML format. - `export_dependent` Specifies whether to include dependent metadata objects in the export. Ensures related objects are also retrieved if needed. - `all_orgs_override` Indicates whether the export operation applies across all organizations. Useful for multi-tenant environments where cross-org exports are required. * @param exportMetadataTMLBatchedRequest */ exportMetadataTMLBatchedWithHttpInfo(exportMetadataTMLBatchedRequest: ExportMetadataTMLBatchedRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.1.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. ### **Permissions Required** Requires `DATAMANAGEMENT` (**Can manage data**) and `USERMANAGEMENT` (**Can manage users**) privileges. #### **Usage Guidelines** This API is only applicable for `USER`, `GROUP`, and `ROLES` metadata types. - `batch_offset` Indicates the starting position within the complete dataset from which the API should begin returning objects. Useful for paginating results efficiently. - `batch_size` Specifies the number of objects or items to retrieve in a single request. Helps control response size for better performance. - `edoc_format` Defines the format of the TML content. The exported metadata can be in JSON or YAML format. - `export_dependent` Specifies whether to include dependent metadata objects in the export. Ensures related objects are also retrieved if needed. - `all_orgs_override` Indicates whether the export operation applies across all organizations. Useful for multi-tenant environments where cross-org exports are required. * @param exportMetadataTMLBatchedRequest */ exportMetadataTMLBatched(exportMetadataTMLBatchedRequest: ExportMetadataTMLBatchedRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for an Answer object. Requires at least view access to the Answer object. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales\", \"metadata_type\":\"ANSWER\", \"sql_queries\":[ { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales -test\", \"sql_query\":\"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n \\\"ta_2\\\".\\\"PRODUCTNAME\\\" \\\"ca_2\\\", \\n \\\"ta_1\\\".\\\"STORENAME\\\" \\\"ca_3\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_4\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_5\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_3\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_3\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_PRODUCTS\\\" \\\"ta_2\\\"\\n ON \\\"ta_3\\\".\\\"PRODUCTID\\\" = \\\"ta_2\\\".\\\"PRODUCTID\\\"\\nGROUP BY \\n \\\"ca_1\\\", \\n \\\"ca_2\\\", \\n \\\"ca_3\\\"\\n\" } ] } ``` * @param fetchAnswerSqlQueryRequest */ fetchAnswerSqlQueryWithHttpInfo(fetchAnswerSqlQueryRequest: FetchAnswerSqlQueryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for an Answer object. Requires at least view access to the Answer object. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales\", \"metadata_type\":\"ANSWER\", \"sql_queries\":[ { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales -test\", \"sql_query\":\"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n \\\"ta_2\\\".\\\"PRODUCTNAME\\\" \\\"ca_2\\\", \\n \\\"ta_1\\\".\\\"STORENAME\\\" \\\"ca_3\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_4\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_5\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_3\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_3\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_PRODUCTS\\\" \\\"ta_2\\\"\\n ON \\\"ta_3\\\".\\\"PRODUCTID\\\" = \\\"ta_2\\\".\\\"PRODUCTID\\\"\\nGROUP BY \\n \\\"ca_1\\\", \\n \\\"ca_2\\\", \\n \\\"ca_3\\\"\\n\" } ] } ``` * @param fetchAnswerSqlQueryRequest */ fetchAnswerSqlQuery(fetchAnswerSqlQueryRequest: FetchAnswerSqlQueryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Gets information about the status of the TML async import task scheduled using the `/api/rest/2.0/metadata/tml/async/import` API call. To fetch the task details, specify the ID of the TML async import task. Requires access to the task ID. The API allows users who initiated the asynchronous TML import via `/api/rest/2.0/metadata/tml/async/import` to view the status of their tasks. Users with administration privilege can view the status of all import tasks initiated by the users in their Org. #### Usage guidelines See [TML API Documentation](https://developers.thoughtspot.com/docs/tml#_fetch_status_of_the_tml_import_task) for usage guidelines. * @param fetchAsyncImportTaskStatusRequest */ fetchAsyncImportTaskStatusWithHttpInfo(fetchAsyncImportTaskStatusRequest: FetchAsyncImportTaskStatusRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Gets information about the status of the TML async import task scheduled using the `/api/rest/2.0/metadata/tml/async/import` API call. To fetch the task details, specify the ID of the TML async import task. Requires access to the task ID. The API allows users who initiated the asynchronous TML import via `/api/rest/2.0/metadata/tml/async/import` to view the status of their tasks. Users with administration privilege can view the status of all import tasks initiated by the users in their Org. #### Usage guidelines See [TML API Documentation](https://developers.thoughtspot.com/docs/tml#_fetch_status_of_the_tml_import_task) for usage guidelines. * @param fetchAsyncImportTaskStatusRequest */ fetchAsyncImportTaskStatus(fetchAsyncImportTaskStatusRequest: FetchAsyncImportTaskStatusRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for a Liveboard object and its visualizations. Requires at least view access to the Liveboard object. To get SQL query data for a Liveboard, specify the GUID of the Liveboard. Optionally, you can add an array of visualization GUIDs to retrieve the SQL query data for visualizations in the Liveboard. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\": \"fa68ae91-7588-4136-bacd-d71fb12dda69\", \"metadata_name\": \"Total Sales\", \"metadata_type\": \"LIVEBOARD\", \"sql_queries\": [ { \"metadata_id\": \"b3b6d2b9-089a-490c-8e16-b144650b7843\", \"metadata_name\": \"Total quantity purchased, Total sales by region\", \"sql_query\": \"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_2\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_3\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_2\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_2\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\nGROUP BY \\\"ca_1\\\"\" } ] } ``` * @param fetchLiveboardSqlQueryRequest */ fetchLiveboardSqlQueryWithHttpInfo(fetchLiveboardSqlQueryRequest: FetchLiveboardSqlQueryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for a Liveboard object and its visualizations. Requires at least view access to the Liveboard object. To get SQL query data for a Liveboard, specify the GUID of the Liveboard. Optionally, you can add an array of visualization GUIDs to retrieve the SQL query data for visualizations in the Liveboard. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\": \"fa68ae91-7588-4136-bacd-d71fb12dda69\", \"metadata_name\": \"Total Sales\", \"metadata_type\": \"LIVEBOARD\", \"sql_queries\": [ { \"metadata_id\": \"b3b6d2b9-089a-490c-8e16-b144650b7843\", \"metadata_name\": \"Total quantity purchased, Total sales by region\", \"sql_query\": \"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_2\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_3\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_2\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_2\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\nGROUP BY \\\"ca_1\\\"\" } ] } ``` * @param fetchLiveboardSqlQueryRequest */ fetchLiveboardSqlQuery(fetchLiveboardSqlQueryRequest: FetchLiveboardSqlQueryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Imports [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines * Import all related objects in a single TML Import API call. For example, Tables that use the same Connection object and Worksheets connected to these Tables. * Include the `fqn` property to distinguish objects that have the same name. For example, if you have multiple Connections or Worksheets with the same name on ThoughtSpot and the Connection or Worksheet referenced in your TML file does not have a unique name to distinguish, it may result in invalid object references. Adding `fqn` helps ThoughtSpot differentiate a Table from another with the same name. We recommend [exporting TML with FQNs](#/http/api-endpoints/metadata/export-metadata-tml) and using these during the import operation. * You can upload multiple TML files at a time. If you import a Worksheet along with Liveboards, Answers, and other dependent objects in a single API call, the imported objects will be immediately available for use. When you import only a Worksheet object, it may take some time for the Worksheet to become available in the ThoughtSpot system. Please wait for a few minutes, and then proceed to create an Answer and Liveboard from the newly imported Worksheet. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_import_a_tml). * @param importMetadataTMLRequest */ importMetadataTMLWithHttpInfo(importMetadataTMLRequest: ImportMetadataTMLRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Imports [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines * Import all related objects in a single TML Import API call. For example, Tables that use the same Connection object and Worksheets connected to these Tables. * Include the `fqn` property to distinguish objects that have the same name. For example, if you have multiple Connections or Worksheets with the same name on ThoughtSpot and the Connection or Worksheet referenced in your TML file does not have a unique name to distinguish, it may result in invalid object references. Adding `fqn` helps ThoughtSpot differentiate a Table from another with the same name. We recommend [exporting TML with FQNs](#/http/api-endpoints/metadata/export-metadata-tml) and using these during the import operation. * You can upload multiple TML files at a time. If you import a Worksheet along with Liveboards, Answers, and other dependent objects in a single API call, the imported objects will be immediately available for use. When you import only a Worksheet object, it may take some time for the Worksheet to become available in the ThoughtSpot system. Please wait for a few minutes, and then proceed to create an Answer and Liveboard from the newly imported Worksheet. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_import_a_tml). * @param importMetadataTMLRequest */ importMetadataTML(importMetadataTMLRequest: ImportMetadataTMLRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Schedules a task to import [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. You can use this API endpoint to process TML objects asynchronously when importing TMLs of large and complex metadata objects into ThoughtSpot. Unlike the synchronous import TML operation, the API processes TML data in the background and returns a task ID, which can be used to check the status of the import task via `/api/rest/2.0/metadata/tml/async/status` API endpoint. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege, and edit access to the TML objects. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines See [Async TML API Documentation](https://developers.thoughtspot.com/docs/tml#_import_tml_objects_asynchronously) for usage guidelines. * @param importMetadataTMLAsyncRequest */ importMetadataTMLAsyncWithHttpInfo(importMetadataTMLAsyncRequest: ImportMetadataTMLAsyncRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Schedules a task to import [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. You can use this API endpoint to process TML objects asynchronously when importing TMLs of large and complex metadata objects into ThoughtSpot. Unlike the synchronous import TML operation, the API processes TML data in the background and returns a task ID, which can be used to check the status of the import task via `/api/rest/2.0/metadata/tml/async/status` API endpoint. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege, and edit access to the TML objects. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines See [Async TML API Documentation](https://developers.thoughtspot.com/docs/tml#_import_tml_objects_asynchronously) for usage guidelines. * @param importMetadataTMLAsyncRequest */ importMetadataTMLAsync(importMetadataTMLAsyncRequest: ImportMetadataTMLAsyncRequest, _options?: PromiseConfigurationOptions): Promise; /** * Parameterize fields in metadata objects. Version: 10.9.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/metadata/parameterize-fields](/api/rest/2.0/metadata/parameterize-fields) instead. Allows parameterizing fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be parameterized. For Connection Config, the only supported field name is: * impersonate_user * @param parameterizeMetadataRequest */ parameterizeMetadataWithHttpInfo(parameterizeMetadataRequest: ParameterizeMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Parameterize fields in metadata objects. Version: 10.9.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/metadata/parameterize-fields](/api/rest/2.0/metadata/parameterize-fields) instead. Allows parameterizing fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be parameterized. For Connection Config, the only supported field name is: * impersonate_user * @param parameterizeMetadataRequest */ parameterizeMetadata(parameterizeMetadataRequest: ParameterizeMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Parameterize multiple fields of metadata objects. For example [schemaName, databaseName] for LOGICAL_TABLE. Version: 26.10.0.cl or later Allows parameterizing multiple fields of metadata objects in ThoughtSpot. For example, you can parameterize [schemaName, databaseName] for LOGICAL_TABLE. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table, the field type must be `ATTRIBUTE` and field names can include: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_names specifies the exact properties of the Connection or Connection Config that need to be parameterized. For Connection Config, supported field names include: * impersonate_user You can parameterize multiple fields at once by providing an array of field names. * @param parameterizeMetadataFieldsRequest */ parameterizeMetadataFieldsWithHttpInfo(parameterizeMetadataFieldsRequest: ParameterizeMetadataFieldsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Parameterize multiple fields of metadata objects. For example [schemaName, databaseName] for LOGICAL_TABLE. Version: 26.10.0.cl or later Allows parameterizing multiple fields of metadata objects in ThoughtSpot. For example, you can parameterize [schemaName, databaseName] for LOGICAL_TABLE. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table, the field type must be `ATTRIBUTE` and field names can include: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_names specifies the exact properties of the Connection or Connection Config that need to be parameterized. For Connection Config, supported field names include: * impersonate_user You can parameterize multiple fields at once by providing an array of field names. * @param parameterizeMetadataFieldsRequest */ parameterizeMetadataFields(parameterizeMetadataFieldsRequest: ParameterizeMetadataFieldsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets a list of metadata objects available on the ThoughtSpot system. This API endpoint is available to all users who have view access to the object. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view data for all metadata objects, including users and groups. #### Usage guidelines - To get all metadata objects, send the API request without any attributes. - To get metadata objects of a specific type, set the `type` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE`. - To filter metadata objects within type `LOGICAL_TABLE`, set the `subtypes` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE` & subtypes as `[WORKSHEET]`. - To get a specific metadata object, specify the GUID. - To customize your search and filter the API response, you can use several parameters. You can search for objects created or modified by specific users, by tags applied to the objects, or by using the include parameters like `include_auto_created_objects`, `include_dependent_objects`, `include_headers`, `include_incomplete_objects`, and so on. You can also define sorting options to sort the data retrieved in the API response. - To get discoverable objects when linientmodel is enabled you can use `include_discoverable_objects` as true else false. Default value is true. - For liveboard metadata type, to get the newer format, set the `liveboard_response_format` as V2. Default value is V1. - To retrieve only objects that are published, set the `include_only_published_objects` as true. Default value is false. **NOTE**: `obj_identifier` is supported for the following object types: `LIVEBOARD`, `ANSWER`, `LOGICAL_TABLE`, `LOGICAL_COLUMN`, `CONNECTION`, `USER_GROUP`, `COLLECTION`. The response includes the `metadata_obj_id` field for objects that have a Custom object ID set. **NOTE**: The following parameters support pagination of metadata records: - `tag_identifiers` - `type` - `subtypes` - `created_by_user_identifiers` - `modified_by_user_identifiers` - `owned_by_user_identifiers` - `exclude_objects` - `include_auto_created_objects` - `favorite_object_options` - `include_only_published_objects` **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchMetadataRequest */ searchMetadataWithHttpInfo(searchMetadataRequest: SearchMetadataRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of metadata objects available on the ThoughtSpot system. This API endpoint is available to all users who have view access to the object. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view data for all metadata objects, including users and groups. #### Usage guidelines - To get all metadata objects, send the API request without any attributes. - To get metadata objects of a specific type, set the `type` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE`. - To filter metadata objects within type `LOGICAL_TABLE`, set the `subtypes` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE` & subtypes as `[WORKSHEET]`. - To get a specific metadata object, specify the GUID. - To customize your search and filter the API response, you can use several parameters. You can search for objects created or modified by specific users, by tags applied to the objects, or by using the include parameters like `include_auto_created_objects`, `include_dependent_objects`, `include_headers`, `include_incomplete_objects`, and so on. You can also define sorting options to sort the data retrieved in the API response. - To get discoverable objects when linientmodel is enabled you can use `include_discoverable_objects` as true else false. Default value is true. - For liveboard metadata type, to get the newer format, set the `liveboard_response_format` as V2. Default value is V1. - To retrieve only objects that are published, set the `include_only_published_objects` as true. Default value is false. **NOTE**: `obj_identifier` is supported for the following object types: `LIVEBOARD`, `ANSWER`, `LOGICAL_TABLE`, `LOGICAL_COLUMN`, `CONNECTION`, `USER_GROUP`, `COLLECTION`. The response includes the `metadata_obj_id` field for objects that have a Custom object ID set. **NOTE**: The following parameters support pagination of metadata records: - `tag_identifiers` - `type` - `subtypes` - `created_by_user_identifiers` - `modified_by_user_identifiers` - `owned_by_user_identifiers` - `exclude_objects` - `include_auto_created_objects` - `favorite_object_options` - `include_only_published_objects` **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchMetadataRequest */ searchMetadata(searchMetadataRequest: SearchMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Remove parameterization from fields in metadata objects. Version: 26.10.0.cl or later Allows removing parameterization from fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows unparameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be unparameterized. For Connection Config, the only supported field name is: * impersonate_user ## Restored value The endpoint has two mutually exclusive modes, and the value that is restored differs per mode: * Single-field mode (`field_name` + `value`) restores the supplied `value`. * Bulk mode (`metadata_entries`) ignores `value` and restores the Primary org (`org_id=0`) value of the variable bound to the field, even when the request is made from a secondary org. In bulk mode, a secret Connection field bound to a sensitive variable is restored from the variable\'s Primary-org secret. Bulk mode has no partial success. The request fails with `400` and nothing is changed if any field: * is a non-secret field bound to a sensitive variable, * is bound to a per-principal variable, whose value is user-specific or group-specific, * has a variable that cannot be read, because it is deleted or not visible to you, * has no Primary-org value, or * is a secret field whose value is unavailable from the secure store, which includes the case where the Confidant Vault is disabled, since the restored secret could then not be stored securely. Such a field can still be unparameterized individually in single-field mode with an explicit `value`. Duplicate entries for the same object and field are coalesced. * @param unparameterizeMetadataRequest */ unparameterizeMetadataWithHttpInfo(unparameterizeMetadataRequest: UnparameterizeMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Remove parameterization from fields in metadata objects. Version: 26.10.0.cl or later Allows removing parameterization from fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows unparameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be unparameterized. For Connection Config, the only supported field name is: * impersonate_user ## Restored value The endpoint has two mutually exclusive modes, and the value that is restored differs per mode: * Single-field mode (`field_name` + `value`) restores the supplied `value`. * Bulk mode (`metadata_entries`) ignores `value` and restores the Primary org (`org_id=0`) value of the variable bound to the field, even when the request is made from a secondary org. In bulk mode, a secret Connection field bound to a sensitive variable is restored from the variable\'s Primary-org secret. Bulk mode has no partial success. The request fails with `400` and nothing is changed if any field: * is a non-secret field bound to a sensitive variable, * is bound to a per-principal variable, whose value is user-specific or group-specific, * has a variable that cannot be read, because it is deleted or not visible to you, * has no Primary-org value, or * is a secret field whose value is unavailable from the secure store, which includes the case where the Confidant Vault is disabled, since the restored secret could then not be stored securely. Such a field can still be unparameterized individually in single-field mode with an explicit `value`. Duplicate entries for the same object and field are coalesced. * @param unparameterizeMetadataRequest */ unparameterizeMetadata(unparameterizeMetadataRequest: UnparameterizeMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update header attributes for a given list of header objects. Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **headers_update** - **Description:** List of header objects with their attributes to be updated. Each object contains a list of attributes to be updated in the header. - **Usage:** - You must provide either `identifier` or `obj_identifier`, but not both. Both fields cannot be empty. - When `org_identifier` is set to `-1`, only the `identifier` value is accepted; `obj_identifier` is not allowed. 2. **org_identifier** - **Description:** GUID (Globally Unique Identifier) or name of the organization. - **Usage:** - Leaving this field empty assumes that the changes should be applied to the current organization - Provide `org_guid` or `org_name` to uniquely identify the organization where changes need to be applied. . - Provide `-1` if changes have to be applied across all the org. --- ## Note Currently, this API is enabled only for updating the `obj_identifier` attribute. Only `text` will be allowed in attribute\'s value. ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the update process --- ## Examples ### Only `identifier` is given ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"obj_identifier\": \"\", \"type\": \"LOGICAL_COLUMN\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgGuid\" } ``` ### Only `obj_identifier` is given ```json { \"headers_update\": [ { \"obj_identifier\": \"custom_object_id\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgName\" } ``` ### Executing update for all org `-1` ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` ### Optional `type` is not provided ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` * @param updateMetadataHeaderRequest */ updateMetadataHeaderWithHttpInfo(updateMetadataHeaderRequest: UpdateMetadataHeaderRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update header attributes for a given list of header objects. Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **headers_update** - **Description:** List of header objects with their attributes to be updated. Each object contains a list of attributes to be updated in the header. - **Usage:** - You must provide either `identifier` or `obj_identifier`, but not both. Both fields cannot be empty. - When `org_identifier` is set to `-1`, only the `identifier` value is accepted; `obj_identifier` is not allowed. 2. **org_identifier** - **Description:** GUID (Globally Unique Identifier) or name of the organization. - **Usage:** - Leaving this field empty assumes that the changes should be applied to the current organization - Provide `org_guid` or `org_name` to uniquely identify the organization where changes need to be applied. . - Provide `-1` if changes have to be applied across all the org. --- ## Note Currently, this API is enabled only for updating the `obj_identifier` attribute. Only `text` will be allowed in attribute\'s value. ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the update process --- ## Examples ### Only `identifier` is given ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"obj_identifier\": \"\", \"type\": \"LOGICAL_COLUMN\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgGuid\" } ``` ### Only `obj_identifier` is given ```json { \"headers_update\": [ { \"obj_identifier\": \"custom_object_id\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgName\" } ``` ### Executing update for all org `-1` ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` ### Optional `type` is not provided ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` * @param updateMetadataHeaderRequest */ updateMetadataHeader(updateMetadataHeaderRequest: UpdateMetadataHeaderRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update object IDs for given metadata objects. Version: 10.8.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **metadata** - **Description:** List of metadata objects to update their object IDs. - **Usage:** - Use either `current_obj_id` alone OR use `metadata_identifier` with `type` (when needed). - When using `metadata_identifier`, the `type` field is required if using a name instead of a GUID. - The `new_obj_id` field is always required. --- ## Note This API is specifically designed for updating object IDs of metadata objects. It internally uses the header update mechanism to perform the changes. ## Best Practices 1. **Backup Before Update:** Always export metadata as a backup before initiating the update process. 2. **Validation:** - When using `current_obj_id`, ensure it matches the existing object ID exactly. - When using `metadata_identifier` with a name, ensure the `type` is specified correctly. - Verify that the `new_obj_id` follows your naming conventions and is unique within your system. --- ## Examples ### Using current_obj_id ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with GUID ```json { \"metadata\": [ { \"metadata_identifier\": \"01234567-89ab-cdef-0123-456789abcdef\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with name and type ```json { \"metadata\": [ { \"metadata_identifier\": \"My Answer\", \"type\": \"ANSWER\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Multiple objects update ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id_1\", \"new_obj_id\": \"new_object_id_1\" }, { \"metadata_identifier\": \"My Worksheet\", \"type\": \"LOGICAL_TABLE\", \"new_obj_id\": \"new_object_id_2\" } ] } ``` * @param updateMetadataObjIdRequest */ updateMetadataObjIdWithHttpInfo(updateMetadataObjIdRequest: UpdateMetadataObjIdRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update object IDs for given metadata objects. Version: 10.8.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **metadata** - **Description:** List of metadata objects to update their object IDs. - **Usage:** - Use either `current_obj_id` alone OR use `metadata_identifier` with `type` (when needed). - When using `metadata_identifier`, the `type` field is required if using a name instead of a GUID. - The `new_obj_id` field is always required. --- ## Note This API is specifically designed for updating object IDs of metadata objects. It internally uses the header update mechanism to perform the changes. ## Best Practices 1. **Backup Before Update:** Always export metadata as a backup before initiating the update process. 2. **Validation:** - When using `current_obj_id`, ensure it matches the existing object ID exactly. - When using `metadata_identifier` with a name, ensure the `type` is specified correctly. - Verify that the `new_obj_id` follows your naming conventions and is unique within your system. --- ## Examples ### Using current_obj_id ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with GUID ```json { \"metadata\": [ { \"metadata_identifier\": \"01234567-89ab-cdef-0123-456789abcdef\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with name and type ```json { \"metadata\": [ { \"metadata_identifier\": \"My Answer\", \"type\": \"ANSWER\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Multiple objects update ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id_1\", \"new_obj_id\": \"new_object_id_1\" }, { \"metadata_identifier\": \"My Worksheet\", \"type\": \"LOGICAL_TABLE\", \"new_obj_id\": \"new_object_id_2\" } ] } ``` * @param updateMetadataObjIdRequest */ updateMetadataObjId(updateMetadataObjIdRequest: UpdateMetadataObjIdRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseOrgsApi { private api; constructor(configuration: Configuration, requestFactory?: OrgsApiRequestFactory, responseProcessor?: OrgsApiResponseProcessor); /** * Version: 9.0.0.cl or later Creates an Org object. To use this API, the [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview) feature must be enabled in your cluster. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param createOrgRequest */ createOrgWithHttpInfo(createOrgRequest: CreateOrgRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates an Org object. To use this API, the [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview) feature must be enabled in your cluster. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param createOrgRequest */ createOrg(createOrgRequest: CreateOrgRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Deletes an Org object from the ThoughtSpot system. Requires cluster administration (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. When you delete an Org, all its users and objects created in that Org context are removed. However, if the users in the deleted Org also exists in other Orgs, they are removed only from the deleted Org. * @param orgIdentifier ID or name of the Org */ deleteOrgWithHttpInfo(orgIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Deletes an Org object from the ThoughtSpot system. Requires cluster administration (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. When you delete an Org, all its users and objects created in that Org context are removed. However, if the users in the deleted Org also exists in other Orgs, they are removed only from the deleted Org. * @param orgIdentifier ID or name of the Org */ deleteOrg(orgIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets a list of Orgs configured on the ThoughtSpot system. To get details of a specific Org, specify the Org ID or name. You can also pass parameters such as status, visibility, and user identifiers to get a specific list of Orgs. Results are paginated: `record_size` (default `10`) sets the number of Orgs returned and `record_offset` (default `0`) sets the starting record. To retrieve all Orgs, increase `record_offset` by `record_size` until a page returns fewer than `record_size` Orgs. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param searchOrgsRequest */ searchOrgsWithHttpInfo(searchOrgsRequest: SearchOrgsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of Orgs configured on the ThoughtSpot system. To get details of a specific Org, specify the Org ID or name. You can also pass parameters such as status, visibility, and user identifiers to get a specific list of Orgs. Results are paginated: `record_size` (default `10`) sets the number of Orgs returned and `record_offset` (default `0`) sets the starting record. To retrieve all Orgs, increase `record_offset` by `record_size` until a page returns fewer than `record_size` Orgs. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param searchOrgsRequest */ searchOrgs(searchOrgsRequest: SearchOrgsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates an Org object. You can modify Org properties such as name, description, and user associations. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param orgIdentifier ID or name of the Org * @param updateOrgRequest */ updateOrgWithHttpInfo(orgIdentifier: string, updateOrgRequest: UpdateOrgRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates an Org object. You can modify Org properties such as name, description, and user associations. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param orgIdentifier ID or name of the Org * @param updateOrgRequest */ updateOrg(orgIdentifier: string, updateOrgRequest: UpdateOrgRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseReportsApi { private api; constructor(configuration: Configuration, requestFactory?: ReportsApiRequestFactory, responseProcessor?: ReportsApiResponseProcessor); /** * Version: 9.0.0.cl or later Exports an Answer in the given file format. You can download the Answer data as a PDF, PNG, CSV, or XLSX file. Requires at least view access to the Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV`, `XLSX`, and `PDF` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. For an Answer, the `PDF` export is a table PDF, which is why it falls under `CAN_DOWNLOAD_DETAILED_DATA` rather than `CAN_DOWNLOAD_VISUALS`. #### Usage guidelines In the request body, specify the GUID or name of the Answer and set `file_format`. The default file format is CSV. Use the `type` parameter to specify whether the Answer being exported is a saved Answer (`SAVED`) or a pinned Answer on a Liveboard (`PINNED`). Defaults to `SAVED`. When using `PINNED`, the `metadata_identifier` must be the container id. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * HTML rendering is not supported for PDF exports of Answers with tables. Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * @param exportAnswerReportRequest */ exportAnswerReportWithHttpInfo(exportAnswerReportRequest: ExportAnswerReportRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Exports an Answer in the given file format. You can download the Answer data as a PDF, PNG, CSV, or XLSX file. Requires at least view access to the Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV`, `XLSX`, and `PDF` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. For an Answer, the `PDF` export is a table PDF, which is why it falls under `CAN_DOWNLOAD_DETAILED_DATA` rather than `CAN_DOWNLOAD_VISUALS`. #### Usage guidelines In the request body, specify the GUID or name of the Answer and set `file_format`. The default file format is CSV. Use the `type` parameter to specify whether the Answer being exported is a saved Answer (`SAVED`) or a pinned Answer on a Liveboard (`PINNED`). Defaults to `SAVED`. When using `PINNED`, the `metadata_identifier` must be the container id. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * HTML rendering is not supported for PDF exports of Answers with tables. Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * @param exportAnswerReportRequest */ exportAnswerReport(exportAnswerReportRequest: ExportAnswerReportRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Exports a Liveboard and its visualizations in PDF, PNG, CSV, or XLSX file format. The default `file_format` is CSV. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` and `PDF` require the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To generate a Liveboard report with specific visualizations, add GUIDs or names of the visualizations. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes, including ad hoc changes to visualizations. For more information, see [Liveboard Report API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_liveboard_report_api). * Starting with ThoughtSpot Cloud 10.9.0.cl release, the Liveboard can be exported in the PNG format in the resolution of your choice. To enable this on your instance, contact ThoughtSpot support. When this feature is enabled, the options `include_cover_page`,`include_filter_page` within the `png_options` will not be available for PNG exports. * Starting with the ThoughtSpot Cloud 26.2.0.cl release, * Liveboards can be exported in CSV format. * All visualizations within a Liveboard can be exported as individual CSV files. * When exporting multiple visualizations or the entire Liveboard, the system returns the report as a compressed ZIP file containing the separate CSV files for each visualization. * Liveboards can also be exported in XLSX format. * All selected visualizations are consolidated into a single Excel workbook (.xlsx), with each visualization placed in its own worksheet (tab). * XLSX exports are limited to a maximum of 255 worksheets (tabs) per workbook. * @param exportLiveboardReportRequest */ exportLiveboardReportWithHttpInfo(exportLiveboardReportRequest: ExportLiveboardReportRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Exports a Liveboard and its visualizations in PDF, PNG, CSV, or XLSX file format. The default `file_format` is CSV. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` and `PDF` require the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To generate a Liveboard report with specific visualizations, add GUIDs or names of the visualizations. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes, including ad hoc changes to visualizations. For more information, see [Liveboard Report API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_liveboard_report_api). * Starting with ThoughtSpot Cloud 10.9.0.cl release, the Liveboard can be exported in the PNG format in the resolution of your choice. To enable this on your instance, contact ThoughtSpot support. When this feature is enabled, the options `include_cover_page`,`include_filter_page` within the `png_options` will not be available for PNG exports. * Starting with the ThoughtSpot Cloud 26.2.0.cl release, * Liveboards can be exported in CSV format. * All visualizations within a Liveboard can be exported as individual CSV files. * When exporting multiple visualizations or the entire Liveboard, the system returns the report as a compressed ZIP file containing the separate CSV files for each visualization. * Liveboards can also be exported in XLSX format. * All selected visualizations are consolidated into a single Excel workbook (.xlsx), with each visualization placed in its own worksheet (tab). * XLSX exports are limited to a maximum of 255 worksheets (tabs) per workbook. * @param exportLiveboardReportRequest */ exportLiveboardReport(exportLiveboardReportRequest: ExportLiveboardReportRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseRolesApi { private api; constructor(configuration: Configuration, requestFactory?: RolesApiRequestFactory, responseProcessor?: RolesApiResponseProcessor); /** * Version: 9.5.0.cl or later Creates a Role object in ThoughtSpot. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To create a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param createRoleRequest */ createRoleWithHttpInfo(createRoleRequest: CreateRoleRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.5.0.cl or later Creates a Role object in ThoughtSpot. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To create a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param createRoleRequest */ createRole(createRoleRequest: CreateRoleRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.5.0.cl or later Deletes a Role object from the ThoughtSpot system. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To delete a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. ReadOnly roles cannot be deleted. */ deleteRoleWithHttpInfo(roleIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.5.0.cl or later Deletes a Role object from the ThoughtSpot system. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To delete a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. ReadOnly roles cannot be deleted. */ deleteRole(roleIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.5.0.cl or later Gets a list of Role objects from the ThoughtSpot system. Available if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To search for Roles, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. To get details of a specific Role object, specify the GUID or name. You can also filter the API response based on user group and Org identifiers, privileges assigned to the Role, and deprecation status. **NOTE**: In addition to the GUID and name, `role_identifiers` accepts a Custom object ID if one is configured for the role. The response also includes the `obj_id` field for each role that has one set. * @param searchRolesRequest */ searchRolesWithHttpInfo(searchRolesRequest: SearchRolesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.5.0.cl or later Gets a list of Role objects from the ThoughtSpot system. Available if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To search for Roles, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. To get details of a specific Role object, specify the GUID or name. You can also filter the API response based on user group and Org identifiers, privileges assigned to the Role, and deprecation status. **NOTE**: In addition to the GUID and name, `role_identifiers` accepts a Custom object ID if one is configured for the role. The response also includes the `obj_id` field for each role that has one set. * @param searchRolesRequest */ searchRoles(searchRolesRequest: SearchRolesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.5.0.cl or later Updates the properties of a Role object. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To update a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. * @param updateRoleRequest */ updateRoleWithHttpInfo(roleIdentifier: string, updateRoleRequest: UpdateRoleRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.5.0.cl or later Updates the properties of a Role object. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To update a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. * @param updateRoleRequest */ updateRole(roleIdentifier: string, updateRoleRequest: UpdateRoleRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseSchedulesApi { private api; constructor(configuration: Configuration, requestFactory?: SchedulesApiRequestFactory, responseProcessor?: SchedulesApiResponseProcessor); /** * Create schedule. Version: 9.4.0.cl or later Creates a Liveboard schedule job. Requires at least edit access to Liveboards. To create a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, creating a schedule also requires the download privilege that corresponds to the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines * The description text is mandatory. The description text appears as **Description: ** in the Liveboard schedule email notifications. * For Liveboards with both charts and tables, schedule creation is only supported in PDF and XLS formats. Schedules created in CSV formats for such Liveboards will fail to run. If `PDF` is set as the `file_format`, enable `pdf_options` to get the correct attachment. Not doing so may cause the attachment to be rendered empty. * To include only specific visualizations, specify the visualization GUIDs in the `visualization_identifiers` array. * You can schedule a Liveboard job to run periodically by setting frequency parameters. You can set the schedule to run daily, weekly, monthly or every n minutes or hours. The scheduled job can also be configured to run at a specific time of the day or on specific days of the week or month. Please ensure that when setting the schedule frequency for _minute of the object_, only values that are multiples of 5 are included. * If the `frequency` parameters are defined, you can set the time zone to a value that matches your server\'s time zone. For example, `US/Central`, `Etc/UTC`, `CET`. The default time zone is `America/Los_Angeles`. For more information about Liveboard jobs, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/liveboard-schedule). * @param createScheduleRequest */ createScheduleWithHttpInfo(createScheduleRequest: CreateScheduleRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Create schedule. Version: 9.4.0.cl or later Creates a Liveboard schedule job. Requires at least edit access to Liveboards. To create a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, creating a schedule also requires the download privilege that corresponds to the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines * The description text is mandatory. The description text appears as **Description: ** in the Liveboard schedule email notifications. * For Liveboards with both charts and tables, schedule creation is only supported in PDF and XLS formats. Schedules created in CSV formats for such Liveboards will fail to run. If `PDF` is set as the `file_format`, enable `pdf_options` to get the correct attachment. Not doing so may cause the attachment to be rendered empty. * To include only specific visualizations, specify the visualization GUIDs in the `visualization_identifiers` array. * You can schedule a Liveboard job to run periodically by setting frequency parameters. You can set the schedule to run daily, weekly, monthly or every n minutes or hours. The scheduled job can also be configured to run at a specific time of the day or on specific days of the week or month. Please ensure that when setting the schedule frequency for _minute of the object_, only values that are multiples of 5 are included. * If the `frequency` parameters are defined, you can set the time zone to a value that matches your server\'s time zone. For example, `US/Central`, `Etc/UTC`, `CET`. The default time zone is `America/Los_Angeles`. For more information about Liveboard jobs, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/liveboard-schedule). * @param createScheduleRequest */ createSchedule(createScheduleRequest: CreateScheduleRequest, _options?: PromiseConfigurationOptions): Promise; /** * Deletes a scheduled job. Version: 9.4.0.cl or later Deletes a scheduled Liveboard job. Requires at least edit access to Liveboard or `ADMINISTRATION` (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. * @param scheduleIdentifier Unique ID or name of the scheduled job. */ deleteScheduleWithHttpInfo(scheduleIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Deletes a scheduled job. Version: 9.4.0.cl or later Deletes a scheduled Liveboard job. Requires at least edit access to Liveboard or `ADMINISTRATION` (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. * @param scheduleIdentifier Unique ID or name of the scheduled job. */ deleteSchedule(scheduleIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Search Schedules Version: 9.4.0.cl or later Gets a list of scheduled jobs configured for a Liveboard. To get details of a specific scheduled job, specify the name or GUID of the scheduled job. Requires at least view access to Liveboards. **NOTE**: When filtering schedules by parameters other than `metadata`, set `record_size` to `-1` and `record_offset` to `0` for accurate results. * @param searchSchedulesRequest */ searchSchedulesWithHttpInfo(searchSchedulesRequest: SearchSchedulesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Search Schedules Version: 9.4.0.cl or later Gets a list of scheduled jobs configured for a Liveboard. To get details of a specific scheduled job, specify the name or GUID of the scheduled job. Requires at least view access to Liveboards. **NOTE**: When filtering schedules by parameters other than `metadata`, set `record_size` to `-1` and `record_offset` to `0` for accurate results. * @param searchSchedulesRequest */ searchSchedules(searchSchedulesRequest: SearchSchedulesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update schedule. Version: 9.4.0.cl or later Updates a scheduled Liveboard job. Requires at least edit access to Liveboards. To update a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, changing a schedule\'s `file_format` also requires the download privilege that corresponds to the selected format: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. The API endpoint allows you to pause a scheduled job, change the status of a paused job. You can also edit the recipients list, frequency of the job, format of the file to send to the recipients in email notifications, PDF options, and time zone setting. * @param scheduleIdentifier Unique ID or name of the schedule. * @param updateScheduleRequest */ updateScheduleWithHttpInfo(scheduleIdentifier: string, updateScheduleRequest: UpdateScheduleRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update schedule. Version: 9.4.0.cl or later Updates a scheduled Liveboard job. Requires at least edit access to Liveboards. To update a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, changing a schedule\'s `file_format` also requires the download privilege that corresponds to the selected format: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. The API endpoint allows you to pause a scheduled job, change the status of a paused job. You can also edit the recipients list, frequency of the job, format of the file to send to the recipients in email notifications, PDF options, and time zone setting. * @param scheduleIdentifier Unique ID or name of the schedule. * @param updateScheduleRequest */ updateSchedule(scheduleIdentifier: string, updateScheduleRequest: UpdateScheduleRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseSecurityApi { private api; constructor(configuration: Configuration, requestFactory?: SecurityApiRequestFactory, responseProcessor?: SecurityApiResponseProcessor); /** * Version: 9.0.0.cl or later Transfers the ownership of one or several objects from one user to another. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege and edit access to the objects are required. * @param assignChangeAuthorRequest */ assignChangeAuthorWithHttpInfo(assignChangeAuthorRequest: AssignChangeAuthorRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Transfers the ownership of one or several objects from one user to another. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege and edit access to the objects are required. * @param assignChangeAuthorRequest */ assignChangeAuthor(assignChangeAuthorRequest: AssignChangeAuthorRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Fetches column security rules for specified tables. This 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. #### Usage guidelines - Provide an array of table identifiers using either `identifier` (GUID or name) or `obj_identifier` (object ID) - At least one of `identifier` or `obj_identifier` must be provided for each table - The API returns column security rules for all specified tables - Users must have appropriate permissions to access security rules for the specified tables #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables #### Example request ```json { \"tables\": [ { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\" } ] } ``` #### Response format The API returns an array of `ColumnSecurityRuleResponse` objects wrapped in a `data` field. Each `ColumnSecurityRuleResponse` object contains: - Table information (GUID and object ID) - Array of column security rules with column details, group access, and source table information #### Example response ```json { \"data\": [ { \"guid\": \"table-guid\", \"objId\": \"table-object-id\", \"columnSecurityRules\": [ { \"column\": { \"id\": \"col_123\", \"name\": \"Salary\" }, \"groups\": [ { \"id\": \"group_1\", \"name\": \"HR Department\" } ], \"sourceTableDetails\": { \"id\": \"source-table-guid\", \"name\": \"Employee_Data\" } } ] } ] } ``` * @param fetchColumnSecurityRulesRequest */ fetchColumnSecurityRulesWithHttpInfo(fetchColumnSecurityRulesRequest: FetchColumnSecurityRulesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.12.0.cl or later Fetches column security rules for specified tables. This 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. #### Usage guidelines - Provide an array of table identifiers using either `identifier` (GUID or name) or `obj_identifier` (object ID) - At least one of `identifier` or `obj_identifier` must be provided for each table - The API returns column security rules for all specified tables - Users must have appropriate permissions to access security rules for the specified tables #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables #### Example request ```json { \"tables\": [ { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\" } ] } ``` #### Response format The API returns an array of `ColumnSecurityRuleResponse` objects wrapped in a `data` field. Each `ColumnSecurityRuleResponse` object contains: - Table information (GUID and object ID) - Array of column security rules with column details, group access, and source table information #### Example response ```json { \"data\": [ { \"guid\": \"table-guid\", \"objId\": \"table-object-id\", \"columnSecurityRules\": [ { \"column\": { \"id\": \"col_123\", \"name\": \"Salary\" }, \"groups\": [ { \"id\": \"group_1\", \"name\": \"HR Department\" } ], \"sourceTableDetails\": { \"id\": \"source-table-guid\", \"name\": \"Employee_Data\" } } ] } ] } ``` * @param fetchColumnSecurityRulesRequest */ fetchColumnSecurityRules(fetchColumnSecurityRulesRequest: FetchColumnSecurityRulesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.3.0.cl or later This API fetches the object privileges present for the given list of principals (user or group), on the given set of objects. It supports pagination, which can be enabled and configured using the request parameters. It provides users access to certain features based on privilege based access control. #### Usage guidelines - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals for which you want to retrieve object privilege information in the `principals` array. - Specify the `type` (`LOGICAL_TABLE`) and `identifier` (either GUID or name) of the metadata objects for which you want to retrieve object privilege information in the `metadata` array. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - To control the offset from where principals have to be fetched, use `record_offset`. When `record_offset` is 0, information is fetched from the beginning. - To control the number of principals to be fetched, use `record_size`. Default `record_size` is 20. - Ensure `record_offset` for a subsequent request is one more than the value of `record_size` of the previous request. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ], \"metadata\": [ { \"type\": \"metadata-type-1\", \"identifier\": \"metadata-guid-or-name-1\" }, { \"type\": \"metadata-type-2\", \"identifier\": \"metadata-guid-or-name-2\" } ], \"record_offset\": 0, \"record_size\": 20 } ``` #### Response format The API returns an array of `metadata_object_privileges` objects wrapped in JSON. Each `metadata_object_privileges` object contains: - Metadata information (GUID, name and type) - Array of `principal_object_privilege_info`. - Each `principal_object_privilege_info` contains: - Principal type. All principals of this type are listed as described below. - Array of `principal_object_privileges`. - Each `principal_object_privileges` contains: - Principal information (GUID, name, subtype) - List of applied object level privileges. #### Example response ```json { \"metadata_object_privileges\": [ { \"metadata_id\": \"metadata-guid-1\", \"metadata_name\": \"metadata-name-1\", \"metadata_type\": \"metadata-type-1\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" } ] }, { \"principal_type\": \"principal-type-2\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-3\", \"principal_name\": \"principal-guid-4\", \"principal_sub_type\": \"principal-sub-type-4\", \"object_privileges\": \"[object-privilege-1]\" } ] } ] }, { \"metadata_id\": \"metadata-guid-2\", \"metadata_name\": \"metadata-name-2\", \"metadata_type\": \"metadata-type-2\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-3, object-privilege-4]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-4]\" } ] } ] } ] } ``` * @param fetchObjectPrivilegesRequest */ fetchObjectPrivilegesWithHttpInfo(fetchObjectPrivilegesRequest: FetchObjectPrivilegesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.3.0.cl or later This API fetches the object privileges present for the given list of principals (user or group), on the given set of objects. It supports pagination, which can be enabled and configured using the request parameters. It provides users access to certain features based on privilege based access control. #### Usage guidelines - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals for which you want to retrieve object privilege information in the `principals` array. - Specify the `type` (`LOGICAL_TABLE`) and `identifier` (either GUID or name) of the metadata objects for which you want to retrieve object privilege information in the `metadata` array. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - To control the offset from where principals have to be fetched, use `record_offset`. When `record_offset` is 0, information is fetched from the beginning. - To control the number of principals to be fetched, use `record_size`. Default `record_size` is 20. - Ensure `record_offset` for a subsequent request is one more than the value of `record_size` of the previous request. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ], \"metadata\": [ { \"type\": \"metadata-type-1\", \"identifier\": \"metadata-guid-or-name-1\" }, { \"type\": \"metadata-type-2\", \"identifier\": \"metadata-guid-or-name-2\" } ], \"record_offset\": 0, \"record_size\": 20 } ``` #### Response format The API returns an array of `metadata_object_privileges` objects wrapped in JSON. Each `metadata_object_privileges` object contains: - Metadata information (GUID, name and type) - Array of `principal_object_privilege_info`. - Each `principal_object_privilege_info` contains: - Principal type. All principals of this type are listed as described below. - Array of `principal_object_privileges`. - Each `principal_object_privileges` contains: - Principal information (GUID, name, subtype) - List of applied object level privileges. #### Example response ```json { \"metadata_object_privileges\": [ { \"metadata_id\": \"metadata-guid-1\", \"metadata_name\": \"metadata-name-1\", \"metadata_type\": \"metadata-type-1\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" } ] }, { \"principal_type\": \"principal-type-2\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-3\", \"principal_name\": \"principal-guid-4\", \"principal_sub_type\": \"principal-sub-type-4\", \"object_privileges\": \"[object-privilege-1]\" } ] } ] }, { \"metadata_id\": \"metadata-guid-2\", \"metadata_name\": \"metadata-name-2\", \"metadata_type\": \"metadata-type-2\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-3, object-privilege-4]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-4]\" } ] } ] } ] } ``` * @param fetchObjectPrivilegesRequest */ fetchObjectPrivileges(fetchObjectPrivilegesRequest: FetchObjectPrivilegesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches object permission details for a given principal object such as a user and group. Requires view access to the metadata object. #### Usage guidelines * To get a list of all metadata objects that a user or group can access, specify the `type` and GUID or name of the principal. * To get permission details for a specific object, add the `type` and GUID or name of the metadata object to your API request. Upon successful execution, the API returns a list of metadata objects and permission details for each object. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOfPrincipalsRequest */ fetchPermissionsOfPrincipalsWithHttpInfo(fetchPermissionsOfPrincipalsRequest: FetchPermissionsOfPrincipalsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches object permission details for a given principal object such as a user and group. Requires view access to the metadata object. #### Usage guidelines * To get a list of all metadata objects that a user or group can access, specify the `type` and GUID or name of the principal. * To get permission details for a specific object, add the `type` and GUID or name of the metadata object to your API request. Upon successful execution, the API returns a list of metadata objects and permission details for each object. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOfPrincipalsRequest */ fetchPermissionsOfPrincipals(fetchPermissionsOfPrincipalsRequest: FetchPermissionsOfPrincipalsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches permission details for a given metadata object. Requires view access to the metadata object. #### Usage guidelines * To fetch a list of users and groups for a metadata object, specify `type` and GUID or name of the metadata object. * To get permission details for a specific user or group, add `type` and GUID or name of the principal object to your API request. Upon successful execution, the API returns permission details and principal information for the object specified in the API request. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOnMetadataRequest */ fetchPermissionsOnMetadataWithHttpInfo(fetchPermissionsOnMetadataRequest: FetchPermissionsOnMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches permission details for a given metadata object. Requires view access to the metadata object. #### Usage guidelines * To fetch a list of users and groups for a metadata object, specify `type` and GUID or name of the metadata object. * To get permission details for a specific user or group, add `type` and GUID or name of the principal object to your API request. Upon successful execution, the API returns permission details and principal information for the object specified in the API request. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOnMetadataRequest */ fetchPermissionsOnMetadata(fetchPermissionsOnMetadataRequest: FetchPermissionsOnMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.3.0.cl or later This API allows the addition or deletion of object level privileges for a set of users and groups, on a set of metadata objects. It provides users to access certain features based on privilege based access control. #### Usage guidelines - Specify the `operation`. The supported operations are: `ADD`, `REMOVE`. - Specify the type of the objects on which the object privileges are being provided in `metadata_type`. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - Specify the list of object privilege types in the `object_privilege_types` array. The supported object privilege types are: `SPOTTER_COACHING_PRIVILEGE`. - Specify the identifiers (either GUID or name) for the metadata objects in the `metadata_identifiers` array. - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals to which you want to apply the given operation and given object privileges in the `principals` array. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"operation\": \"operation-type\", \"metadata_type\": \"metadata-type\", \"object_privilege_types\": [\"privilege-type-1\", \"privilege-type-2\"], \"metadata_identifiers\": [\"metadata-guid-or-name-1\", \"metadata-guid-or-name-1\"], \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ] } ``` > ###### Note: > * Only admin users, users with edit access and users with coaching privilege on a given data-model can add or remove principals related to SPOTTER_COACHING_PRIVILEGE * @param manageObjectPrivilegeRequest */ manageObjectPrivilegeWithHttpInfo(manageObjectPrivilegeRequest: ManageObjectPrivilegeRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.3.0.cl or later This API allows the addition or deletion of object level privileges for a set of users and groups, on a set of metadata objects. It provides users to access certain features based on privilege based access control. #### Usage guidelines - Specify the `operation`. The supported operations are: `ADD`, `REMOVE`. - Specify the type of the objects on which the object privileges are being provided in `metadata_type`. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - Specify the list of object privilege types in the `object_privilege_types` array. The supported object privilege types are: `SPOTTER_COACHING_PRIVILEGE`. - Specify the identifiers (either GUID or name) for the metadata objects in the `metadata_identifiers` array. - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals to which you want to apply the given operation and given object privileges in the `principals` array. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"operation\": \"operation-type\", \"metadata_type\": \"metadata-type\", \"object_privilege_types\": [\"privilege-type-1\", \"privilege-type-2\"], \"metadata_identifiers\": [\"metadata-guid-or-name-1\", \"metadata-guid-or-name-1\"], \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ] } ``` > ###### Note: > * Only admin users, users with edit access and users with coaching privilege on a given data-model can add or remove principals related to SPOTTER_COACHING_PRIVILEGE * @param manageObjectPrivilegeRequest */ manageObjectPrivilege(manageObjectPrivilegeRequest: ManageObjectPrivilegeRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.10.0.cl or later Allows publishing metadata objects across organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows publishing the following types of metadata objects: * Liveboards * Answers * Logical Tables This API will essentially share the objects along with it\'s dependencies to the org admins of the orgs to which it is being published. * @param publishMetadataRequest */ publishMetadataWithHttpInfo(publishMetadataRequest: PublishMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Allows publishing metadata objects across organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows publishing the following types of metadata objects: * Liveboards * Answers * Logical Tables This API will essentially share the objects along with it\'s dependencies to the org admins of the orgs to which it is being published. * @param publishMetadataRequest */ publishMetadata(publishMetadataRequest: PublishMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Allows sharing one or several metadata objects with users and groups in ThoughtSpot. Requires edit access to the metadata object. #### Supported metadata objects: * Liveboards * Visualizations * Answers * Models * Views * Connections * Collections #### Object permissions You can provide `READ_ONLY` or `MODIFY` access when sharing an object with another user or group. The `READ_ONLY` permission grants view access to the shared object, whereas `MODIFY` provides edit access. To prevent a user or group from accessing the shared object, specify the GUID or name of the principal and set `shareMode` to `NO_ACCESS`. #### Sharing a visualization * Sharing a visualization implicitly shares the entire Liveboard with the recipient. * Object permissions set for a shared visualization also apply to the Liveboard unless overridden by another API request or via UI. * If email notifications for object sharing are enabled, a notification with a link to the shared visualization will be sent to the recipient’s email address. Although this link opens the shared visualization, recipients can also access other visualizations in the Liveboard. #### Sharing a collection Collections support **dual permissions** that provide fine-grained control: * **Collection permissions** (`share_mode`) - controls access to the collection itself (view, edit, delete the collection) * **Content permissions** (`content_share_mode`) - controls access to objects within the collection (view, edit objects inside) **Default Behavior:** - If only `share_mode` is specified, the content permissions default to `READ_ONLY` (except when `share_mode` is `NO_ACCESS`, then content also gets `NO_ACCESS`) - To give users edit access to collection contents, explicitly set `content_share_mode: \"MODIFY\"` ## Examples The following JSON examples can be copy-pasted as request bodies for the REST v2 API endpoint: ```bash POST /callosum/v1/v2/security/metadata/share Content-Type: application/x-www-form-urlencoded ``` ### Basic collection sharing Share a collection with read-only access: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Sales Reports Collection\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"alice@company.com\" }, \"share_mode\": \"READ_ONLY\" }], \"notification\": { \"message\": \"I\'ve shared the Sales Reports collection with you\", \"notify_on_share\": true } } ``` ### Collection sharing with dual permissions Share a collection with different permissions for the collection vs. its contents: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Marketing Analytics\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"bob@company.com\" }, \"share_mode\": \"MODIFY\", \"content_share_mode\": \"READ_ONLY\" }, { \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Marketing Team\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"READ_ONLY\" }], \"notification\": { \"emails\": [\"bob@company.com\"], \"message\": \"You can edit the collection but content is read-only\", \"enable_custom_url\": false, \"notify_on_share\": true }, \"has_lenient_discoverability\": false } ``` ### Multiple collections sharing Share multiple collections with different users: ```json { \"metadata\": [ { \"type\": \"COLLECTION\", \"identifier\": \"Q4 Reports\" }, { \"type\": \"COLLECTION\", \"identifier\": \"Executive Dashboard Collection\" } ], \"permissions\": [{ \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Executives\" }, \"share_mode\": \"MODIFY\" }, { \"principal\": { \"type\": \"USER\", \"identifier\": \"manager@company.com\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"MODIFY\" }], \"notification\": { \"message\": \"Sharing quarterly collections with leadership team\", \"notify_on_share\": true } } ``` ### Remove collection access Remove access to a collection by setting share_mode to NO_ACCESS: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Confidential Reports\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"former-employee@company.com\" }, \"share_mode\": \"NO_ACCESS\" }], \"notification\": { \"notify_on_share\": false } } ``` ### Collection Permission Scenarios **Scenario 1: Collection Admin** - `share_mode: MODIFY` + `content_share_mode: MODIFY` = Full control over collection and its contents **Scenario 2: Collection Curator** - `share_mode: MODIFY` + `content_share_mode: READ_ONLY` = Can manage collection structure but not edit contents **Scenario 3: Content Editor** - `share_mode: READ_ONLY` + `content_share_mode: MODIFY` = Can edit objects within collection but can\'t change collection itself **Scenario 4: Viewer** - `share_mode: READ_ONLY` + `content_share_mode: READ_ONLY` = View-only access to collection and contents * @param shareMetadataRequest */ shareMetadataWithHttpInfo(shareMetadataRequest: ShareMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Allows sharing one or several metadata objects with users and groups in ThoughtSpot. Requires edit access to the metadata object. #### Supported metadata objects: * Liveboards * Visualizations * Answers * Models * Views * Connections * Collections #### Object permissions You can provide `READ_ONLY` or `MODIFY` access when sharing an object with another user or group. The `READ_ONLY` permission grants view access to the shared object, whereas `MODIFY` provides edit access. To prevent a user or group from accessing the shared object, specify the GUID or name of the principal and set `shareMode` to `NO_ACCESS`. #### Sharing a visualization * Sharing a visualization implicitly shares the entire Liveboard with the recipient. * Object permissions set for a shared visualization also apply to the Liveboard unless overridden by another API request or via UI. * If email notifications for object sharing are enabled, a notification with a link to the shared visualization will be sent to the recipient’s email address. Although this link opens the shared visualization, recipients can also access other visualizations in the Liveboard. #### Sharing a collection Collections support **dual permissions** that provide fine-grained control: * **Collection permissions** (`share_mode`) - controls access to the collection itself (view, edit, delete the collection) * **Content permissions** (`content_share_mode`) - controls access to objects within the collection (view, edit objects inside) **Default Behavior:** - If only `share_mode` is specified, the content permissions default to `READ_ONLY` (except when `share_mode` is `NO_ACCESS`, then content also gets `NO_ACCESS`) - To give users edit access to collection contents, explicitly set `content_share_mode: \"MODIFY\"` ## Examples The following JSON examples can be copy-pasted as request bodies for the REST v2 API endpoint: ```bash POST /callosum/v1/v2/security/metadata/share Content-Type: application/x-www-form-urlencoded ``` ### Basic collection sharing Share a collection with read-only access: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Sales Reports Collection\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"alice@company.com\" }, \"share_mode\": \"READ_ONLY\" }], \"notification\": { \"message\": \"I\'ve shared the Sales Reports collection with you\", \"notify_on_share\": true } } ``` ### Collection sharing with dual permissions Share a collection with different permissions for the collection vs. its contents: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Marketing Analytics\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"bob@company.com\" }, \"share_mode\": \"MODIFY\", \"content_share_mode\": \"READ_ONLY\" }, { \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Marketing Team\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"READ_ONLY\" }], \"notification\": { \"emails\": [\"bob@company.com\"], \"message\": \"You can edit the collection but content is read-only\", \"enable_custom_url\": false, \"notify_on_share\": true }, \"has_lenient_discoverability\": false } ``` ### Multiple collections sharing Share multiple collections with different users: ```json { \"metadata\": [ { \"type\": \"COLLECTION\", \"identifier\": \"Q4 Reports\" }, { \"type\": \"COLLECTION\", \"identifier\": \"Executive Dashboard Collection\" } ], \"permissions\": [{ \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Executives\" }, \"share_mode\": \"MODIFY\" }, { \"principal\": { \"type\": \"USER\", \"identifier\": \"manager@company.com\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"MODIFY\" }], \"notification\": { \"message\": \"Sharing quarterly collections with leadership team\", \"notify_on_share\": true } } ``` ### Remove collection access Remove access to a collection by setting share_mode to NO_ACCESS: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Confidential Reports\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"former-employee@company.com\" }, \"share_mode\": \"NO_ACCESS\" }], \"notification\": { \"notify_on_share\": false } } ``` ### Collection Permission Scenarios **Scenario 1: Collection Admin** - `share_mode: MODIFY` + `content_share_mode: MODIFY` = Full control over collection and its contents **Scenario 2: Collection Curator** - `share_mode: MODIFY` + `content_share_mode: READ_ONLY` = Can manage collection structure but not edit contents **Scenario 3: Content Editor** - `share_mode: READ_ONLY` + `content_share_mode: MODIFY` = Can edit objects within collection but can\'t change collection itself **Scenario 4: Viewer** - `share_mode: READ_ONLY` + `content_share_mode: READ_ONLY` = View-only access to collection and contents * @param shareMetadataRequest */ shareMetadata(shareMetadataRequest: ShareMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.10.0.cl or later Allows unpublishing metadata objects from organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows unpublishing the following types of metadata objects: * Liveboards * Answers * Logical Tables When unpublishing objects, you can: * Include dependencies by setting `include_dependencies` to true - this will unpublish all dependent objects if no other published object is using them * Force unpublish by setting `force` to true - this will break all dependent objects in the unpublished organizations * @param unpublishMetadataRequest */ unpublishMetadataWithHttpInfo(unpublishMetadataRequest: UnpublishMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Allows unpublishing metadata objects from organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows unpublishing the following types of metadata objects: * Liveboards * Answers * Logical Tables When unpublishing objects, you can: * Include dependencies by setting `include_dependencies` to true - this will unpublish all dependent objects if no other published object is using them * Force unpublish by setting `force` to true - this will break all dependent objects in the unpublished organizations * @param unpublishMetadataRequest */ unpublishMetadata(unpublishMetadataRequest: UnpublishMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Creates, updates, or deletes column security rules for specified tables. This 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. #### Usage guidelines - Provide table identifier using either `identifier` (GUID or name) or `obj_identifier` (object ID) - Use `clear_csr: true` to remove all column security rules from the table - For each column, specify the security rule using `column_security_rules` array - Use `is_unsecured: true` to mark a specific column as unprotected - Use `group_access` operations to manage group associations: - `ADD`: Add groups to the column\'s access list - `REMOVE`: Remove groups from the column\'s access list - `REPLACE`: Replace all existing groups with the specified groups #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data (if RBAC is disabled) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables (if RBAC is enabled) #### Example request ```json { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\", \"clear_csr\": false, \"column_security_rules\": [ { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"ADD\", \"group_identifiers\": [\"hr_group_id\", \"hr_group_name\", \"finance_group_id\"] } ] }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": true }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"REPLACE\", \"group_identifiers\": [\"management_group_id\", \"management_group_name\"] } ] } ] } ``` #### Request Body Schema - `identifier` (string, optional): GUID or name of the table for which we want to create column security rules - `obj_identifier` (string, optional): The object ID of the table - `clear_csr` (boolean, optional): If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed - `column_security_rules` (array of objects, required): An array where each object defines the security rule for a specific column Each column security rule object contains: - `column_identifier` (string, required): Column identifier (col_id or name) - `is_unsecured` (boolean, optional): If true, the column will be marked as unprotected and all groups associated with it will be removed - `group_access` (array of objects, optional): Array of group operation objects Each group operation object contains: - `operation` (string, required): Operation type - ADD, REMOVE, or REPLACE - `group_identifiers` (array of strings, required): Array of group identifiers (name or GUID) on which the operation will be performed #### Response This API does not return any response body. A successful operation returns HTTP 200 status code. #### Operation Types - **ADD**: Adds the specified groups to the column\'s access list - **REMOVE**: Removes the specified groups from the column\'s access list - **REPLACE**: Replaces all existing groups with the specified groups * @param updateColumnSecurityRulesRequest */ updateColumnSecurityRulesWithHttpInfo(updateColumnSecurityRulesRequest: UpdateColumnSecurityRulesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Creates, updates, or deletes column security rules for specified tables. This 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. #### Usage guidelines - Provide table identifier using either `identifier` (GUID or name) or `obj_identifier` (object ID) - Use `clear_csr: true` to remove all column security rules from the table - For each column, specify the security rule using `column_security_rules` array - Use `is_unsecured: true` to mark a specific column as unprotected - Use `group_access` operations to manage group associations: - `ADD`: Add groups to the column\'s access list - `REMOVE`: Remove groups from the column\'s access list - `REPLACE`: Replace all existing groups with the specified groups #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data (if RBAC is disabled) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables (if RBAC is enabled) #### Example request ```json { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\", \"clear_csr\": false, \"column_security_rules\": [ { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"ADD\", \"group_identifiers\": [\"hr_group_id\", \"hr_group_name\", \"finance_group_id\"] } ] }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": true }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"REPLACE\", \"group_identifiers\": [\"management_group_id\", \"management_group_name\"] } ] } ] } ``` #### Request Body Schema - `identifier` (string, optional): GUID or name of the table for which we want to create column security rules - `obj_identifier` (string, optional): The object ID of the table - `clear_csr` (boolean, optional): If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed - `column_security_rules` (array of objects, required): An array where each object defines the security rule for a specific column Each column security rule object contains: - `column_identifier` (string, required): Column identifier (col_id or name) - `is_unsecured` (boolean, optional): If true, the column will be marked as unprotected and all groups associated with it will be removed - `group_access` (array of objects, optional): Array of group operation objects Each group operation object contains: - `operation` (string, required): Operation type - ADD, REMOVE, or REPLACE - `group_identifiers` (array of strings, required): Array of group identifiers (name or GUID) on which the operation will be performed #### Response This API does not return any response body. A successful operation returns HTTP 200 status code. #### Operation Types - **ADD**: Adds the specified groups to the column\'s access list - **REMOVE**: Removes the specified groups from the column\'s access list - **REPLACE**: Replaces all existing groups with the specified groups * @param updateColumnSecurityRulesRequest */ updateColumnSecurityRules(updateColumnSecurityRulesRequest: UpdateColumnSecurityRulesRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseSemanticIntegrationsApi { private api; constructor(configuration: Configuration, requestFactory?: SemanticIntegrationsApiRequestFactory, responseProcessor?: SemanticIntegrationsApiResponseProcessor); /** * Version: 26.9.0.cl or later Creates a new semantic integration in ThoughtSpot from a CDW semantic view. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About create semantic integration A semantic integration imports an externally defined semantic view from a Cloud Data Warehouse (CDW) into ThoughtSpot. The API resolves the source semantic view from the specified `connection_identifier`, `database_name`, `schema_name`, and `semantic_view_name`, generates a ThoughtSpot model from it, and returns the model GUID along with a per-formula import report (`semantic_report`) summarizing how many formulas were successfully imported, failed, or skipped. - `connection_identifier`, `name`, `database_name`, `schema_name`, `semantic_view_name`, and `type` are required. - `name` must be unique across the user\'s organization. The integration\'s display name is also used as the generated model name. - Supported `type` values are listed in the `SemanticIntegrationType` enum. - The response includes a `semantic_report.summary` with `total`, `imported`, `failed`, and `skipped` counts, and a `formulas` array with the per-formula translation details. > **Note:** Creating a semantic integration using a YAML file upload is not supported through the public API. * @param createSemanticIntegrationRequest */ createSemanticIntegrationWithHttpInfo(createSemanticIntegrationRequest: CreateSemanticIntegrationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.9.0.cl or later Creates a new semantic integration in ThoughtSpot from a CDW semantic view. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About create semantic integration A semantic integration imports an externally defined semantic view from a Cloud Data Warehouse (CDW) into ThoughtSpot. The API resolves the source semantic view from the specified `connection_identifier`, `database_name`, `schema_name`, and `semantic_view_name`, generates a ThoughtSpot model from it, and returns the model GUID along with a per-formula import report (`semantic_report`) summarizing how many formulas were successfully imported, failed, or skipped. - `connection_identifier`, `name`, `database_name`, `schema_name`, `semantic_view_name`, and `type` are required. - `name` must be unique across the user\'s organization. The integration\'s display name is also used as the generated model name. - Supported `type` values are listed in the `SemanticIntegrationType` enum. - The response includes a `semantic_report.summary` with `total`, `imported`, `failed`, and `skipped` counts, and a `formulas` array with the per-formula translation details. > **Note:** Creating a semantic integration using a YAML file upload is not supported through the public API. * @param createSemanticIntegrationRequest */ createSemanticIntegration(createSemanticIntegrationRequest: CreateSemanticIntegrationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.9.0.cl or later Deletes a semantic integration and its associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About delete semantic integration Removes the specified semantic integration and its generated ThoughtSpot model from the system. - `semantic_integration_identifier` is the GUID or name of the integration to delete. - Deletions cannot be undone. Re-import the integration with `createSemanticIntegration` if needed. * @param semanticIntegrationIdentifier ID or name of the semantic integration to delete. */ deleteSemanticIntegrationWithHttpInfo(semanticIntegrationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.9.0.cl or later Deletes a semantic integration and its associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About delete semantic integration Removes the specified semantic integration and its generated ThoughtSpot model from the system. - `semantic_integration_identifier` is the GUID or name of the integration to delete. - Deletions cannot be undone. Re-import the integration with `createSemanticIntegration` if needed. * @param semanticIntegrationIdentifier ID or name of the semantic integration to delete. */ deleteSemanticIntegration(semanticIntegrationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.9.0.cl or later Imports semantic updates for an existing semantic integration from its CDW source and refreshes the associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About import semantic integration Re-imports the semantic view from the CDW for the specified integration and rebuilds the corresponding ThoughtSpot model. Use this after the source semantic view has been updated in the CDW (added, removed, or modified formulas, dimensions, or measures) to bring the ThoughtSpot model back in line. - `semantic_integration_identifier` is the GUID or name of the integration to import updates for. - Import preserves the integration\'s GUID, name, and `model_id`; only the underlying formula set is refreshed. - The response includes the same `semantic_report` as create, with an additional `change_status` per formula indicating whether each formula is `NEW`, `UPDATED`, or `UNCHANGED` since the previous import. > **Note:** Importing updates for a semantic integration that was created using the file upload option in the ThoughtSpot UI is not supported. To refresh a file-upload-based integration, use the ThoughtSpot UI. * @param semanticIntegrationIdentifier ID or name of the semantic integration to import updates for. */ importSemanticIntegrationWithHttpInfo(semanticIntegrationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.9.0.cl or later Imports semantic updates for an existing semantic integration from its CDW source and refreshes the associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About import semantic integration Re-imports the semantic view from the CDW for the specified integration and rebuilds the corresponding ThoughtSpot model. Use this after the source semantic view has been updated in the CDW (added, removed, or modified formulas, dimensions, or measures) to bring the ThoughtSpot model back in line. - `semantic_integration_identifier` is the GUID or name of the integration to import updates for. - Import preserves the integration\'s GUID, name, and `model_id`; only the underlying formula set is refreshed. - The response includes the same `semantic_report` as create, with an additional `change_status` per formula indicating whether each formula is `NEW`, `UPDATED`, or `UNCHANGED` since the previous import. > **Note:** Importing updates for a semantic integration that was created using the file upload option in the ThoughtSpot UI is not supported. To refresh a file-upload-based integration, use the ThoughtSpot UI. * @param semanticIntegrationIdentifier ID or name of the semantic integration to import updates for. */ importSemanticIntegration(semanticIntegrationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.9.0.cl or later Searches and lists semantic integrations available to the authenticated user in the current organization, with optional filters, sort, and pagination. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About search semantic integrations Returns a paginated batch of semantic integrations, each with its identifier, name, description, source connection, generated model identifier, author, creation/modification timestamps, and associated tags. Use the filters to narrow results by author, connection, tag, or name pattern. - `pattern` matches the integration name as a case-insensitive substring. - `author_identifiers` and `connection_identifiers` accept either GUIDs or names. - `sort_options.field_name` defaults to `MODIFIED_TIME`; set `sort_options.order` to `ASC` or `DESC` to control sort direction. - `record_offset` and `record_size` control pagination. Use `record_size: 0` to return all matching records in a single response. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchSemanticIntegrationsRequest */ searchSemanticIntegrationsWithHttpInfo(searchSemanticIntegrationsRequest: SearchSemanticIntegrationsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.9.0.cl or later Searches and lists semantic integrations available to the authenticated user in the current organization, with optional filters, sort, and pagination. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About search semantic integrations Returns a paginated batch of semantic integrations, each with its identifier, name, description, source connection, generated model identifier, author, creation/modification timestamps, and associated tags. Use the filters to narrow results by author, connection, tag, or name pattern. - `pattern` matches the integration name as a case-insensitive substring. - `author_identifiers` and `connection_identifiers` accept either GUIDs or names. - `sort_options.field_name` defaults to `MODIFIED_TIME`; set `sort_options.order` to `ASC` or `DESC` to control sort direction. - `record_offset` and `record_size` control pagination. Use `record_size: 0` to return all matching records in a single response. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchSemanticIntegrationsRequest */ searchSemanticIntegrations(searchSemanticIntegrationsRequest: SearchSemanticIntegrationsRequest, _options?: PromiseConfigurationOptions): Promise>; } declare class PromiseStyleCustomizationApi { private api; constructor(configuration: Configuration, requestFactory?: StyleCustomizationApiRequestFactory, responseProcessor?: StyleCustomizationApiResponseProcessor); /** * Version: 26.7.0.cl or later Deletes one or more custom fonts from the cluster-level or org-level font library. If a deleted font is assigned to visualization areas, those assignments automatically fallback to the cluster/system default font. The response lists all affected areas where the font was explicitly set. Note: dry_run defaults to true. To actually delete fonts, you must explicitly pass dry_run: false. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Provide one or more font UUIDs or names in `font_identifiers`. - Set `scope` to `CLUSTER` to delete from the cluster-level library. Set `scope` to `ORG` (default) to delete from the authenticated user\'s org library. - Use `dry_run: true` to preview which visualization areas would be affected without actually deleting the font. The response lists affected assignments; no changes are applied. - Deletions cannot be undone. Re-upload the font file using `uploadStyleFont` if needed. * @param deleteStyleFontsRequest */ deleteStyleFontsWithHttpInfo(deleteStyleFontsRequest: DeleteStyleFontsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Deletes one or more custom fonts from the cluster-level or org-level font library. If a deleted font is assigned to visualization areas, those assignments automatically fallback to the cluster/system default font. The response lists all affected areas where the font was explicitly set. Note: dry_run defaults to true. To actually delete fonts, you must explicitly pass dry_run: false. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Provide one or more font UUIDs or names in `font_identifiers`. - Set `scope` to `CLUSTER` to delete from the cluster-level library. Set `scope` to `ORG` (default) to delete from the authenticated user\'s org library. - Use `dry_run: true` to preview which visualization areas would be affected without actually deleting the font. The response lists affected assignments; no changes are applied. - Deletions cannot be undone. Re-upload the font file using `uploadStyleFont` if needed. * @param deleteStyleFontsRequest */ deleteStyleFonts(deleteStyleFontsRequest: DeleteStyleFontsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Downloads the active logos (default and wide slots) at the requested scope as a single ZIP archive containing both logo image files. If no custom logo has been uploaded at the ORG scope, the archive contains the resolved logo falling through from the cluster. If no cluster logo has been uploaded, no file is returned. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to download cluster-level logos. - Set `scope` to `ORG` (default) to download logos for the authenticated user\'s org. - The response is a ZIP archive (`application/zip`). Save the response body directly to a `.zip` file. - The archive always contains two files — one for the DEFAULT slot and one for the WIDE slot — even if no custom logo is set at the requested scope. * @param exportStyleLogosRequest * @param [accept] */ exportStyleLogosWithHttpInfo(exportStyleLogosRequest: ExportStyleLogosRequest, accept?: 'application/zip', _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Downloads the active logos (default and wide slots) at the requested scope as a single ZIP archive containing both logo image files. If no custom logo has been uploaded at the ORG scope, the archive contains the resolved logo falling through from the cluster. If no cluster logo has been uploaded, no file is returned. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to download cluster-level logos. - Set `scope` to `ORG` (default) to download logos for the authenticated user\'s org. - The response is a ZIP archive (`application/zip`). Save the response body directly to a `.zip` file. - The archive always contains two files — one for the DEFAULT slot and one for the WIDE slot — even if no custom logo is set at the requested scope. * @param exportStyleLogosRequest * @param [accept] */ exportStyleLogos(exportStyleLogosRequest: ExportStyleLogosRequest, accept?: 'application/zip', _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Retrieves style preferences at cluster level or for the authenticated user\'s org. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to retrieve cluster-level style defaults. - Set `scope` to `ORG` (default) to retrieve preferences for the authenticated user\'s org. - Each field in the response includes an `is_overridden` flag indicating whether the value was explicitly set at the requested scope or inherited from a parent scope (cluster or system default). - `app_color_theme` (_available from 26.10.0.cl_) describes the same underlying color as `navigation_panel`, in a different form: `navigation_panel` uses the `DARK`/`TWO_TONE`/`CUSTOM` theme modes, while `app_color_theme` gives the brand color and how it is applied (`brand_color`, `apply_as_top_nav_color`). They never disagree, so use whichever your integration already reads. `app_color_theme` is returned only when the app color theme is enabled on the cluster; `navigation_panel` is always returned. * @param searchStyleCustomizationsRequest */ searchStyleCustomizationsWithHttpInfo(searchStyleCustomizationsRequest: SearchStyleCustomizationsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.7.0.cl or later Retrieves style preferences at cluster level or for the authenticated user\'s org. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to retrieve cluster-level style defaults. - Set `scope` to `ORG` (default) to retrieve preferences for the authenticated user\'s org. - Each field in the response includes an `is_overridden` flag indicating whether the value was explicitly set at the requested scope or inherited from a parent scope (cluster or system default). - `app_color_theme` (_available from 26.10.0.cl_) describes the same underlying color as `navigation_panel`, in a different form: `navigation_panel` uses the `DARK`/`TWO_TONE`/`CUSTOM` theme modes, while `app_color_theme` gives the brand color and how it is applied (`brand_color`, `apply_as_top_nav_color`). They never disagree, so use whichever your integration already reads. `app_color_theme` is returned only when the app color theme is enabled on the cluster; `navigation_panel` is always returned. * @param searchStyleCustomizationsRequest */ searchStyleCustomizations(searchStyleCustomizationsRequest: SearchStyleCustomizationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Returns custom fonts from the cluster-level or org-level font library. Omitting all filter fields returns all fonts in the target scope. When `include_font_assignments` is `true`, the response includes only the visualization areas explicitly assigned to each font. For cluster-scoped fonts, `org` is returned as `null`. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to search the cluster-level library. Set `scope` to `ORG` (default) to search the authenticated user\'s org library. - Use `font_identifier` to look up a specific font by UUID or name. - Use `name_pattern` for partial, case-insensitive name matching. - Set `include_font_assignments` to `true` to include visualization areas this font is currently assigned to. Defaults to `false`. * @param searchStyleFontsRequest */ searchStyleFontsWithHttpInfo(searchStyleFontsRequest: SearchStyleFontsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.7.0.cl or later Returns custom fonts from the cluster-level or org-level font library. Omitting all filter fields returns all fonts in the target scope. When `include_font_assignments` is `true`, the response includes only the visualization areas explicitly assigned to each font. For cluster-scoped fonts, `org` is returned as `null`. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to search the cluster-level library. Set `scope` to `ORG` (default) to search the authenticated user\'s org library. - Use `font_identifier` to look up a specific font by UUID or name. - Use `name_pattern` for partial, case-insensitive name matching. - Set `include_font_assignments` to `true` to include visualization areas this font is currently assigned to. Defaults to `false`. * @param searchStyleFontsRequest */ searchStyleFonts(searchStyleFontsRequest: SearchStyleFontsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Updates style preferences at cluster level or for the authenticated user\'s org, including navigation panel color, chart color palette, embedded footer text, logo, and font assignments per visualization area. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Resetting an Org-level preference falls back to Cluster-level preference, which on reset falls back to system defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines Two operations are supported via the `operation` field: - **REPLACE** (default): Applies the fields provided in the request. Omitted fields remain unchanged. - **RESET**: Reverts specific fields to defaults. Specify which fields to reset using `reset_options.style` (for style fields) and `reset_options.visualization_areas` (for font assignments). Fields not listed in `reset_options` are not affected. #### Logo upload Logo files are uploaded as binary fields using `multipart/form-data`: - `default_logo`: Square app icon and favicon. Recommended size: 140×140 px. Accepted formats: PNG, JPG. - `wide_logo`: Horizontal top nav bar logo. Recommended size: 230×45 px. Accepted formats: PNG, JPG. To reset a logo to the default, use `operation: RESET` with `reset_options.style` set to `DEFAULT_LOGO` or `WIDE_LOGO`. #### Navigation panel color Set `navigation_panel.theme` to one of: - `DARK`: Default dark theme. - `TWO_TONE`: Dual-tone panel style. - `CUSTOM`: User-defined color. Provide `navigation_panel.base_color` as a 6-digit hex string (e.g. `#2359B6`). #### App color theme `app_color_theme` (_available from 26.10.0.cl_) sets the same underlying color as `navigation_panel`, expressed as a brand color plus how it is applied. Provide exactly one of `navigation_panel` or `app_color_theme` per request; providing both returns an error. `app_color_theme` is supported only when the app color theme is enabled on the cluster; using it otherwise returns an error. - `brand_color`: Brand color as a 6-digit hex string (e.g. `#2359B6`). Omit to leave the stored color unchanged. To clear it, use `operation: RESET` with `reset_options.style` set to `APP_COLOR_THEME`. - `apply_as_top_nav_color`: Whether the brand color is painted on the top navigation bar literally, instead of the surface shade generated from it. Omit to leave the stored choice unchanged. `brand_color` and `apply_as_top_nav_color` may be set independently in the same request. #### Chart color palette Provide exactly 8 color entries in `chart_color_palette.colors`. Each entry requires a `primary` hex color. If `secondary` shades are omitted, the server auto-generates 4 shades from the primary color. #### Font assignments Specify `visualization_fonts.chart_visualization_fonts`, `visualization_fonts.table_visualization_fonts`, and `visualization_fonts.advanced_chart_visualization_fonts` to assign custom fonts to specific visualization areas. Only provide the areas you want to update; omitted areas remain unchanged. * @param scope Scope at which to apply the preferences. CLUSTER sets cluster-level defaults for all orgs. ORG applies to the authenticated user\\\'s org. * @param [operation] Operation to perform. REPLACE (default) applies the provided fields and leaves omitted fields unchanged. RESET reverts fields listed in reset_options to defaults. * @param [resetOptions] Fields to reset when operation is RESET. Specify style fields and visualization areas to revert to defaults. * @param [navigationPanel] Navigation panel color. Provide theme and, when theme is CUSTOM, also provide base_color. * @param [chartColorPalette] Chart color palette. When provided with operation REPLACE, exactly 8 color entries must be specified in colors. * @param [embeddedFooterText] Custom footer text for the embedded application. An empty string clears the footer. * @param [visualizationFonts] Font assignments per visualization area. Provide only the areas to update; omitted areas remain unchanged. * @param [defaultLogo] Binary image for the DEFAULT logo slot (square app icon and favicon; recommended 140x140 px). Accepted formats: PNG, JPG. * @param [wideLogo] Binary image for the WIDE logo slot (horizontal top nav bar logo; recommended 230x45 px). Accepted formats: PNG, JPG. */ updateStyleCustomizationWithHttpInfo(scope: string, operation?: string, resetOptions?: StyleResetOptionsInput, navigationPanel?: NavigationPanelInput, chartColorPalette?: StyleColorPaletteInput, embeddedFooterText?: string, visualizationFonts?: VisualizationFontsInput, defaultLogo?: HttpFile, wideLogo?: HttpFile, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Updates style preferences at cluster level or for the authenticated user\'s org, including navigation panel color, chart color palette, embedded footer text, logo, and font assignments per visualization area. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Resetting an Org-level preference falls back to Cluster-level preference, which on reset falls back to system defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines Two operations are supported via the `operation` field: - **REPLACE** (default): Applies the fields provided in the request. Omitted fields remain unchanged. - **RESET**: Reverts specific fields to defaults. Specify which fields to reset using `reset_options.style` (for style fields) and `reset_options.visualization_areas` (for font assignments). Fields not listed in `reset_options` are not affected. #### Logo upload Logo files are uploaded as binary fields using `multipart/form-data`: - `default_logo`: Square app icon and favicon. Recommended size: 140×140 px. Accepted formats: PNG, JPG. - `wide_logo`: Horizontal top nav bar logo. Recommended size: 230×45 px. Accepted formats: PNG, JPG. To reset a logo to the default, use `operation: RESET` with `reset_options.style` set to `DEFAULT_LOGO` or `WIDE_LOGO`. #### Navigation panel color Set `navigation_panel.theme` to one of: - `DARK`: Default dark theme. - `TWO_TONE`: Dual-tone panel style. - `CUSTOM`: User-defined color. Provide `navigation_panel.base_color` as a 6-digit hex string (e.g. `#2359B6`). #### App color theme `app_color_theme` (_available from 26.10.0.cl_) sets the same underlying color as `navigation_panel`, expressed as a brand color plus how it is applied. Provide exactly one of `navigation_panel` or `app_color_theme` per request; providing both returns an error. `app_color_theme` is supported only when the app color theme is enabled on the cluster; using it otherwise returns an error. - `brand_color`: Brand color as a 6-digit hex string (e.g. `#2359B6`). Omit to leave the stored color unchanged. To clear it, use `operation: RESET` with `reset_options.style` set to `APP_COLOR_THEME`. - `apply_as_top_nav_color`: Whether the brand color is painted on the top navigation bar literally, instead of the surface shade generated from it. Omit to leave the stored choice unchanged. `brand_color` and `apply_as_top_nav_color` may be set independently in the same request. #### Chart color palette Provide exactly 8 color entries in `chart_color_palette.colors`. Each entry requires a `primary` hex color. If `secondary` shades are omitted, the server auto-generates 4 shades from the primary color. #### Font assignments Specify `visualization_fonts.chart_visualization_fonts`, `visualization_fonts.table_visualization_fonts`, and `visualization_fonts.advanced_chart_visualization_fonts` to assign custom fonts to specific visualization areas. Only provide the areas you want to update; omitted areas remain unchanged. * @param scope Scope at which to apply the preferences. CLUSTER sets cluster-level defaults for all orgs. ORG applies to the authenticated user\\\'s org. * @param [operation] Operation to perform. REPLACE (default) applies the provided fields and leaves omitted fields unchanged. RESET reverts fields listed in reset_options to defaults. * @param [resetOptions] Fields to reset when operation is RESET. Specify style fields and visualization areas to revert to defaults. * @param [navigationPanel] Navigation panel color. Provide theme and, when theme is CUSTOM, also provide base_color. * @param [chartColorPalette] Chart color palette. When provided with operation REPLACE, exactly 8 color entries must be specified in colors. * @param [embeddedFooterText] Custom footer text for the embedded application. An empty string clears the footer. * @param [visualizationFonts] Font assignments per visualization area. Provide only the areas to update; omitted areas remain unchanged. * @param [defaultLogo] Binary image for the DEFAULT logo slot (square app icon and favicon; recommended 140x140 px). Accepted formats: PNG, JPG. * @param [wideLogo] Binary image for the WIDE logo slot (horizontal top nav bar logo; recommended 230x45 px). Accepted formats: PNG, JPG. */ updateStyleCustomization(scope: string, operation?: string, resetOptions?: StyleResetOptionsInput, navigationPanel?: NavigationPanelInput, chartColorPalette?: StyleColorPaletteInput, embeddedFooterText?: string, visualizationFonts?: VisualizationFontsInput, defaultLogo?: HttpFile, wideLogo?: HttpFile, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Updates the metadata of an existing custom font in the cluster-level or org-level font library. Only the fields provided in the request are modified; omitted fields remain unchanged. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Identify the font using `font_identifier` (UUID or name). - Set `scope` to `CLUSTER` to target the cluster-level library. Set `scope` to `ORG` (default) to target the authenticated user\'s org library. - To replace the font file itself (WOFF/WOFF2 binary), delete the existing font and re-upload using `uploadStyleFont`. - `color` must be a valid 6-digit hex string (e.g. `#333333`) if provided. * @param fontIdentifier UUID or name of the font to update. * @param updateStyleFontRequest */ updateStyleFontWithHttpInfo(fontIdentifier: string, updateStyleFontRequest: UpdateStyleFontRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Updates the metadata of an existing custom font in the cluster-level or org-level font library. Only the fields provided in the request are modified; omitted fields remain unchanged. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Identify the font using `font_identifier` (UUID or name). - Set `scope` to `CLUSTER` to target the cluster-level library. Set `scope` to `ORG` (default) to target the authenticated user\'s org library. - To replace the font file itself (WOFF/WOFF2 binary), delete the existing font and re-upload using `uploadStyleFont`. - `color` must be a valid 6-digit hex string (e.g. `#333333`) if provided. * @param fontIdentifier UUID or name of the font to update. * @param updateStyleFontRequest */ updateStyleFont(fontIdentifier: string, updateStyleFontRequest: UpdateStyleFontRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Uploads a custom font to the cluster-level or org-level font library. Cluster-level fonts are available as defaults for all orgs. Org-level fonts are only available within that org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Only **WOFF** and **WOFF2** font formats are accepted. TTF and OTF files are rejected with an error. - Set `scope` to `CLUSTER` to upload to the cluster-level library. Set `scope` to `ORG` (default) to upload to the authenticated user\'s org library. - `weight` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `LIGHT`, `BOLD`. - `style` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `ITALIC`, `OBLIQUE`. - `color` defaults to `#000000` (black) if omitted. Provide as a 6-digit hex string (e.g. `#333333`). - The uploaded font can be assigned to visualization areas using the `updateStyleCustomization` endpoint. * @param name Display name for the font (e.g. \\\"Acme Sans\\\"). * @param fileContent Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats are accepted; TTF and OTF are rejected. The file is validated on upload. * @param [scope] Scope of the font library to upload to. CLUSTER uploads to the cluster-level library, making the font available as a default for all orgs. ORG uploads to the authenticated user\\\'s org library. Defaults to ORG if omitted. * @param [weight] Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to NORMAL if omitted. * @param [style] Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults to NORMAL if omitted. * @param [color] Color of the font as a 6-digit hex string (e.g. \\\"#333333\\\"). Defaults to #000000 (black) if omitted. Returns an error if the value is malformed. */ uploadStyleFontWithHttpInfo(name: string, fileContent: HttpFile, scope?: string, weight?: string, style?: string, color?: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Uploads a custom font to the cluster-level or org-level font library. Cluster-level fonts are available as defaults for all orgs. Org-level fonts are only available within that org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Only **WOFF** and **WOFF2** font formats are accepted. TTF and OTF files are rejected with an error. - Set `scope` to `CLUSTER` to upload to the cluster-level library. Set `scope` to `ORG` (default) to upload to the authenticated user\'s org library. - `weight` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `LIGHT`, `BOLD`. - `style` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `ITALIC`, `OBLIQUE`. - `color` defaults to `#000000` (black) if omitted. Provide as a 6-digit hex string (e.g. `#333333`). - The uploaded font can be assigned to visualization areas using the `updateStyleCustomization` endpoint. * @param name Display name for the font (e.g. \\\"Acme Sans\\\"). * @param fileContent Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats are accepted; TTF and OTF are rejected. The file is validated on upload. * @param [scope] Scope of the font library to upload to. CLUSTER uploads to the cluster-level library, making the font available as a default for all orgs. ORG uploads to the authenticated user\\\'s org library. Defaults to ORG if omitted. * @param [weight] Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to NORMAL if omitted. * @param [style] Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults to NORMAL if omitted. * @param [color] Color of the font as a 6-digit hex string (e.g. \\\"#333333\\\"). Defaults to #000000 (black) if omitted. Returns an error if the value is malformed. */ uploadStyleFont(name: string, fileContent: HttpFile, scope?: string, weight?: string, style?: string, color?: string, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseSystemApi { private api; constructor(configuration: Configuration, requestFactory?: SystemApiRequestFactory, responseProcessor?: SystemApiResponseProcessor); /** * Version: 10.14.0.cl or later Configure communication channel preferences. - Use `cluster_preferences` to update the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to specify Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param configureCommunicationChannelPreferencesRequest */ configureCommunicationChannelPreferencesWithHttpInfo(configureCommunicationChannelPreferencesRequest: ConfigureCommunicationChannelPreferencesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Configure communication channel preferences. - Use `cluster_preferences` to update the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to specify Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param configureCommunicationChannelPreferencesRequest */ configureCommunicationChannelPreferences(configureCommunicationChannelPreferencesRequest: ConfigureCommunicationChannelPreferencesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later Configure security settings for your ThoughtSpot application instance. - Use `cluster_preferences` to update cluster-level security settings including CORS whitelisted URLs, CSP settings, SAML redirect URLs, partitioned cookies, and non-embed access configuration. - Use `org_preferences` to configure Org-specific security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this allows configuring CORS and non-embed access settings specific to the Org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. Cluster-level SAML and script-src settings require `ADMINISTRATION` privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param configureSecuritySettingsRequest */ configureSecuritySettingsWithHttpInfo(configureSecuritySettingsRequest: ConfigureSecuritySettingsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Configure security settings for your ThoughtSpot application instance. - Use `cluster_preferences` to update cluster-level security settings including CORS whitelisted URLs, CSP settings, SAML redirect URLs, partitioned cookies, and non-embed access configuration. - Use `org_preferences` to configure Org-specific security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this allows configuring CORS and non-embed access settings specific to the Org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. Cluster-level SAML and script-src settings require `ADMINISTRATION` privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param configureSecuritySettingsRequest */ configureSecuritySettings(configureSecuritySettingsRequest: ConfigureSecuritySettingsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Retrieves the current configuration details of the cluster. If the request is successful, the API returns a list configuration settings applied on the cluster. Requires `ADMINISTRATION`(**Can administer ThoughtSpot**) privilege to view these complete configuration settings of the cluster. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemConfigWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Retrieves the current configuration details of the cluster. If the request is successful, the API returns a list configuration settings applied on the cluster. Requires `ADMINISTRATION`(**Can administer ThoughtSpot**) privilege to view these complete configuration settings of the cluster. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemConfig(_options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets system information such as the release version, locale, time zone, deployment environment, date format, and date time format of the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemInformationWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets system information such as the release version, locale, time zone, deployment environment, date format, and date time format of the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemInformation(_options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Gets a list of configuration overrides applied on the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemOverrideInfoWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Gets a list of configuration overrides applied on the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemOverrideInfo(_options?: PromiseConfigurationOptions): Promise; /** * Version: 10.14.0.cl or later Fetch communication channel preferences. - Use `cluster_preferences` to fetch the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to fetch any Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param searchCommunicationChannelPreferencesRequest */ searchCommunicationChannelPreferencesWithHttpInfo(searchCommunicationChannelPreferencesRequest: SearchCommunicationChannelPreferencesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Fetch communication channel preferences. - Use `cluster_preferences` to fetch the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to fetch any Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param searchCommunicationChannelPreferencesRequest */ searchCommunicationChannelPreferences(searchCommunicationChannelPreferencesRequest: SearchCommunicationChannelPreferencesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later Fetch security settings for your ThoughtSpot application instance. - Use `scope: CLUSTER` to retrieve cluster-level security settings, including CORS and CSP allowlists, SAML redirect URLs, and settings that control access to non-embedded pages. - Use `scope: ORG` to retrieve Org-level security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this returns CORS and non-embed access settings specific to the Org. - If `scope` is not specified, returns both cluster and Org-specific settings based on user privileges. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param searchSecuritySettingsRequest */ searchSecuritySettingsWithHttpInfo(searchSecuritySettingsRequest: SearchSecuritySettingsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Fetch security settings for your ThoughtSpot application instance. - Use `scope: CLUSTER` to retrieve cluster-level security settings, including CORS and CSP allowlists, SAML redirect URLs, and settings that control access to non-embedded pages. - Use `scope: ORG` to retrieve Org-level security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this returns CORS and non-embed access settings specific to the Org. - If `scope` is not specified, returns both cluster and Org-specific settings based on user privileges. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param searchSecuritySettingsRequest */ searchSecuritySettings(searchSecuritySettingsRequest: SearchSecuritySettingsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Updates the current configuration of the cluster. You must send the configuration data in JSON format. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. * @param updateSystemConfigRequest */ updateSystemConfigWithHttpInfo(updateSystemConfigRequest: UpdateSystemConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Updates the current configuration of the cluster. You must send the configuration data in JSON format. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. * @param updateSystemConfigRequest */ updateSystemConfig(updateSystemConfigRequest: UpdateSystemConfigRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Validates a communication channel configuration to ensure it is properly set up and can receive events. - Use `channel_type` to specify the type of communication channel to validate (e.g., WEBHOOK). - Use `channel_identifier` to provide the unique identifier or name for the communication channel. - Use `event_type` to specify the event type to validate for this channel. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. For webhook channels, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param validateCommunicationChannelRequest */ validateCommunicationChannelWithHttpInfo(validateCommunicationChannelRequest: ValidateCommunicationChannelRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Validates a communication channel configuration to ensure it is properly set up and can receive events. - Use `channel_type` to specify the type of communication channel to validate (e.g., WEBHOOK). - Use `channel_identifier` to provide the unique identifier or name for the communication channel. - Use `event_type` to specify the event type to validate for this channel. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. For webhook channels, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param validateCommunicationChannelRequest */ validateCommunicationChannel(validateCommunicationChannelRequest: ValidateCommunicationChannelRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseTagsApi { private api; constructor(configuration: Configuration, requestFactory?: TagsApiRequestFactory, responseProcessor?: TagsApiResponseProcessor); /** * Version: 9.0.0.cl or later Assigns tags to Liveboards, Answers, Tables, and Worksheets. Requires edit access to the metadata object. * @param assignTagRequest */ assignTagWithHttpInfo(assignTagRequest: AssignTagRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Assigns tags to Liveboards, Answers, Tables, and Worksheets. Requires edit access to the metadata object. * @param assignTagRequest */ assignTag(assignTagRequest: AssignTagRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Creates a tag object. Tags are labels that identify a metadata object. For example, you can create a tag to designate subject areas, such as sales, HR, marketing, and finance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param createTagRequest */ createTagWithHttpInfo(createTagRequest: CreateTagRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates a tag object. Tags are labels that identify a metadata object. For example, you can create a tag to designate subject areas, such as sales, HR, marketing, and finance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param createTagRequest */ createTag(createTagRequest: CreateTagRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Deletes a tag object from the ThoughtSpot system Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Tag identifier Tag name or Tag id. */ deleteTagWithHttpInfo(tagIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Deletes a tag object from the ThoughtSpot system Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Tag identifier Tag name or Tag id. */ deleteTag(tagIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets a list of tag objects available on the ThoughtSpot system. To get details of a specific tag object, specify the GUID or name. Any authenticated user can search for tag objects. * @param searchTagsRequest */ searchTagsWithHttpInfo(searchTagsRequest: SearchTagsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of tag objects available on the ThoughtSpot system. To get details of a specific tag object, specify the GUID or name. Any authenticated user can search for tag objects. * @param searchTagsRequest */ searchTags(searchTagsRequest: SearchTagsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Removes the tags applied to a Liveboard, Answer, Table, or Worksheet. Requires edit access to the metadata object. * @param unassignTagRequest */ unassignTagWithHttpInfo(unassignTagRequest: UnassignTagRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Removes the tags applied to a Liveboard, Answer, Table, or Worksheet. Requires edit access to the metadata object. * @param unassignTagRequest */ unassignTag(unassignTagRequest: UnassignTagRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Updates a tag object. You can modify the `name` and `color` properties of a tag object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Name or Id of the tag. * @param updateTagRequest */ updateTagWithHttpInfo(tagIdentifier: string, updateTagRequest: UpdateTagRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates a tag object. You can modify the `name` and `color` properties of a tag object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Name or Id of the tag. * @param updateTagRequest */ updateTag(tagIdentifier: string, updateTagRequest: UpdateTagRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseThoughtSpotRestApi { private api; constructor(configuration: Configuration, requestFactory?: ThoughtSpotRestApiRequestFactory, responseProcessor?: ThoughtSpotRestApiResponseProcessor); /** * Version: 9.7.0.cl or later Activates a deactivated user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To activate an inactive user account, the API request body must include the following information: - Username or the GUID of the user account. - Auth token generated for the deactivated user. The auth token is sent in the API response when a user is deactivated. - Password for the user account. * @param activateUserRequest */ activateUserWithHttpInfo(activateUserRequest: ActivateUserRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.7.0.cl or later Activates a deactivated user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To activate an inactive user account, the API request body must include the following information: - Username or the GUID of the user account. - Auth token generated for the deactivated user. The auth token is sent in the API response when a user is deactivated. - Password for the user account. * @param activateUserRequest */ activateUser(activateUserRequest: ActivateUserRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Transfers the ownership of one or several objects from one user to another. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege and edit access to the objects are required. * @param assignChangeAuthorRequest */ assignChangeAuthorWithHttpInfo(assignChangeAuthorRequest: AssignChangeAuthorRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Transfers the ownership of one or several objects from one user to another. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege and edit access to the objects are required. * @param assignChangeAuthorRequest */ assignChangeAuthor(assignChangeAuthorRequest: AssignChangeAuthorRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Assigns tags to Liveboards, Answers, Tables, and Worksheets. Requires edit access to the metadata object. * @param assignTagRequest */ assignTagWithHttpInfo(assignTagRequest: AssignTagRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Assigns tags to Liveboards, Answers, Tables, and Worksheets. Requires edit access to the metadata object. * @param assignTagRequest */ assignTag(assignTagRequest: AssignTagRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Updates the current password of the user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param changeUserPasswordRequest */ changeUserPasswordWithHttpInfo(changeUserPasswordRequest: ChangeUserPasswordRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates the current password of the user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param changeUserPasswordRequest */ changeUserPassword(changeUserPasswordRequest: ChangeUserPasswordRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Commits TML files of metadata objects to the Git branch configured on your instance. Requires at least edit access to objects used in the commit operation. Before using this endpoint to push your commits: * Enable Git integration on your instance. * Make sure the Git repository and branch details are configured on your instance. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitBranchRequest */ commitBranchWithHttpInfo(commitBranchRequest: CommitBranchRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Commits TML files of metadata objects to the Git branch configured on your instance. Requires at least edit access to objects used in the commit operation. Before using this endpoint to push your commits: * Enable Git integration on your instance. * Make sure the Git repository and branch details are configured on your instance. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitBranchRequest */ commitBranch(commitBranchRequest: CommitBranchRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.6.0.cl or later Enables or disables authentication at cluster or org level for the specified auth type. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `cluster_preferences` to enable or disable authentication at the cluster level. Cluster-level settings can only be configured from the Primary Org. - `ENABLED` — Generates a new access token if one does not exist. An existing token is preserved. - `DISABLED` — Revokes the existing cluster-level access token. Use `org_preferences` to enable or disable authentication for one or more Orgs. Each entry must include an `org_identifier` (unique ID or name) and an `auth_status`. Org-level configuration requires the per-Org authentication feature to be enabled on your instance. - `ENABLED` — Generates a new org-level access token if one does not exist. - `DISABLED` — Revokes the existing org-level access token for that Org. Both `cluster_preferences` and `org_preferences` are optional. Omitting a field leaves the corresponding settings unchanged. If both are omitted, the API returns `204 No Content` without making any changes. **Note**: Cluster-level and org-level settings are independent of each other. Enabling or disabling one does not affect the other. * @param configureAuthSettingsRequest */ configureAuthSettingsWithHttpInfo(configureAuthSettingsRequest: ConfigureAuthSettingsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Enables or disables authentication at cluster or org level for the specified auth type. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `cluster_preferences` to enable or disable authentication at the cluster level. Cluster-level settings can only be configured from the Primary Org. - `ENABLED` — Generates a new access token if one does not exist. An existing token is preserved. - `DISABLED` — Revokes the existing cluster-level access token. Use `org_preferences` to enable or disable authentication for one or more Orgs. Each entry must include an `org_identifier` (unique ID or name) and an `auth_status`. Org-level configuration requires the per-Org authentication feature to be enabled on your instance. - `ENABLED` — Generates a new org-level access token if one does not exist. - `DISABLED` — Revokes the existing org-level access token for that Org. Both `cluster_preferences` and `org_preferences` are optional. Omitting a field leaves the corresponding settings unchanged. If both are omitted, the API returns `204 No Content` without making any changes. **Note**: Cluster-level and org-level settings are independent of each other. Enabling or disabling one does not affect the other. * @param configureAuthSettingsRequest */ configureAuthSettings(configureAuthSettingsRequest: ConfigureAuthSettingsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.14.0.cl or later Configure communication channel preferences. - Use `cluster_preferences` to update the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to specify Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param configureCommunicationChannelPreferencesRequest */ configureCommunicationChannelPreferencesWithHttpInfo(configureCommunicationChannelPreferencesRequest: ConfigureCommunicationChannelPreferencesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Configure communication channel preferences. - Use `cluster_preferences` to update the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to specify Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param configureCommunicationChannelPreferencesRequest */ configureCommunicationChannelPreferences(configureCommunicationChannelPreferencesRequest: ConfigureCommunicationChannelPreferencesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later Configure security settings for your ThoughtSpot application instance. - Use `cluster_preferences` to update cluster-level security settings including CORS whitelisted URLs, CSP settings, SAML redirect URLs, partitioned cookies, and non-embed access configuration. - Use `org_preferences` to configure Org-specific security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this allows configuring CORS and non-embed access settings specific to the Org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. Cluster-level SAML and script-src settings require `ADMINISTRATION` privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param configureSecuritySettingsRequest */ configureSecuritySettingsWithHttpInfo(configureSecuritySettingsRequest: ConfigureSecuritySettingsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Configure security settings for your ThoughtSpot application instance. - Use `cluster_preferences` to update cluster-level security settings including CORS whitelisted URLs, CSP settings, SAML redirect URLs, partitioned cookies, and non-embed access configuration. - Use `org_preferences` to configure Org-specific security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this allows configuring CORS and non-embed access settings specific to the Org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. Cluster-level SAML and script-src settings require `ADMINISTRATION` privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param configureSecuritySettingsRequest */ configureSecuritySettings(configureSecuritySettingsRequest: ConfigureSecuritySettingsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Gets connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * 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. * To fetch details of a configuration object, specify the configuration object name or GUID. * @param connectionConfigurationSearchRequest */ connectionConfigurationSearchWithHttpInfo(connectionConfigurationSearchRequest: ConnectionConfigurationSearchRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.12.0.cl or later Gets connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * 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. * To fetch details of a configuration object, specify the configuration object name or GUID. * @param connectionConfigurationSearchRequest */ connectionConfigurationSearch(connectionConfigurationSearchRequest: ConnectionConfigurationSearchRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Convert worksheets to models Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (Can manage data models). --- ## Usage Guidelines ### Parameters 1. **worksheet_ids** - **Description:** A comma-separated list of GUIDs (Globally Unique Identifiers) specifying the Worksheets to be converted. - **Usage:** - Used only when `convert_all` is set to `false`. - Leave empty or omit when `convert_all` is set to `true`. 2. **exclude_worksheet_ids** - **Description:** A comma-separated list of GUIDs specifying Worksheets to be excluded from conversion. - **Usage:** - Useful when `convert_all` is set to `true` and specific Worksheets should not be converted. 3. **convert_all** - **Description:** Sets the scope of conversion. - **Options:** - `true`: Converts all Worksheets in the system, except those specified in `exclude_worksheet_ids`. - `false`: Converts only the Worksheets listed in `worksheet_ids`. 4. **apply_changes** - **Description:** Specifies whether to apply changes directly to ThoughtSpot or to generate a preview before applying any changes.Used for validation of conversion. - **Options:** - `true`: Applies conversion changes directly to ThoughtSpot. - `false`: Generates only a preview of the changes and does not apply any changes to ThoughtSpot --- ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the conversion process 2. **Partial Conversion for Testing:** Test the conversion process by setting `convert_all` to `false` and specifying a small number of `worksheet_ids`. 3. **Verify Dependencies:** Check for dependent objects, such as Tables and Connections, to avoid invalid references. 4. **Review Changes:** Use `apply_changes: false` to preview the impact of the conversion before applying changes. --- ## Examples ### Convert Specific Worksheets ```json { \"worksheet_ids\": [\"guid1\", \"guid2\", \"guid3\"], \"exclude_worksheet_ids\": [], \"convert_all\": false, \"apply_changes\": true } ``` ### Convert All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [], \"convert_all\": true, \"apply_changes\": true } ``` ### Exclude Specific Worksheets While Converting All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [\"abc\"], \"convert_all\": true, \"apply_changes\": true } ``` * @param convertWorksheetToModelRequest */ convertWorksheetToModelWithHttpInfo(convertWorksheetToModelRequest: ConvertWorksheetToModelRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Convert worksheets to models Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (Can manage data models). --- ## Usage Guidelines ### Parameters 1. **worksheet_ids** - **Description:** A comma-separated list of GUIDs (Globally Unique Identifiers) specifying the Worksheets to be converted. - **Usage:** - Used only when `convert_all` is set to `false`. - Leave empty or omit when `convert_all` is set to `true`. 2. **exclude_worksheet_ids** - **Description:** A comma-separated list of GUIDs specifying Worksheets to be excluded from conversion. - **Usage:** - Useful when `convert_all` is set to `true` and specific Worksheets should not be converted. 3. **convert_all** - **Description:** Sets the scope of conversion. - **Options:** - `true`: Converts all Worksheets in the system, except those specified in `exclude_worksheet_ids`. - `false`: Converts only the Worksheets listed in `worksheet_ids`. 4. **apply_changes** - **Description:** Specifies whether to apply changes directly to ThoughtSpot or to generate a preview before applying any changes.Used for validation of conversion. - **Options:** - `true`: Applies conversion changes directly to ThoughtSpot. - `false`: Generates only a preview of the changes and does not apply any changes to ThoughtSpot --- ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the conversion process 2. **Partial Conversion for Testing:** Test the conversion process by setting `convert_all` to `false` and specifying a small number of `worksheet_ids`. 3. **Verify Dependencies:** Check for dependent objects, such as Tables and Connections, to avoid invalid references. 4. **Review Changes:** Use `apply_changes: false` to preview the impact of the conversion before applying changes. --- ## Examples ### Convert Specific Worksheets ```json { \"worksheet_ids\": [\"guid1\", \"guid2\", \"guid3\"], \"exclude_worksheet_ids\": [], \"convert_all\": false, \"apply_changes\": true } ``` ### Convert All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [], \"convert_all\": true, \"apply_changes\": true } ``` ### Exclude Specific Worksheets While Converting All Accessible Worksheets ```json { \"worksheet_ids\": [], \"exclude_worksheet_ids\": [\"abc\"], \"convert_all\": true, \"apply_changes\": true } ``` * @param convertWorksheetToModelRequest */ convertWorksheetToModel(convertWorksheetToModelRequest: ConvertWorksheetToModelRequest, _options?: PromiseConfigurationOptions): Promise; /** * Makes a copy of an Answer or Liveboard Version: 10.3.0.cl or later Creates a copy of a metadata object. Requires at least view access to the metadata object being copied. Upon successful execution, the API creates a copy of the metadata object specified in the API request and returns the ID of the new object. * @param copyObjectRequest */ copyObjectWithHttpInfo(copyObjectRequest: CopyObjectRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Makes a copy of an Answer or Liveboard Version: 10.3.0.cl or later Creates a copy of a metadata object. Requires at least view access to the metadata object being copied. Upon successful execution, the API creates a copy of the metadata object specified in the API request and returns the ID of the new object. * @param copyObjectRequest */ copyObject(copyObjectRequest: CopyObjectRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later Creates a new Spotter agent conversation based on the provided context and settings. The endpoint was in Beta from 26.2.0.cl through 26.4.0.cl. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The conversation context is defined by exactly one of the following parameters: - `metadata_context`: defines the conversation context by data source. The context type can be one of: - `DATA_SOURCE` *(available from 26.5.0.cl)*: targets a specific data source. Provide `data_source_identifier` in `data_source_context` for a single data source, or `data_source_identifiers` for multi-data-source context. The deprecated `guid` field is accepted for backwards compatibility. - `AUTO_MODE` *(available from 26.5.0.cl)*: automatically discovers and selects the most relevant datasets for the user\'s queries. - `analyst_identifier` *(available from 26.10.0.cl)*: unique identifier of a Spotter Analyst to start the conversation from. The conversation uses the analyst\'s configuration — its data sources, agent instructions, and connectors — so `metadata_context` must be omitted. The caller must be the analyst\'s author, have the analyst shared with them, or hold admin / Spotter-management privileges. Passing both `analyst_identifier` and `metadata_context`, or neither, is rejected. > **Note for callers on versions 26.2.0.cl – 26.4.0.cl (Beta):** use the lowercase `data_source` enum value with the `guid` field instead of the above. Example: `{ \"type\": \"data_source\", \"data_source_context\": { \"guid\": \"\" } }`. The `conversation_settings` parameter controls which Spotter capabilities are enabled for the conversation: - `enable_contextual_change_analysis` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_natural_language_answer_generation` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_reasoning` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_save_chat` (default: `false`, *available from 26.5.0.cl*) — enables saving the conversation for later retrieval via conversation history If the request is successful, the response includes a unique `conversation_identifier` that must be passed to `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming` to send messages within this conversation. The response also includes `conversation_id` with the same value for backwards compatibility; use `conversation_identifier` for new integrations. When the conversation is started from an analyst, the response additionally carries the analyst\'s `analyst_id`; it is `null` otherwise. #### Example request ```json { \"metadata_context\": { \"type\": \"DATA_SOURCE\", \"data_source_context\": { \"data_source_identifier\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\" } }, \"conversation_settings\": {} } ``` #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view permission on the specified metadata object, or has no access to the analyst specified in `analyst_identifier`. | | 404 | Not found — no analyst with the given `analyst_identifier` exists in the caller\'s Org. | | 422 | Unprocessable entity — the request fails validation: both `analyst_identifier` and `metadata_context` were provided, neither was provided, or `metadata_context` is malformed (for example, `DATA_SOURCE` context without a data source identifier). | > ###### Note: > > - This endpoint was in Beta from 26.2.0.cl through 26.4.0.cl and is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createAgentConversationRequest */ createAgentConversationWithHttpInfo(createAgentConversationRequest: CreateAgentConversationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Creates a new Spotter agent conversation based on the provided context and settings. The endpoint was in Beta from 26.2.0.cl through 26.4.0.cl. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The conversation context is defined by exactly one of the following parameters: - `metadata_context`: defines the conversation context by data source. The context type can be one of: - `DATA_SOURCE` *(available from 26.5.0.cl)*: targets a specific data source. Provide `data_source_identifier` in `data_source_context` for a single data source, or `data_source_identifiers` for multi-data-source context. The deprecated `guid` field is accepted for backwards compatibility. - `AUTO_MODE` *(available from 26.5.0.cl)*: automatically discovers and selects the most relevant datasets for the user\'s queries. - `analyst_identifier` *(available from 26.10.0.cl)*: unique identifier of a Spotter Analyst to start the conversation from. The conversation uses the analyst\'s configuration — its data sources, agent instructions, and connectors — so `metadata_context` must be omitted. The caller must be the analyst\'s author, have the analyst shared with them, or hold admin / Spotter-management privileges. Passing both `analyst_identifier` and `metadata_context`, or neither, is rejected. > **Note for callers on versions 26.2.0.cl – 26.4.0.cl (Beta):** use the lowercase `data_source` enum value with the `guid` field instead of the above. Example: `{ \"type\": \"data_source\", \"data_source_context\": { \"guid\": \"\" } }`. The `conversation_settings` parameter controls which Spotter capabilities are enabled for the conversation: - `enable_contextual_change_analysis` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_natural_language_answer_generation` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_reasoning` (default: `true`, **deprecated from 26.2.0.cl**) — always enabled in Spotter 3; setting this to `false` has no effect on versions >= 26.2.0.cl - `enable_save_chat` (default: `false`, *available from 26.5.0.cl*) — enables saving the conversation for later retrieval via conversation history If the request is successful, the response includes a unique `conversation_identifier` that must be passed to `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming` to send messages within this conversation. The response also includes `conversation_id` with the same value for backwards compatibility; use `conversation_identifier` for new integrations. When the conversation is started from an analyst, the response additionally carries the analyst\'s `analyst_id`; it is `null` otherwise. #### Example request ```json { \"metadata_context\": { \"type\": \"DATA_SOURCE\", \"data_source_context\": { \"data_source_identifier\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\" } }, \"conversation_settings\": {} } ``` #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view permission on the specified metadata object, or has no access to the analyst specified in `analyst_identifier`. | | 404 | Not found — no analyst with the given `analyst_identifier` exists in the caller\'s Org. | | 422 | Unprocessable entity — the request fails validation: both `analyst_identifier` and `metadata_context` were provided, neither was provided, or `metadata_context` is malformed (for example, `DATA_SOURCE` context without a data source identifier). | > ###### Note: > > - This endpoint was in Beta from 26.2.0.cl through 26.4.0.cl and is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createAgentConversationRequest */ createAgentConversation(createAgentConversationRequest: CreateAgentConversationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Creates a Spotter Analyst: a configured agent with a name, description, at least one data source, and optional agent instructions, MCP connectors, and starter prompts. Analysts created via API use the default icon until one is set in the UI. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Version: 26.10.0.cl or later Creates a Spotter Analyst: a configured agent with a name, description, data sources, and optional agent instructions, MCP connectors, and starter prompts that your users converse with in Spotter. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Use a bearer token for the Org in which the analyst should be created. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior for this analyst. Instructions that conflict with system guardrails are rejected with `409`. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). The caller must have view access to every referenced source. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors to link to the analyst. - `starter_prompts` (optional): up to 4 plain-text prompts shown on the analyst landing page, each between 10 and 250 characters. Display order follows list position. If the request is successful, the response contains the created analyst, including the server-assigned `id`. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`), the last-update time as `updated_time_in_millis` (epoch milliseconds), and the `created_by` and `updated_by` users. #### Error conditions - `403` — missing privileges, or no view access to a referenced data source. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param createAnalystRequest */ createAnalystWithHttpInfo(createAnalystRequest: CreateAnalystRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Creates a Spotter Analyst: a configured agent with a name, description, at least one data source, and optional agent instructions, MCP connectors, and starter prompts. Analysts created via API use the default icon until one is set in the UI. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Version: 26.10.0.cl or later Creates a Spotter Analyst: a configured agent with a name, description, data sources, and optional agent instructions, MCP connectors, and starter prompts that your users converse with in Spotter. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges, plus view access to every data source referenced in `sources`. Use a bearer token for the Org in which the analyst should be created. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior for this analyst. Instructions that conflict with system guardrails are rejected with `409`. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). The caller must have view access to every referenced source. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors to link to the analyst. - `starter_prompts` (optional): up to 4 plain-text prompts shown on the analyst landing page, each between 10 and 250 characters. Display order follows list position. If the request is successful, the response contains the created analyst, including the server-assigned `id`. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`), the last-update time as `updated_time_in_millis` (epoch milliseconds), and the `created_by` and `updated_by` users. #### Error conditions - `403` — missing privileges, or no view access to a referenced data source. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param createAnalystRequest */ createAnalyst(createAnalystRequest: CreateAnalystRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Creates a new [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can create a custom calendar from scratch or an existing Table in ThoughtSpot. For both methods of calendar creation, the following parameters are required: * Name of the custom calendar. * Calendar creation method. To create a calendar from an existing table, specify the method: - `FROM_EXISTING_TABLE` - Creates calendar from the table reference provided in the API request. - `FROM_INPUT_PARAMS` - Creates a calendar from the parameters defined in the API request. * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. **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. ##### Calendar type The API allows you to create the following types of calendars: * `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. * `4-4-5`. Each quarter in the calendar will include two 4-week months followed by one 5-week month. * `4-5-4`. Each quarter in the calendar will include two 4-week months with a 5-week month between. * `5-4-4`. Each quarter begins with a 5-week month, followed by two 4-week months. To 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. You can also set the starting day of the week and customize the prefixes for year and quarter labels. #### Examples To create a calendar from an existing table: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_EXISTING_TABLE\", } ``` To create a calendar from scratch: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_INPUT_PARAMS\", \"calendar_type\": \"MONTH_OFFSET\", \"month_offset\": \"April\", \"start_day_of_week\": \"Monday\", \"quarter_name_prefix\": \"Q\", \"year_name_prefix\": \"FY\", \"start_date\": \"04/01/2025\", \"end_date\": \"04/31/2025\" } ``` * @param createCalendarRequest */ createCalendarWithHttpInfo(createCalendarRequest: CreateCalendarRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Creates a new [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can create a custom calendar from scratch or an existing Table in ThoughtSpot. For both methods of calendar creation, the following parameters are required: * Name of the custom calendar. * Calendar creation method. To create a calendar from an existing table, specify the method: - `FROM_EXISTING_TABLE` - Creates calendar from the table reference provided in the API request. - `FROM_INPUT_PARAMS` - Creates a calendar from the parameters defined in the API request. * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. **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. ##### Calendar type The API allows you to create the following types of calendars: * `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. * `4-4-5`. Each quarter in the calendar will include two 4-week months followed by one 5-week month. * `4-5-4`. Each quarter in the calendar will include two 4-week months with a 5-week month between. * `5-4-4`. Each quarter begins with a 5-week month, followed by two 4-week months. To 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. You can also set the starting day of the week and customize the prefixes for year and quarter labels. #### Examples To create a calendar from an existing table: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_EXISTING_TABLE\", } ``` To create a calendar from scratch: ``` { \"name\": \"MyCustomCalendar1\", \"table_reference\": { \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\", \"table_name\": \"MyCalendarTable\", \"database_name\": \"RETAILAPPAREL\", \"schema_name\": \"PUBLIC\" }, \"creation_method\": \"FROM_INPUT_PARAMS\", \"calendar_type\": \"MONTH_OFFSET\", \"month_offset\": \"April\", \"start_day_of_week\": \"Monday\", \"quarter_name_prefix\": \"Q\", \"year_name_prefix\": \"FY\", \"start_date\": \"04/01/2025\", \"end_date\": \"04/31/2025\" } ``` * @param createCalendarRequest */ createCalendar(createCalendarRequest: CreateCalendarRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Creates a new collection in ThoughtSpot. Collections allow you to organize and group related metadata objects such as Liveboards, Answers, worksheets, and other data objects. You can also create nested collections (sub-collections) to build a hierarchical structure. #### Supported operations The API endpoint lets you perform the following operations: * Create a new collection * Add metadata objects (Liveboards, Answers, Logical Tables) to the collection * Create nested collections by adding sub-collections * @param createCollectionRequest */ createCollectionWithHttpInfo(createCollectionRequest: CreateCollectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Creates a new collection in ThoughtSpot. Collections allow you to organize and group related metadata objects such as Liveboards, Answers, worksheets, and other data objects. You can also create nested collections (sub-collections) to build a hierarchical structure. #### Supported operations The API endpoint lets you perform the following operations: * Create a new collection * Add metadata objects (Liveboards, Answers, Logical Tables) to the collection * Create nested collections by adding sub-collections * @param createCollectionRequest */ createCollection(createCollectionRequest: CreateCollectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Allows you to connect a ThoughtSpot instance to a Git repository. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. You can use this API endpoint to connect your ThoughtSpot development and production environments to the development and production branches of a Git repository. Before using this endpoint to connect your ThoughtSpot instance to a Git repository, check the following prerequisites: * You have a Git repository. If you are using GitHub, make sure you have a valid account and an access token to connect ThoughtSpot to GitHub. For information about generating a token, see [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens). * Your access token has `repo` scope that grants full access to public and private repositories. * Your Git repository has a branch that can be configured as a default branch in ThoughtSpot. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/?pageid=git-integration). **Note**: ThoughtSpot supports only GitHub / itHub Enterprise for CI/CD. * @param createConfigRequest */ createConfigWithHttpInfo(createConfigRequest: CreateConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Allows you to connect a ThoughtSpot instance to a Git repository. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. You can use this API endpoint to connect your ThoughtSpot development and production environments to the development and production branches of a Git repository. Before using this endpoint to connect your ThoughtSpot instance to a Git repository, check the following prerequisites: * You have a Git repository. If you are using GitHub, make sure you have a valid account and an access token to connect ThoughtSpot to GitHub. For information about generating a token, see [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens). * Your access token has `repo` scope that grants full access to public and private repositories. * Your Git repository has a branch that can be configured as a default branch in ThoughtSpot. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/?pageid=git-integration). **Note**: ThoughtSpot supports only GitHub / itHub Enterprise for CI/CD. * @param createConfigRequest */ createConfig(createConfigRequest: CreateConfigRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Creates a connection to a data warehouse for live query services. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Create a connection without tables To create a connection without tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a SnowFlake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` 2. Set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. #### Create a connection with tables If [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**) and `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. To create a connection with tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\", \"AllDatatypes\"], \"externalDatabases\":[ { \"name\":\"AllDatatypes\", \"isAutoCreated\":false, \"schemas\":[ { \"name\":\"alldatatypes\", \"tables\":[ { \"name\":\"allDatatypes\", \"type\":\"TABLE\", \"description\":\"\", \"selected\":true, \"linked\":true, \"columns\":[ { \"name\":\"CNUMBER\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" }, { \"name\":\"CDECIMAL\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" } ] } ] } ] } ] } ``` 2. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param createConnectionRequest */ createConnectionWithHttpInfo(createConnectionRequest: CreateConnectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Creates a connection to a data warehouse for live query services. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Create a connection without tables To create a connection without tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a SnowFlake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` 2. Set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. #### Create a connection with tables If [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**) and `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. To create a connection with tables: 1. Pass these parameters in your API request. * Name of the connection. * Type of the data warehouse to connect to. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB1\", \"DB2\", \"AllDatatypes\"], \"externalDatabases\":[ { \"name\":\"AllDatatypes\", \"isAutoCreated\":false, \"schemas\":[ { \"name\":\"alldatatypes\", \"tables\":[ { \"name\":\"allDatatypes\", \"type\":\"TABLE\", \"description\":\"\", \"selected\":true, \"linked\":true, \"columns\":[ { \"name\":\"CNUMBER\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" }, { \"name\":\"CDECIMAL\", \"type\":\"INT64\", \"canImport\":true, \"selected\":true, \"isLinkedActive\":true, \"isImported\":false, \"tableName\":\"allDatatypes\", \"schemaName\":\"alldatatypes\", \"dbName\":\"AllDatatypes\" } ] } ] } ] } ] } ``` 2. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param createConnectionRequest */ createConnection(createConnectionRequest: CreateConnectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Creates an additional configuration to an existing connection to a data warehouse. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * A JSON map of configuration attributes in `configuration`. The following example shows the configuration attributes: ``` { \"user\":\"DEV_USER\", \"password\":\"TestConn123\", \"role\":\"DEV\", \"warehouse\":\"DEV_WH\" } ``` * If the `policy_type` is `PRINCIPALS`, then `policy_principals` is a required field. * If the `policy_type` is `PROCESSES`, then `policy_processes` is a required field. * If the `policy_type` is `NO_POLICY`, then `policy_principals` and `policy_processes` are not required fields. #### Parameterized Connection Support For 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. * @param createConnectionConfigurationRequest */ createConnectionConfigurationWithHttpInfo(createConnectionConfigurationRequest: CreateConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Creates an additional configuration to an existing connection to a data warehouse. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines * A JSON map of configuration attributes in `configuration`. The following example shows the configuration attributes: ``` { \"user\":\"DEV_USER\", \"password\":\"TestConn123\", \"role\":\"DEV\", \"warehouse\":\"DEV_WH\" } ``` * If the `policy_type` is `PRINCIPALS`, then `policy_principals` is a required field. * If the `policy_type` is `PROCESSES`, then `policy_processes` is a required field. * If the `policy_type` is `NO_POLICY`, then `policy_principals` and `policy_processes` are not required fields. #### Parameterized Connection Support For 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. * @param createConnectionConfigurationRequest */ createConnectionConfiguration(createConnectionConfigurationRequest: CreateConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Creates a new conversation session tied to a specific data model for AI-driven natural language querying. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `metadata_identifier`: the unique ID of the data source that provides context for the conversation Optionally, you can provide: - `tokens`: a token string to set initial context for the conversation (e.g., `\"[sales],[item type],[state]\"`) If the request is successful, ThoughtSpot returns a unique `conversation_identifier` that must be passed to `sendMessage` to continue the conversation. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createConversationRequest */ createConversationWithHttpInfo(createConversationRequest: CreateConversationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Creates a new conversation session tied to a specific data model for AI-driven natural language querying. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `metadata_identifier`: the unique ID of the data source that provides context for the conversation Optionally, you can provide: - `tokens`: a token string to set initial context for the conversation (e.g., `\"[sales],[item type],[state]\"`) If the request is successful, ThoughtSpot returns a unique `conversation_identifier` that must be passed to `sendMessage` to continue the conversation. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param createConversationRequest */ createConversation(createConversationRequest: CreateConversationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Creates a custom action that appears as a menu action on a saved Answer or Liveboard visualization. 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. #### Usage Guidelines The API lets you create the following types of custom actions: * URL-based action Allows pushing data to an external URL. * Callback action Triggers a callback to the host application and initiates a response payload on an embedded ThoughtSpot instance. By default, custom actions are visible to only administrator or developer users. To make a custom action available to other users, and specify the groups in `group_identifiers`. By default, the custom action is set as a _global_ action on all visualizations and saved Answers. To assign a custom action to specific Liveboard visualization, saved Answer, or Worksheet, set `visibility` to `false` in `default_action_config` property and specify the GUID or name of the object in `associate_metadata`. For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param createCustomActionRequest */ createCustomActionWithHttpInfo(createCustomActionRequest: CreateCustomActionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Creates a custom action that appears as a menu action on a saved Answer or Liveboard visualization. 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. #### Usage Guidelines The API lets you create the following types of custom actions: * URL-based action Allows pushing data to an external URL. * Callback action Triggers a callback to the host application and initiates a response payload on an embedded ThoughtSpot instance. By default, custom actions are visible to only administrator or developer users. To make a custom action available to other users, and specify the groups in `group_identifiers`. By default, the custom action is set as a _global_ action on all visualizations and saved Answers. To assign a custom action to specific Liveboard visualization, saved Answer, or Worksheet, set `visibility` to `false` in `default_action_config` property and specify the GUID or name of the object in `associate_metadata`. For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param createCustomActionRequest */ createCustomAction(createCustomActionRequest: CreateCustomActionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.10.0.cl or later Creates a customization configuration for the notification email. #### 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 To create a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param createEmailCustomizationRequest */ createEmailCustomizationWithHttpInfo(createEmailCustomizationRequest: CreateEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.10.0.cl or later Creates a customization configuration for the notification email. #### 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 To create a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param createEmailCustomizationRequest */ createEmailCustomization(createEmailCustomizationRequest: CreateEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Creates an Org object. To use this API, the [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview) feature must be enabled in your cluster. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param createOrgRequest */ createOrgWithHttpInfo(createOrgRequest: CreateOrgRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates an Org object. To use this API, the [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview) feature must be enabled in your cluster. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param createOrgRequest */ createOrg(createOrgRequest: CreateOrgRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.5.0.cl or later Creates a Role object in ThoughtSpot. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To create a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param createRoleRequest */ createRoleWithHttpInfo(createRoleRequest: CreateRoleRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.5.0.cl or later Creates a Role object in ThoughtSpot. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To create a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param createRoleRequest */ createRole(createRoleRequest: CreateRoleRequest, _options?: PromiseConfigurationOptions): Promise; /** * Create schedule. Version: 9.4.0.cl or later Creates a Liveboard schedule job. Requires at least edit access to Liveboards. To create a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, creating a schedule also requires the download privilege that corresponds to the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines * The description text is mandatory. The description text appears as **Description: ** in the Liveboard schedule email notifications. * For Liveboards with both charts and tables, schedule creation is only supported in PDF and XLS formats. Schedules created in CSV formats for such Liveboards will fail to run. If `PDF` is set as the `file_format`, enable `pdf_options` to get the correct attachment. Not doing so may cause the attachment to be rendered empty. * To include only specific visualizations, specify the visualization GUIDs in the `visualization_identifiers` array. * You can schedule a Liveboard job to run periodically by setting frequency parameters. You can set the schedule to run daily, weekly, monthly or every n minutes or hours. The scheduled job can also be configured to run at a specific time of the day or on specific days of the week or month. Please ensure that when setting the schedule frequency for _minute of the object_, only values that are multiples of 5 are included. * If the `frequency` parameters are defined, you can set the time zone to a value that matches your server\'s time zone. For example, `US/Central`, `Etc/UTC`, `CET`. The default time zone is `America/Los_Angeles`. For more information about Liveboard jobs, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/liveboard-schedule). * @param createScheduleRequest */ createScheduleWithHttpInfo(createScheduleRequest: CreateScheduleRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Create schedule. Version: 9.4.0.cl or later Creates a Liveboard schedule job. Requires at least edit access to Liveboards. To create a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, creating a schedule also requires the download privilege that corresponds to the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines * The description text is mandatory. The description text appears as **Description: ** in the Liveboard schedule email notifications. * For Liveboards with both charts and tables, schedule creation is only supported in PDF and XLS formats. Schedules created in CSV formats for such Liveboards will fail to run. If `PDF` is set as the `file_format`, enable `pdf_options` to get the correct attachment. Not doing so may cause the attachment to be rendered empty. * To include only specific visualizations, specify the visualization GUIDs in the `visualization_identifiers` array. * You can schedule a Liveboard job to run periodically by setting frequency parameters. You can set the schedule to run daily, weekly, monthly or every n minutes or hours. The scheduled job can also be configured to run at a specific time of the day or on specific days of the week or month. Please ensure that when setting the schedule frequency for _minute of the object_, only values that are multiples of 5 are included. * If the `frequency` parameters are defined, you can set the time zone to a value that matches your server\'s time zone. For example, `US/Central`, `Etc/UTC`, `CET`. The default time zone is `America/Los_Angeles`. For more information about Liveboard jobs, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/liveboard-schedule). * @param createScheduleRequest */ createSchedule(createScheduleRequest: CreateScheduleRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.9.0.cl or later Creates a new semantic integration in ThoughtSpot from a CDW semantic view. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About create semantic integration A semantic integration imports an externally defined semantic view from a Cloud Data Warehouse (CDW) into ThoughtSpot. The API resolves the source semantic view from the specified `connection_identifier`, `database_name`, `schema_name`, and `semantic_view_name`, generates a ThoughtSpot model from it, and returns the model GUID along with a per-formula import report (`semantic_report`) summarizing how many formulas were successfully imported, failed, or skipped. - `connection_identifier`, `name`, `database_name`, `schema_name`, `semantic_view_name`, and `type` are required. - `name` must be unique across the user\'s organization. The integration\'s display name is also used as the generated model name. - Supported `type` values are listed in the `SemanticIntegrationType` enum. - The response includes a `semantic_report.summary` with `total`, `imported`, `failed`, and `skipped` counts, and a `formulas` array with the per-formula translation details. > **Note:** Creating a semantic integration using a YAML file upload is not supported through the public API. * @param createSemanticIntegrationRequest */ createSemanticIntegrationWithHttpInfo(createSemanticIntegrationRequest: CreateSemanticIntegrationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.9.0.cl or later Creates a new semantic integration in ThoughtSpot from a CDW semantic view. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About create semantic integration A semantic integration imports an externally defined semantic view from a Cloud Data Warehouse (CDW) into ThoughtSpot. The API resolves the source semantic view from the specified `connection_identifier`, `database_name`, `schema_name`, and `semantic_view_name`, generates a ThoughtSpot model from it, and returns the model GUID along with a per-formula import report (`semantic_report`) summarizing how many formulas were successfully imported, failed, or skipped. - `connection_identifier`, `name`, `database_name`, `schema_name`, `semantic_view_name`, and `type` are required. - `name` must be unique across the user\'s organization. The integration\'s display name is also used as the generated model name. - Supported `type` values are listed in the `SemanticIntegrationType` enum. - The response includes a `semantic_report.summary` with `total`, `imported`, `failed`, and `skipped` counts, and a `formulas` array with the per-formula translation details. > **Note:** Creating a semantic integration using a YAML file upload is not supported through the public API. * @param createSemanticIntegrationRequest */ createSemanticIntegration(createSemanticIntegrationRequest: CreateSemanticIntegrationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Creates a tag object. Tags are labels that identify a metadata object. For example, you can create a tag to designate subject areas, such as sales, HR, marketing, and finance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param createTagRequest */ createTagWithHttpInfo(createTagRequest: CreateTagRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates a tag object. Tags are labels that identify a metadata object. For example, you can create a tag to designate subject areas, such as sales, HR, marketing, and finance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param createTagRequest */ createTag(createTagRequest: CreateTagRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Creates a user in ThoughtSpot. The API endpoint allows you to configure several user properties such as email address, account status, share notification preferences, and sharing visibility. You can provision the user to [groups](https://docs.thoughtspot.com/cloud/latest/groups-privileges) and [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview). You can also add Liveboard, Answer, and Worksheet objects to the user’s favorites list, assign a default Liveboard for the user, and set user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param createUserRequest */ createUserWithHttpInfo(createUserRequest: CreateUserRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates a user in ThoughtSpot. The API endpoint allows you to configure several user properties such as email address, account status, share notification preferences, and sharing visibility. You can provision the user to [groups](https://docs.thoughtspot.com/cloud/latest/groups-privileges) and [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview). You can also add Liveboard, Answer, and Worksheet objects to the user’s favorites list, assign a default Liveboard for the user, and set user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param createUserRequest */ createUser(createUserRequest: CreateUserRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Creates a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### About groups Groups in ThoughtSpot are used by the administrators to define privileges and organize users based on their roles and access requirements. To know more about groups and privileges, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/groups-privileges). #### Supported operations The API endpoint lets you perform the following operations: * Assign privileges * Add users * Define sharing visibility * Add sub-groups * Assign a default Liveboard * @param createUserGroupRequest */ createUserGroupWithHttpInfo(createUserGroupRequest: CreateUserGroupRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### About groups Groups in ThoughtSpot are used by the administrators to define privileges and organize users based on their roles and access requirements. To know more about groups and privileges, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/groups-privileges). #### Supported operations The API endpoint lets you perform the following operations: * Assign privileges * Add users * Define sharing visibility * Add sub-groups * Assign a default Liveboard * @param createUserGroupRequest */ createUserGroup(createUserGroupRequest: CreateUserGroupRequest, _options?: PromiseConfigurationOptions): Promise; /** * Create a variable which can be used for parameterizing metadata objects Version: 26.4.0.cl or later Allows creating a variable which can be used for parameterizing metadata objects in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports the following types of variables: * CONNECTION_PROPERTY - For connection properties * TABLE_MAPPING - For table mappings * CONNECTION_PROPERTY_PER_PRINCIPAL - For connection properties per principal. In order to use this please contact support to enable this. * FORMULA_VARIABLE - For Formula variables, introduced in 10.15.0.cl When creating a variable, you need to specify: * The variable type * A unique name for the variable * Whether the variable contains sensitive values (defaults to false) * The data type of the variable, only specify for formula variables (defaults to null) The operation will fail if: * The user lacks required permissions * The variable name already exists * The variable type is invalid * @param createVariableRequest */ createVariableWithHttpInfo(createVariableRequest: CreateVariableRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Create a variable which can be used for parameterizing metadata objects Version: 26.4.0.cl or later Allows creating a variable which can be used for parameterizing metadata objects in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports the following types of variables: * CONNECTION_PROPERTY - For connection properties * TABLE_MAPPING - For table mappings * CONNECTION_PROPERTY_PER_PRINCIPAL - For connection properties per principal. In order to use this please contact support to enable this. * FORMULA_VARIABLE - For Formula variables, introduced in 10.15.0.cl When creating a variable, you need to specify: * The variable type * A unique name for the variable * Whether the variable contains sensitive values (defaults to false) * The data type of the variable, only specify for formula variables (defaults to null) The operation will fail if: * The user lacks required permissions * The variable name already exists * The variable type is invalid * @param createVariableRequest */ createVariable(createVariableRequest: CreateVariableRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.14.0.cl or later Creates a new webhook configuration to receive notifications for specified events. The webhook will be triggered when the configured events occur in the system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param createWebhookConfigurationRequest */ createWebhookConfigurationWithHttpInfo(createWebhookConfigurationRequest: CreateWebhookConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Creates a new webhook configuration to receive notifications for specified events. The webhook will be triggered when the configured events occur in the system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param createWebhookConfigurationRequest */ createWebhookConfiguration(createWebhookConfigurationRequest: CreateWebhookConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Creates a DBT connection object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About create DBT connection DBT connection in ThoughtSpot is used by the user to define DBT credentials for cloud . The API needs embrace connection, embrace database name, DBT url, import type, DBT account identifier, DBT project identifier, DBT access token and environment details (or) embrace connection, embrace database name, import type, file_content to create a connection object. To know more about DBT, see ThoughtSpot Product Documentation. * @param connectionName Name of the connection. * @param databaseName Name of the Database. * @param [importType] Mention type of Import * @param [accessToken] Access token is mandatory when Import_Type is DBT_CLOUD. * @param [dbtUrl] DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param [accountId] Account ID is mandatory when Import_Type is DBT_CLOUD * @param [projectId] Project ID is mandatory when Import_Type is DBT_CLOUD * @param [dbtEnvId] DBT Environment ID\\\" * @param [projectName] Name of the project * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ dbtConnectionWithHttpInfo(connectionName: string, databaseName: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Creates a DBT connection object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About create DBT connection DBT connection in ThoughtSpot is used by the user to define DBT credentials for cloud . The API needs embrace connection, embrace database name, DBT url, import type, DBT account identifier, DBT project identifier, DBT access token and environment details (or) embrace connection, embrace database name, import type, file_content to create a connection object. To know more about DBT, see ThoughtSpot Product Documentation. * @param connectionName Name of the connection. * @param databaseName Name of the Database. * @param [importType] Mention type of Import * @param [accessToken] Access token is mandatory when Import_Type is DBT_CLOUD. * @param [dbtUrl] DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param [accountId] Account ID is mandatory when Import_Type is DBT_CLOUD * @param [projectId] Project ID is mandatory when Import_Type is DBT_CLOUD * @param [dbtEnvId] DBT Environment ID\\\" * @param [projectName] Name of the project * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ dbtConnection(connectionName: string, databaseName: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Resynchronize the existing list of models, tables, worksheet tml’s and import them to Thoughtspot based on the DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param [includeSemanticReport] If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateSyncTmlWithHttpInfo(dbtConnectionIdentifier: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Resynchronize the existing list of models, tables, worksheet tml’s and import them to Thoughtspot based on the DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param [includeSemanticReport] If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateSyncTml(dbtConnectionIdentifier: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Generate required table and worksheet and import them. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About generate TML Models and Worksheets to be imported can be selected by the user as part of the API. * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param modelTables List of Models and their respective Tables Example: \\\'[{\\\"model_name\\\": \\\"model_name\\\", \\\"model_path\\\": \\\"model_path\\\", \\\"tables\\\": [\\\"table_name\\\"]}]\\\' * @param importWorksheets Mention the worksheet tmls to import * @param [worksheets] List of worksheets is mandatory when import_Worksheets is type SELECTED Example: [\\\"worksheet_name\\\"] * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param [includeSemanticReport] If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateTmlWithHttpInfo(dbtConnectionIdentifier: string, modelTables: string, importWorksheets: string, worksheets?: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Generate required table and worksheet and import them. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About generate TML Models and Worksheets to be imported can be selected by the user as part of the API. * @param dbtConnectionIdentifier Unique ID of the DBT connection. * @param modelTables List of Models and their respective Tables Example: \\\'[{\\\"model_name\\\": \\\"model_name\\\", \\\"model_path\\\": \\\"model_path\\\", \\\"tables\\\": [\\\"table_name\\\"]}]\\\' * @param importWorksheets Mention the worksheet tmls to import * @param [worksheets] List of worksheets is mandatory when import_Worksheets is type SELECTED Example: [\\\"worksheet_name\\\"] * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is mandatory if the connection was created with import_type ‘ZIP_FILE’ * @param [includeSemanticReport] If true, includes a `semantic_report` per model showing which components were imported or skipped. Each component includes its name, type (such as dimension, measure, or metric), import status, SQL expression, and the corresponding generated ThoughtSpot formula. Note: supported only for Snowflake and Databricks connections. */ dbtGenerateTml(dbtConnectionIdentifier: string, modelTables: string, importWorksheets: string, worksheets?: string, fileContent?: HttpFile, includeSemanticReport?: boolean, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Gets a list of DBT connection objects by user and organization, available on the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About search DBT connection To get details of a specific DBT connection identifier, database connection identifier, database connection name, database name, project name, project identifier, environment identifier , import type and author. */ dbtSearchWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.9.0.cl or later Gets a list of DBT connection objects by user and organization, available on the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About search DBT connection To get details of a specific DBT connection identifier, database connection identifier, database connection name, database name, project name, project identifier, environment identifier , import type and author. */ dbtSearch(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.7.0.cl or later Deactivates a user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To deactivate a user account, the API request body must include the following information: - Username or the GUID of the user account - Base URL of the ThoughtSpot instance If the API request is successful, ThoughtSpot returns the activation URL in the response. The activation URL is valid for 14 days and can be used to re-activate the account and reset the password of the deactivated account. * @param deactivateUserRequest */ deactivateUserWithHttpInfo(deactivateUserRequest: DeactivateUserRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.7.0.cl or later Deactivates a user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To deactivate a user account, the API request body must include the following information: - Username or the GUID of the user account - Base URL of the ThoughtSpot instance If the API request is successful, ThoughtSpot returns the activation URL in the response. The activation URL is valid for 14 days and can be used to re-activate the account and reset the password of the deactivated account. * @param deactivateUserRequest */ deactivateUser(deactivateUserRequest: DeactivateUserRequest, _options?: PromiseConfigurationOptions): Promise; /** * Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. The request has no body; the response contains the `id` of the deleted analyst. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot delete it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request has no body — the analyst to delete is identified by the `analyst_identifier` path parameter, as returned by the create analyst API. A successful request returns the `id` of the deleted analyst. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to delete. */ deleteAnalystWithHttpInfo(analystIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. The request has no body; the response contains the `id` of the deleted analyst. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Permanently deletes a Spotter Analyst. This operation is irreversible — deleted analysts cannot be recovered. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot delete it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request has no body — the analyst to delete is identified by the `analyst_identifier` path parameter, as returned by the create analyst API. A successful request returns the `id` of the deleted analyst. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to delete. */ deleteAnalyst(analystIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Deletes a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines To delete a custom calendar, specify the calendar ID as a path parameter in the request URL. * @param calendarIdentifier Unique ID or name of the Calendar. */ deleteCalendarWithHttpInfo(calendarIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Deletes a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines To delete a custom calendar, specify the calendar ID as a path parameter in the request URL. * @param calendarIdentifier Unique ID or name of the Calendar. */ deleteCalendar(calendarIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Deletes one or more collections from ThoughtSpot. #### Delete options * **delete_children**: When set to `true`, deletes the child objects (metadata items) within the collection that the user has access to. Objects that the user does not have permission to delete will be skipped. * **dry_run**: When set to `true`, performs a preview of the deletion operation without actually deleting anything. The response shows what would be deleted, allowing you to review before committing the deletion. #### Response The response includes: * **metadata_deleted**: List of metadata objects that were successfully deleted * **metadata_skipped**: List of metadata objects that were skipped due to lack of permissions or other constraints * @param deleteCollectionRequest */ deleteCollectionWithHttpInfo(deleteCollectionRequest: DeleteCollectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Deletes one or more collections from ThoughtSpot. #### Delete options * **delete_children**: When set to `true`, deletes the child objects (metadata items) within the collection that the user has access to. Objects that the user does not have permission to delete will be skipped. * **dry_run**: When set to `true`, performs a preview of the deletion operation without actually deleting anything. The response shows what would be deleted, allowing you to review before committing the deletion. #### Response The response includes: * **metadata_deleted**: List of metadata objects that were successfully deleted * **metadata_skipped**: List of metadata objects that were skipped due to lack of permissions or other constraints * @param deleteCollectionRequest */ deleteCollection(deleteCollectionRequest: DeleteCollectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Deletes Git repository configuration from your ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param deleteConfigRequest */ deleteConfigWithHttpInfo(deleteConfigRequest: DeleteConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Deletes Git repository configuration from your ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param deleteConfigRequest */ deleteConfig(deleteConfigRequest: DeleteConfigRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Delete Connection V2](#/http/api-endpoints/connections/delete-connection-v2) endpoint to delete your connection objects. #### Usage guidelines Deletes a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. * @param deleteConnectionRequest */ deleteConnectionWithHttpInfo(deleteConnectionRequest: DeleteConnectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Delete Connection V2](#/http/api-endpoints/connections/delete-connection-v2) endpoint to delete your connection objects. #### Usage guidelines Deletes a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. * @param deleteConnectionRequest */ deleteConnection(deleteConnectionRequest: DeleteConnectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Deletes connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param deleteConnectionConfigurationRequest */ deleteConnectionConfigurationWithHttpInfo(deleteConnectionConfigurationRequest: DeleteConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Deletes connection configuration objects. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param deleteConnectionConfigurationRequest */ deleteConnectionConfiguration(deleteConnectionConfigurationRequest: DeleteConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Deletes a connection object. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param connectionIdentifier Unique ID or name of the connection. */ deleteConnectionV2WithHttpInfo(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Deletes a connection object. **Note**: If a connection has dependent objects, make sure you remove its associations before the delete operation. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. * @param connectionIdentifier Unique ID or name of the connection. */ deleteConnectionV2(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Deletes an existing agent conversation. Version: 26.7.0.cl or later Permanently deletes an existing saved agent conversation and all its associated messages. This operation is irreversible — deleted conversations cannot be recovered. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being deleted. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to delete, as returned by `createAgentConversation` or `getConversationList` A successful request returns an empty `204 No Content` response. The deleted conversation no longer appears in `getConversationList`. #### Example request ```bash DELETE /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/delete ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | > ###### Note: > > - Deletion is permanent and cannot be undone. Ensure the correct `conversation_identifier` is used before calling this endpoint. > - Only conversations created with `enable_save_chat: true` are persisted and can be deleted via this endpoint. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to delete. */ deleteConversationWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Deletes an existing agent conversation. Version: 26.7.0.cl or later Permanently deletes an existing saved agent conversation and all its associated messages. This operation is irreversible — deleted conversations cannot be recovered. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being deleted. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to delete, as returned by `createAgentConversation` or `getConversationList` A successful request returns an empty `204 No Content` response. The deleted conversation no longer appears in `getConversationList`. #### Example request ```bash DELETE /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/delete ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | > ###### Note: > > - Deletion is permanent and cannot be undone. Ensure the correct `conversation_identifier` is used before calling this endpoint. > - Only conversations created with `enable_save_chat: true` are persisted and can be deleted via this endpoint. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to delete. */ deleteConversation(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Removes the custom action specified in the API request. 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. * @param customActionIdentifier Unique ID or name of the custom action. */ deleteCustomActionWithHttpInfo(customActionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Removes the custom action specified in the API request. 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. * @param customActionIdentifier Unique ID or name of the custom action. */ deleteCustomAction(customActionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Removes the specified DBT connection object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT Connection. */ deleteDbtConnectionWithHttpInfo(dbtConnectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Removes the specified DBT connection object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) * @param dbtConnectionIdentifier Unique ID of the DBT Connection. */ deleteDbtConnection(dbtConnectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.10.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 `template_identifier` from the response. - Use that `template_identifier` as a parameter in this API request. * @param templateIdentifier Unique ID or name of the email customization. */ deleteEmailCustomizationWithHttpInfo(templateIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.10.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 `template_identifier` from the response. - Use that `template_identifier` as a parameter in this API request. * @param templateIdentifier Unique ID or name of the email customization. */ deleteEmailCustomization(templateIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Delete manual translations. Version: 26.7.0.cl or later Deletes all manual translations for the org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - This deletes **all** translation entries for the targeted org. The operation cannot be undone. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to delete translations uploaded in the All-Org context. * @param deleteManualTranslationsRequest */ deleteManualTranslationsWithHttpInfo(deleteManualTranslationsRequest: DeleteManualTranslationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Delete manual translations. Version: 26.7.0.cl or later Deletes all manual translations for the org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - This deletes **all** translation entries for the targeted org. The operation cannot be undone. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to delete translations uploaded in the All-Org context. * @param deleteManualTranslationsRequest */ deleteManualTranslations(deleteManualTranslationsRequest: DeleteManualTranslationsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Removes the specified metadata object from the ThoughtSpot system. Requires edit access to the metadata object. * @param deleteMetadataRequest */ deleteMetadataWithHttpInfo(deleteMetadataRequest: DeleteMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Removes the specified metadata object from the ThoughtSpot system. Requires edit access to the metadata object. * @param deleteMetadataRequest */ deleteMetadata(deleteMetadataRequest: DeleteMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Deletes an Org object from the ThoughtSpot system. Requires cluster administration (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. When you delete an Org, all its users and objects created in that Org context are removed. However, if the users in the deleted Org also exists in other Orgs, they are removed only from the deleted Org. * @param orgIdentifier ID or name of the Org */ deleteOrgWithHttpInfo(orgIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Deletes an Org object from the ThoughtSpot system. Requires cluster administration (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. When you delete an Org, all its users and objects created in that Org context are removed. However, if the users in the deleted Org also exists in other Orgs, they are removed only from the deleted Org. * @param orgIdentifier ID or name of the Org */ deleteOrg(orgIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * 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. * @param deleteOrgEmailCustomizationRequest */ deleteOrgEmailCustomizationWithHttpInfo(deleteOrgEmailCustomizationRequest: DeleteOrgEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * 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. * @param deleteOrgEmailCustomizationRequest */ deleteOrgEmailCustomization(deleteOrgEmailCustomizationRequest: DeleteOrgEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.5.0.cl or later Deletes a Role object from the ThoughtSpot system. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To delete a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. ReadOnly roles cannot be deleted. */ deleteRoleWithHttpInfo(roleIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.5.0.cl or later Deletes a Role object from the ThoughtSpot system. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To delete a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. ReadOnly roles cannot be deleted. */ deleteRole(roleIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Deletes a scheduled job. Version: 9.4.0.cl or later Deletes a scheduled Liveboard job. Requires at least edit access to Liveboard or `ADMINISTRATION` (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. * @param scheduleIdentifier Unique ID or name of the scheduled job. */ deleteScheduleWithHttpInfo(scheduleIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Deletes a scheduled job. Version: 9.4.0.cl or later Deletes a scheduled Liveboard job. Requires at least edit access to Liveboard or `ADMINISTRATION` (**Can administer Org**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. * @param scheduleIdentifier Unique ID or name of the scheduled job. */ deleteSchedule(scheduleIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.9.0.cl or later Deletes a semantic integration and its associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About delete semantic integration Removes the specified semantic integration and its generated ThoughtSpot model from the system. - `semantic_integration_identifier` is the GUID or name of the integration to delete. - Deletions cannot be undone. Re-import the integration with `createSemanticIntegration` if needed. * @param semanticIntegrationIdentifier ID or name of the semantic integration to delete. */ deleteSemanticIntegrationWithHttpInfo(semanticIntegrationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.9.0.cl or later Deletes a semantic integration and its associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About delete semantic integration Removes the specified semantic integration and its generated ThoughtSpot model from the system. - `semantic_integration_identifier` is the GUID or name of the integration to delete. - Deletions cannot be undone. Re-import the integration with `createSemanticIntegration` if needed. * @param semanticIntegrationIdentifier ID or name of the semantic integration to delete. */ deleteSemanticIntegration(semanticIntegrationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Deletes one or more custom fonts from the cluster-level or org-level font library. If a deleted font is assigned to visualization areas, those assignments automatically fallback to the cluster/system default font. The response lists all affected areas where the font was explicitly set. Note: dry_run defaults to true. To actually delete fonts, you must explicitly pass dry_run: false. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Provide one or more font UUIDs or names in `font_identifiers`. - Set `scope` to `CLUSTER` to delete from the cluster-level library. Set `scope` to `ORG` (default) to delete from the authenticated user\'s org library. - Use `dry_run: true` to preview which visualization areas would be affected without actually deleting the font. The response lists affected assignments; no changes are applied. - Deletions cannot be undone. Re-upload the font file using `uploadStyleFont` if needed. * @param deleteStyleFontsRequest */ deleteStyleFontsWithHttpInfo(deleteStyleFontsRequest: DeleteStyleFontsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Deletes one or more custom fonts from the cluster-level or org-level font library. If a deleted font is assigned to visualization areas, those assignments automatically fallback to the cluster/system default font. The response lists all affected areas where the font was explicitly set. Note: dry_run defaults to true. To actually delete fonts, you must explicitly pass dry_run: false. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Provide one or more font UUIDs or names in `font_identifiers`. - Set `scope` to `CLUSTER` to delete from the cluster-level library. Set `scope` to `ORG` (default) to delete from the authenticated user\'s org library. - Use `dry_run: true` to preview which visualization areas would be affected without actually deleting the font. The response lists affected assignments; no changes are applied. - Deletions cannot be undone. Re-upload the font file using `uploadStyleFont` if needed. * @param deleteStyleFontsRequest */ deleteStyleFonts(deleteStyleFontsRequest: DeleteStyleFontsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Deletes a tag object from the ThoughtSpot system Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Tag identifier Tag name or Tag id. */ deleteTagWithHttpInfo(tagIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Deletes a tag object from the ThoughtSpot system Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Tag identifier Tag name or Tag id. */ deleteTag(tagIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Deletes a user from the ThoughtSpot system. If you want to remove a user from a specific Org but not from ThoughtSpot, update the group and Org mapping properties of the user object via a POST API call to the [/api/rest/2.0/users/{user_identifier}/update](#/http/api-endpoints/users/update-user) endpoint. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user */ deleteUserWithHttpInfo(userIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Deletes a user from the ThoughtSpot system. If you want to remove a user from a specific Org but not from ThoughtSpot, update the group and Org mapping properties of the user object via a POST API call to the [/api/rest/2.0/users/{user_identifier}/update](#/http/api-endpoints/users/update-user) endpoint. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user */ deleteUser(userIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Removes the specified group object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. * @param groupIdentifier GUID or name of the group. */ deleteUserGroupWithHttpInfo(groupIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Removes the specified group object from the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. * @param groupIdentifier GUID or name of the group. */ deleteUserGroup(groupIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Delete a variable Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/delete](/api/rest/2.0/template/variables/delete) instead. Allows deleting a variable from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifier (ID or name) The operation will fail if: * The user lacks required permissions * The variable doesn\'t exist * The variable is being used by other objects * @param identifier Unique id, name, or object id of the variable */ deleteVariableWithHttpInfo(identifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Delete a variable Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/delete](/api/rest/2.0/template/variables/delete) instead. Allows deleting a variable from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifier (ID or name) The operation will fail if: * The user lacks required permissions * The variable doesn\'t exist * The variable is being used by other objects * @param identifier Unique id, name, or object id of the variable */ deleteVariable(identifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Delete variable(s) Version: 26.4.0.cl or later Allows deleting multiple variables from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifiers (IDs or names) The operation will fail if: * The user lacks required permissions * Any of the variables don\'t exist * Any of the variables are being used by other objects * @param deleteVariablesRequest */ deleteVariablesWithHttpInfo(deleteVariablesRequest: DeleteVariablesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Delete variable(s) Version: 26.4.0.cl or later Allows deleting multiple variables from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifiers (IDs or names) The operation will fail if: * The user lacks required permissions * Any of the variables don\'t exist * Any of the variables are being used by other objects * @param deleteVariablesRequest */ deleteVariables(deleteVariablesRequest: DeleteVariablesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.14.0.cl or later Deletes one or more webhook configurations by their unique id or name. Returns status of each deletion operation, including successfully deleted webhooks and any failures with error details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param deleteWebhookConfigurationsRequest */ deleteWebhookConfigurationsWithHttpInfo(deleteWebhookConfigurationsRequest: DeleteWebhookConfigurationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Deletes one or more webhook configurations by their unique id or name. Returns status of each deletion operation, including successfully deleted webhooks and any failures with error details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param deleteWebhookConfigurationsRequest */ deleteWebhookConfigurations(deleteWebhookConfigurationsRequest: DeleteWebhookConfigurationsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Allows you to deploy a commit and publish TML content to your ThoughtSpot instance. Requires at least edit access to the objects used in the deploy operation. The API deploys the head of the branch unless a `commit_id` is specified in the API request. If the branch name is not defined in the request, the default branch is considered for deploying commits. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param deployCommitRequest */ deployCommitWithHttpInfo(deployCommitRequest: DeployCommitRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Allows you to deploy a commit and publish TML content to your ThoughtSpot instance. Requires at least edit access to the objects used in the deploy operation. The API deploys the head of the branch unless a `commit_id` is specified in the API request. If the branch name is not defined in the request, the default branch is considered for deploying commits. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param deployCommitRequest */ deployCommit(deployCommitRequest: DeployCommitRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Exports the difference in connection metadata between CDW and ThoughtSpot Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) To download the connection metadata difference between ThoughtSpot and CDW, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ downloadConnectionMetadataChangesWithHttpInfo(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Exports the difference in connection metadata between CDW and ThoughtSpot Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) To download the connection metadata difference between ThoughtSpot and CDW, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ downloadConnectionMetadataChanges(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Exports an Answer in the given file format. You can download the Answer data as a PDF, PNG, CSV, or XLSX file. Requires at least view access to the Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV`, `XLSX`, and `PDF` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. For an Answer, the `PDF` export is a table PDF, which is why it falls under `CAN_DOWNLOAD_DETAILED_DATA` rather than `CAN_DOWNLOAD_VISUALS`. #### Usage guidelines In the request body, specify the GUID or name of the Answer and set `file_format`. The default file format is CSV. Use the `type` parameter to specify whether the Answer being exported is a saved Answer (`SAVED`) or a pinned Answer on a Liveboard (`PINNED`). Defaults to `SAVED`. When using `PINNED`, the `metadata_identifier` must be the container id. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * HTML rendering is not supported for PDF exports of Answers with tables. Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * @param exportAnswerReportRequest */ exportAnswerReportWithHttpInfo(exportAnswerReportRequest: ExportAnswerReportRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Exports an Answer in the given file format. You can download the Answer data as a PDF, PNG, CSV, or XLSX file. Requires at least view access to the Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV`, `XLSX`, and `PDF` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. For an Answer, the `PDF` export is a table PDF, which is why it falls under `CAN_DOWNLOAD_DETAILED_DATA` rather than `CAN_DOWNLOAD_VISUALS`. #### Usage guidelines In the request body, specify the GUID or name of the Answer and set `file_format`. The default file format is CSV. Use the `type` parameter to specify whether the Answer being exported is a saved Answer (`SAVED`) or a pinned Answer on a Liveboard (`PINNED`). Defaults to `SAVED`. When using `PINNED`, the `metadata_identifier` must be the container id. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * HTML rendering is not supported for PDF exports of Answers with tables. Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * @param exportAnswerReportRequest */ exportAnswerReport(exportAnswerReportRequest: ExportAnswerReportRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Exports a Liveboard and its visualizations in PDF, PNG, CSV, or XLSX file format. The default `file_format` is CSV. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` and `PDF` require the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To generate a Liveboard report with specific visualizations, add GUIDs or names of the visualizations. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes, including ad hoc changes to visualizations. For more information, see [Liveboard Report API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_liveboard_report_api). * Starting with ThoughtSpot Cloud 10.9.0.cl release, the Liveboard can be exported in the PNG format in the resolution of your choice. To enable this on your instance, contact ThoughtSpot support. When this feature is enabled, the options `include_cover_page`,`include_filter_page` within the `png_options` will not be available for PNG exports. * Starting with the ThoughtSpot Cloud 26.2.0.cl release, * Liveboards can be exported in CSV format. * All visualizations within a Liveboard can be exported as individual CSV files. * When exporting multiple visualizations or the entire Liveboard, the system returns the report as a compressed ZIP file containing the separate CSV files for each visualization. * Liveboards can also be exported in XLSX format. * All selected visualizations are consolidated into a single Excel workbook (.xlsx), with each visualization placed in its own worksheet (tab). * XLSX exports are limited to a maximum of 255 worksheets (tabs) per workbook. * @param exportLiveboardReportRequest */ exportLiveboardReportWithHttpInfo(exportLiveboardReportRequest: ExportLiveboardReportRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Exports a Liveboard and its visualizations in PDF, PNG, CSV, or XLSX file format. The default `file_format` is CSV. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is not enabled, the `DATADOWNLOADING` (**Can download Data**) privilege is required. If RBAC is enabled, the required download privilege depends on the selected `file_format`: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PNG` and `PDF` require the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To generate a Liveboard report with specific visualizations, add GUIDs or names of the visualizations. **NOTE**: * The downloadable file returned in API response file is extensionless. Please rename the downloaded file by typing in the relevant extension. * Optionally, you can define [runtime overrides](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_runtime_overrides) to apply to the Answer data. * To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes, including ad hoc changes to visualizations. For more information, see [Liveboard Report API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_liveboard_report_api). * Starting with ThoughtSpot Cloud 10.9.0.cl release, the Liveboard can be exported in the PNG format in the resolution of your choice. To enable this on your instance, contact ThoughtSpot support. When this feature is enabled, the options `include_cover_page`,`include_filter_page` within the `png_options` will not be available for PNG exports. * Starting with the ThoughtSpot Cloud 26.2.0.cl release, * Liveboards can be exported in CSV format. * All visualizations within a Liveboard can be exported as individual CSV files. * When exporting multiple visualizations or the entire Liveboard, the system returns the report as a compressed ZIP file containing the separate CSV files for each visualization. * Liveboards can also be exported in XLSX format. * All selected visualizations are consolidated into a single Excel workbook (.xlsx), with each visualization placed in its own worksheet (tab). * XLSX exports are limited to a maximum of 255 worksheets (tabs) per workbook. * @param exportLiveboardReportRequest */ exportLiveboardReport(exportLiveboardReportRequest: ExportLiveboardReportRequest, _options?: PromiseConfigurationOptions): Promise; /** * Export manual translations as a CSV file. Version: 26.7.0.cl or later Downloads all manual translations for the org as a CSV file. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The response is a CSV file with columns: `content`, `locale`, `translated-content`. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to export translations from the All-Org context. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. - Returns a `400` error if no translations exist for the targeted org or cluster scope. * @param exportManualTranslationsRequest */ exportManualTranslationsWithHttpInfo(exportManualTranslationsRequest: ExportManualTranslationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Export manual translations as a CSV file. Version: 26.7.0.cl or later Downloads all manual translations for the org as a CSV file. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The response is a CSV file with columns: `content`, `locale`, `translated-content`. - Defaults to `ORG` scope if not specified. - Set `scope` to `CLUSTER` to export translations from the All-Org context. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. - Returns a `400` error if no translations exist for the targeted org or cluster scope. * @param exportManualTranslationsRequest */ exportManualTranslations(exportManualTranslationsRequest: ExportManualTranslationsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Exports memory entries (rules, recipes, and always-apply rules) for the specified data-models as a single YAML payload. The payload can be edited locally and re-submitted through `importMemory`. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to export data-model memories for a given list of data-models. This exported yaml file can then be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To export memory for one or more data-models, the request may include: - `sources`: A list of typed scope groups identifying which data-models to export memory for. Each group contains: - `type`: The source object type for this group — `DATA_MODEL`. - `identifiers`: An array of GUIDs or human-readable `obj_id`s of the data-models to export memory for. obj_ids are resolved server-side before forwarding. The API returns a response object with: - `content`: The serialized memory payload (YAML) — exactly the shape that the `importMemory` API consumes. Edit it locally and pass it back through `importMemory` to apply changes. #### Source Type - **DATA_MODEL**: The `identifiers` are data-model GUIDs. This is the default source type for Spotter memory and covers the rules, recipes and always-apply rules attached directly to a data-model. #### File format The exported `content` is a YAML document with a single top-level `memories` key holding a list of memory items — exactly the format the `importMemory` API consumes. The full format reference (an annotated example, memory item fields, per-type content, and `datamodel_sources` identification) is documented in the `importMemory` API\'s **File format** section. Exported files populate each source\'s `guid` and, if present, `obj_id` as well. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have necessary permissions, or lacks read access on a referenced data-model, or the bearer token does not correspond to the data-model\'s org. | > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param exportMemoryRequest */ exportMemoryWithHttpInfo(exportMemoryRequest: ExportMemoryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Exports memory entries (rules, recipes, and always-apply rules) for the specified data-models as a single YAML payload. The payload can be edited locally and re-submitted through `importMemory`. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to export data-model memories for a given list of data-models. This exported yaml file can then be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To export memory for one or more data-models, the request may include: - `sources`: A list of typed scope groups identifying which data-models to export memory for. Each group contains: - `type`: The source object type for this group — `DATA_MODEL`. - `identifiers`: An array of GUIDs or human-readable `obj_id`s of the data-models to export memory for. obj_ids are resolved server-side before forwarding. The API returns a response object with: - `content`: The serialized memory payload (YAML) — exactly the shape that the `importMemory` API consumes. Edit it locally and pass it back through `importMemory` to apply changes. #### Source Type - **DATA_MODEL**: The `identifiers` are data-model GUIDs. This is the default source type for Spotter memory and covers the rules, recipes and always-apply rules attached directly to a data-model. #### File format The exported `content` is a YAML document with a single top-level `memories` key holding a list of memory items — exactly the format the `importMemory` API consumes. The full format reference (an annotated example, memory item fields, per-type content, and `datamodel_sources` identification) is documented in the `importMemory` API\'s **File format** section. Exported files populate each source\'s `guid` and, if present, `obj_id` as well. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have necessary permissions, or lacks read access on a referenced data-model, or the bearer token does not correspond to the data-model\'s org. | > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param exportMemoryRequest */ exportMemory(exportMemoryRequest: ExportMemoryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. Requires `DATADOWNLOADING` (**Can download Data**) and at least view access to the metadata object. #### Usage guidelines * You can export one or several objects by passing metadata object GUIDs in the `metadata` array. * When exporting TML content for a Liveboard or Answer object, you can set `export_associated` to `true` to retrieve TML content for underlying Worksheets, Tables, or Views, including the GUID of each object within the headers. When `export_associated` is set to `true`, consider retrieving one metadata object at a time. * Set `export_fqns` to `true` to add FQNs of the referenced objects in the TML content. For example, if you send an API request to retrieve TML for a Liveboard and its associated objects, the API returns the TML content with FQNs of the referenced Worksheet. Exporting TML with FQNs is useful if ThoughtSpot has multiple objects with the same name and you want to eliminate ambiguity when importing TML files into ThoughtSpot. It eliminates the need for adding FQNs of the referenced objects manually during the import operation. * To export only the TML of feedbacks associated with an object, set the GUID of the object as `identifier`, and set the `type` as `FEEDBACK` in the `metadata` array. * To export the TML of an object along with the feedbacks associated with it, set the GUID of the object as `identifier`, set the `type` as `LOGIAL_TABLE` in the `metadata` array, and set `export_with_associated_feedbacks` in `export_options` to true. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_export_a_tml). For more information on feedbacks, see [Feedback Documentation](https://docs.thoughtspot.com/cloud/latest/sage-feedback). * @param exportMetadataTMLRequest */ exportMetadataTMLWithHttpInfo(exportMetadataTMLRequest: ExportMetadataTMLRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. Requires `DATADOWNLOADING` (**Can download Data**) and at least view access to the metadata object. #### Usage guidelines * You can export one or several objects by passing metadata object GUIDs in the `metadata` array. * When exporting TML content for a Liveboard or Answer object, you can set `export_associated` to `true` to retrieve TML content for underlying Worksheets, Tables, or Views, including the GUID of each object within the headers. When `export_associated` is set to `true`, consider retrieving one metadata object at a time. * Set `export_fqns` to `true` to add FQNs of the referenced objects in the TML content. For example, if you send an API request to retrieve TML for a Liveboard and its associated objects, the API returns the TML content with FQNs of the referenced Worksheet. Exporting TML with FQNs is useful if ThoughtSpot has multiple objects with the same name and you want to eliminate ambiguity when importing TML files into ThoughtSpot. It eliminates the need for adding FQNs of the referenced objects manually during the import operation. * To export only the TML of feedbacks associated with an object, set the GUID of the object as `identifier`, and set the `type` as `FEEDBACK` in the `metadata` array. * To export the TML of an object along with the feedbacks associated with it, set the GUID of the object as `identifier`, set the `type` as `LOGIAL_TABLE` in the `metadata` array, and set `export_with_associated_feedbacks` in `export_options` to true. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_export_a_tml). For more information on feedbacks, see [Feedback Documentation](https://docs.thoughtspot.com/cloud/latest/sage-feedback). * @param exportMetadataTMLRequest */ exportMetadataTML(exportMetadataTMLRequest: ExportMetadataTMLRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.1.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. ### **Permissions Required** Requires `DATAMANAGEMENT` (**Can manage data**) and `USERMANAGEMENT` (**Can manage users**) privileges. #### **Usage Guidelines** This API is only applicable for `USER`, `GROUP`, and `ROLES` metadata types. - `batch_offset` Indicates the starting position within the complete dataset from which the API should begin returning objects. Useful for paginating results efficiently. - `batch_size` Specifies the number of objects or items to retrieve in a single request. Helps control response size for better performance. - `edoc_format` Defines the format of the TML content. The exported metadata can be in JSON or YAML format. - `export_dependent` Specifies whether to include dependent metadata objects in the export. Ensures related objects are also retrieved if needed. - `all_orgs_override` Indicates whether the export operation applies across all organizations. Useful for multi-tenant environments where cross-org exports are required. * @param exportMetadataTMLBatchedRequest */ exportMetadataTMLBatchedWithHttpInfo(exportMetadataTMLBatchedRequest: ExportMetadataTMLBatchedRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.1.0.cl or later Exports the [TML](https://docs.thoughtspot.com/cloud/latest/tml) representation of metadata objects in JSON or YAML format. ### **Permissions Required** Requires `DATAMANAGEMENT` (**Can manage data**) and `USERMANAGEMENT` (**Can manage users**) privileges. #### **Usage Guidelines** This API is only applicable for `USER`, `GROUP`, and `ROLES` metadata types. - `batch_offset` Indicates the starting position within the complete dataset from which the API should begin returning objects. Useful for paginating results efficiently. - `batch_size` Specifies the number of objects or items to retrieve in a single request. Helps control response size for better performance. - `edoc_format` Defines the format of the TML content. The exported metadata can be in JSON or YAML format. - `export_dependent` Specifies whether to include dependent metadata objects in the export. Ensures related objects are also retrieved if needed. - `all_orgs_override` Indicates whether the export operation applies across all organizations. Useful for multi-tenant environments where cross-org exports are required. * @param exportMetadataTMLBatchedRequest */ exportMetadataTMLBatched(exportMetadataTMLBatchedRequest: ExportMetadataTMLBatchedRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Downloads the active logos (default and wide slots) at the requested scope as a single ZIP archive containing both logo image files. If no custom logo has been uploaded at the ORG scope, the archive contains the resolved logo falling through from the cluster. If no cluster logo has been uploaded, no file is returned. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to download cluster-level logos. - Set `scope` to `ORG` (default) to download logos for the authenticated user\'s org. - The response is a ZIP archive (`application/zip`). Save the response body directly to a `.zip` file. - The archive always contains two files — one for the DEFAULT slot and one for the WIDE slot — even if no custom logo is set at the requested scope. * @param exportStyleLogosRequest * @param [accept] */ exportStyleLogosWithHttpInfo(exportStyleLogosRequest: ExportStyleLogosRequest, accept?: 'application/zip', _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Downloads the active logos (default and wide slots) at the requested scope as a single ZIP archive containing both logo image files. If no custom logo has been uploaded at the ORG scope, the archive contains the resolved logo falling through from the cluster. If no cluster logo has been uploaded, no file is returned. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to download cluster-level logos. - Set `scope` to `ORG` (default) to download logos for the authenticated user\'s org. - The response is a ZIP archive (`application/zip`). Save the response body directly to a `.zip` file. - The archive always contains two files — one for the DEFAULT slot and one for the WIDE slot — even if no custom logo is set at the requested scope. * @param exportStyleLogosRequest * @param [accept] */ exportStyleLogos(exportStyleLogosRequest: ExportStyleLogosRequest, accept?: 'application/zip', _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches data from a saved Answer. Requires at least view access to the saved Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_apis). * @param fetchAnswerDataRequest */ fetchAnswerDataWithHttpInfo(fetchAnswerDataRequest: FetchAnswerDataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches data from a saved Answer. Requires at least view access to the saved Answer. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_apis). * @param fetchAnswerDataRequest */ fetchAnswerData(fetchAnswerDataRequest: FetchAnswerDataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for an Answer object. Requires at least view access to the Answer object. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales\", \"metadata_type\":\"ANSWER\", \"sql_queries\":[ { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales -test\", \"sql_query\":\"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n \\\"ta_2\\\".\\\"PRODUCTNAME\\\" \\\"ca_2\\\", \\n \\\"ta_1\\\".\\\"STORENAME\\\" \\\"ca_3\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_4\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_5\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_3\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_3\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_PRODUCTS\\\" \\\"ta_2\\\"\\n ON \\\"ta_3\\\".\\\"PRODUCTID\\\" = \\\"ta_2\\\".\\\"PRODUCTID\\\"\\nGROUP BY \\n \\\"ca_1\\\", \\n \\\"ca_2\\\", \\n \\\"ca_3\\\"\\n\" } ] } ``` * @param fetchAnswerSqlQueryRequest */ fetchAnswerSqlQueryWithHttpInfo(fetchAnswerSqlQueryRequest: FetchAnswerSqlQueryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for an Answer object. Requires at least view access to the Answer object. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales\", \"metadata_type\":\"ANSWER\", \"sql_queries\":[ { \"metadata_id\":\"8fbe44a8-46ad-4b16-8d39-184b2fada490\", \"metadata_name\":\"Total sales -test\", \"sql_query\":\"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n \\\"ta_2\\\".\\\"PRODUCTNAME\\\" \\\"ca_2\\\", \\n \\\"ta_1\\\".\\\"STORENAME\\\" \\\"ca_3\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_4\\\", \\n CASE\\n WHEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_3\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_5\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_3\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_3\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_PRODUCTS\\\" \\\"ta_2\\\"\\n ON \\\"ta_3\\\".\\\"PRODUCTID\\\" = \\\"ta_2\\\".\\\"PRODUCTID\\\"\\nGROUP BY \\n \\\"ca_1\\\", \\n \\\"ca_2\\\", \\n \\\"ca_3\\\"\\n\" } ] } ``` * @param fetchAnswerSqlQueryRequest */ fetchAnswerSqlQuery(fetchAnswerSqlQueryRequest: FetchAnswerSqlQueryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Gets information about the status of the TML async import task scheduled using the `/api/rest/2.0/metadata/tml/async/import` API call. To fetch the task details, specify the ID of the TML async import task. Requires access to the task ID. The API allows users who initiated the asynchronous TML import via `/api/rest/2.0/metadata/tml/async/import` to view the status of their tasks. Users with administration privilege can view the status of all import tasks initiated by the users in their Org. #### Usage guidelines See [TML API Documentation](https://developers.thoughtspot.com/docs/tml#_fetch_status_of_the_tml_import_task) for usage guidelines. * @param fetchAsyncImportTaskStatusRequest */ fetchAsyncImportTaskStatusWithHttpInfo(fetchAsyncImportTaskStatusRequest: FetchAsyncImportTaskStatusRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Gets information about the status of the TML async import task scheduled using the `/api/rest/2.0/metadata/tml/async/import` API call. To fetch the task details, specify the ID of the TML async import task. Requires access to the task ID. The API allows users who initiated the asynchronous TML import via `/api/rest/2.0/metadata/tml/async/import` to view the status of their tasks. Users with administration privilege can view the status of all import tasks initiated by the users in their Org. #### Usage guidelines See [TML API Documentation](https://developers.thoughtspot.com/docs/tml#_fetch_status_of_the_tml_import_task) for usage guidelines. * @param fetchAsyncImportTaskStatusRequest */ fetchAsyncImportTaskStatus(fetchAsyncImportTaskStatusRequest: FetchAsyncImportTaskStatusRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Fetches column security rules for specified tables. This 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. #### Usage guidelines - Provide an array of table identifiers using either `identifier` (GUID or name) or `obj_identifier` (object ID) - At least one of `identifier` or `obj_identifier` must be provided for each table - The API returns column security rules for all specified tables - Users must have appropriate permissions to access security rules for the specified tables #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables #### Example request ```json { \"tables\": [ { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\" } ] } ``` #### Response format The API returns an array of `ColumnSecurityRuleResponse` objects wrapped in a `data` field. Each `ColumnSecurityRuleResponse` object contains: - Table information (GUID and object ID) - Array of column security rules with column details, group access, and source table information #### Example response ```json { \"data\": [ { \"guid\": \"table-guid\", \"objId\": \"table-object-id\", \"columnSecurityRules\": [ { \"column\": { \"id\": \"col_123\", \"name\": \"Salary\" }, \"groups\": [ { \"id\": \"group_1\", \"name\": \"HR Department\" } ], \"sourceTableDetails\": { \"id\": \"source-table-guid\", \"name\": \"Employee_Data\" } } ] } ] } ``` * @param fetchColumnSecurityRulesRequest */ fetchColumnSecurityRulesWithHttpInfo(fetchColumnSecurityRulesRequest: FetchColumnSecurityRulesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.12.0.cl or later Fetches column security rules for specified tables. This 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. #### Usage guidelines - Provide an array of table identifiers using either `identifier` (GUID or name) or `obj_identifier` (object ID) - At least one of `identifier` or `obj_identifier` must be provided for each table - The API returns column security rules for all specified tables - Users must have appropriate permissions to access security rules for the specified tables #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables #### Example request ```json { \"tables\": [ { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\" } ] } ``` #### Response format The API returns an array of `ColumnSecurityRuleResponse` objects wrapped in a `data` field. Each `ColumnSecurityRuleResponse` object contains: - Table information (GUID and object ID) - Array of column security rules with column details, group access, and source table information #### Example response ```json { \"data\": [ { \"guid\": \"table-guid\", \"objId\": \"table-object-id\", \"columnSecurityRules\": [ { \"column\": { \"id\": \"col_123\", \"name\": \"Salary\" }, \"groups\": [ { \"id\": \"group_1\", \"name\": \"HR Department\" } ], \"sourceTableDetails\": { \"id\": \"source-table-guid\", \"name\": \"Employee_Data\" } } ] } ] } ``` * @param fetchColumnSecurityRulesRequest */ fetchColumnSecurityRules(fetchColumnSecurityRulesRequest: FetchColumnSecurityRulesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Validates the difference in connection metadata between CDW and ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) Returns a boolean indicating whether there is any difference between the connection metadata at ThoughtSpot and CDW. To get the connection metadata difference status, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ fetchConnectionDiffStatusWithHttpInfo(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Validates the difference in connection metadata between CDW and ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) Returns a boolean indicating whether there is any difference between the connection metadata at ThoughtSpot and CDW. To get the connection metadata difference status, pass the connection GUID as `connection_identifier` in the API request. * @param connectionIdentifier GUID of the connection */ fetchConnectionDiffStatus(connectionIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets data from a Liveboard object and its visualization. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To get data for specific visualizations, add the GUIDs or names of the visualizations in the API request. To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes. If the new Liveboard experience mode, the transient content includes ad hoc changes to visualizations such as sorting, toggling of legends, and data drill down. For more information, and see [Liveboard data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_fetch_liveboard_data_api). * @param fetchLiveboardDataRequest */ fetchLiveboardDataWithHttpInfo(fetchLiveboardDataRequest: FetchLiveboardDataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets data from a Liveboard object and its visualization. Requires at least view access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines In the request body, specify the GUID or name of the Liveboard. To get data for specific visualizations, add the GUIDs or names of the visualizations in the API request. To include unsaved changes in the report, pass the `transient_pinboard_content` script generated from the `getExportRequestForCurrentPinboard` method in the Visual Embed SDK. Upon successful execution, the API returns the report with unsaved changes. If the new Liveboard experience mode, the transient content includes ad hoc changes to visualizations such as sorting, toggling of legends, and data drill down. For more information, and see [Liveboard data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_fetch_liveboard_data_api). * @param fetchLiveboardDataRequest */ fetchLiveboardData(fetchLiveboardDataRequest: FetchLiveboardDataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for a Liveboard object and its visualizations. Requires at least view access to the Liveboard object. To get SQL query data for a Liveboard, specify the GUID of the Liveboard. Optionally, you can add an array of visualization GUIDs to retrieve the SQL query data for visualizations in the Liveboard. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\": \"fa68ae91-7588-4136-bacd-d71fb12dda69\", \"metadata_name\": \"Total Sales\", \"metadata_type\": \"LIVEBOARD\", \"sql_queries\": [ { \"metadata_id\": \"b3b6d2b9-089a-490c-8e16-b144650b7843\", \"metadata_name\": \"Total quantity purchased, Total sales by region\", \"sql_query\": \"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_2\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_3\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_2\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_2\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\nGROUP BY \\\"ca_1\\\"\" } ] } ``` * @param fetchLiveboardSqlQueryRequest */ fetchLiveboardSqlQueryWithHttpInfo(fetchLiveboardSqlQueryRequest: FetchLiveboardSqlQueryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches the underlying SQL query data for a Liveboard object and its visualizations. Requires at least view access to the Liveboard object. To get SQL query data for a Liveboard, specify the GUID of the Liveboard. Optionally, you can add an array of visualization GUIDs to retrieve the SQL query data for visualizations in the Liveboard. Upon successful execution, the API returns the SQL queries for the specified object as shown in this example: ``` { \"metadata_id\": \"fa68ae91-7588-4136-bacd-d71fb12dda69\", \"metadata_name\": \"Total Sales\", \"metadata_type\": \"LIVEBOARD\", \"sql_queries\": [ { \"metadata_id\": \"b3b6d2b9-089a-490c-8e16-b144650b7843\", \"metadata_name\": \"Total quantity purchased, Total sales by region\", \"sql_query\": \"SELECT \\n \\\"ta_1\\\".\\\"REGION\\\" \\\"ca_1\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"QUANTITYPURCHASED\\\")\\n ELSE 0\\n END \\\"ca_2\\\", \\n CASE\\n WHEN sum(\\\"ta_2\\\".\\\"SALES\\\") IS NOT NULL THEN sum(\\\"ta_2\\\".\\\"SALES\\\")\\n ELSE 0\\n END \\\"ca_3\\\"\\nFROM \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"FACT_RETAPP_SALES\\\" \\\"ta_2\\\"\\n JOIN \\\"RETAILAPPAREL\\\".\\\"PUBLIC\\\".\\\"DIM_RETAPP_STORES\\\" \\\"ta_1\\\"\\n ON \\\"ta_2\\\".\\\"STOREID\\\" = \\\"ta_1\\\".\\\"STOREID\\\"\\nGROUP BY \\\"ca_1\\\"\" } ] } ``` * @param fetchLiveboardSqlQueryRequest */ fetchLiveboardSqlQuery(fetchLiveboardSqlQueryRequest: FetchLiveboardSqlQueryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches security audit logs. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the [Admin Control](https://developers.thoughtspot.com/docs/rbac#_admin_control) privileges are required. #### Usage guidelines By default, the API retrieves logs for the last 24 hours. You can set a custom duration in EPOCH time. Make sure the log duration specified in your API request doesn’t exceed 24 hours. If you must fetch logs for a longer time range, modify the duration and make multiple sequential API requests. Upon successful execution, the API returns logs with the following information: * timestamp of the event * event ID * event type * name and GUID of the user * IP address of ThoughtSpot instance For more information see [Audit logs Documentation](https://developers.thoughtspot.com/docs/audit-logs). * @param fetchLogsRequest */ fetchLogsWithHttpInfo(fetchLogsRequest: FetchLogsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Fetches security audit logs. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the [Admin Control](https://developers.thoughtspot.com/docs/rbac#_admin_control) privileges are required. #### Usage guidelines By default, the API retrieves logs for the last 24 hours. You can set a custom duration in EPOCH time. Make sure the log duration specified in your API request doesn’t exceed 24 hours. If you must fetch logs for a longer time range, modify the duration and make multiple sequential API requests. Upon successful execution, the API returns logs with the following information: * timestamp of the event * event ID * event type * name and GUID of the user * IP address of ThoughtSpot instance For more information see [Audit logs Documentation](https://developers.thoughtspot.com/docs/audit-logs). * @param fetchLogsRequest */ fetchLogs(fetchLogsRequest: FetchLogsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.3.0.cl or later This API fetches the object privileges present for the given list of principals (user or group), on the given set of objects. It supports pagination, which can be enabled and configured using the request parameters. It provides users access to certain features based on privilege based access control. #### Usage guidelines - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals for which you want to retrieve object privilege information in the `principals` array. - Specify the `type` (`LOGICAL_TABLE`) and `identifier` (either GUID or name) of the metadata objects for which you want to retrieve object privilege information in the `metadata` array. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - To control the offset from where principals have to be fetched, use `record_offset`. When `record_offset` is 0, information is fetched from the beginning. - To control the number of principals to be fetched, use `record_size`. Default `record_size` is 20. - Ensure `record_offset` for a subsequent request is one more than the value of `record_size` of the previous request. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ], \"metadata\": [ { \"type\": \"metadata-type-1\", \"identifier\": \"metadata-guid-or-name-1\" }, { \"type\": \"metadata-type-2\", \"identifier\": \"metadata-guid-or-name-2\" } ], \"record_offset\": 0, \"record_size\": 20 } ``` #### Response format The API returns an array of `metadata_object_privileges` objects wrapped in JSON. Each `metadata_object_privileges` object contains: - Metadata information (GUID, name and type) - Array of `principal_object_privilege_info`. - Each `principal_object_privilege_info` contains: - Principal type. All principals of this type are listed as described below. - Array of `principal_object_privileges`. - Each `principal_object_privileges` contains: - Principal information (GUID, name, subtype) - List of applied object level privileges. #### Example response ```json { \"metadata_object_privileges\": [ { \"metadata_id\": \"metadata-guid-1\", \"metadata_name\": \"metadata-name-1\", \"metadata_type\": \"metadata-type-1\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" } ] }, { \"principal_type\": \"principal-type-2\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-3\", \"principal_name\": \"principal-guid-4\", \"principal_sub_type\": \"principal-sub-type-4\", \"object_privileges\": \"[object-privilege-1]\" } ] } ] }, { \"metadata_id\": \"metadata-guid-2\", \"metadata_name\": \"metadata-name-2\", \"metadata_type\": \"metadata-type-2\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-3, object-privilege-4]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-4]\" } ] } ] } ] } ``` * @param fetchObjectPrivilegesRequest */ fetchObjectPrivilegesWithHttpInfo(fetchObjectPrivilegesRequest: FetchObjectPrivilegesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.3.0.cl or later This API fetches the object privileges present for the given list of principals (user or group), on the given set of objects. It supports pagination, which can be enabled and configured using the request parameters. It provides users access to certain features based on privilege based access control. #### Usage guidelines - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals for which you want to retrieve object privilege information in the `principals` array. - Specify the `type` (`LOGICAL_TABLE`) and `identifier` (either GUID or name) of the metadata objects for which you want to retrieve object privilege information in the `metadata` array. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - To control the offset from where principals have to be fetched, use `record_offset`. When `record_offset` is 0, information is fetched from the beginning. - To control the number of principals to be fetched, use `record_size`. Default `record_size` is 20. - Ensure `record_offset` for a subsequent request is one more than the value of `record_size` of the previous request. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ], \"metadata\": [ { \"type\": \"metadata-type-1\", \"identifier\": \"metadata-guid-or-name-1\" }, { \"type\": \"metadata-type-2\", \"identifier\": \"metadata-guid-or-name-2\" } ], \"record_offset\": 0, \"record_size\": 20 } ``` #### Response format The API returns an array of `metadata_object_privileges` objects wrapped in JSON. Each `metadata_object_privileges` object contains: - Metadata information (GUID, name and type) - Array of `principal_object_privilege_info`. - Each `principal_object_privilege_info` contains: - Principal type. All principals of this type are listed as described below. - Array of `principal_object_privileges`. - Each `principal_object_privileges` contains: - Principal information (GUID, name, subtype) - List of applied object level privileges. #### Example response ```json { \"metadata_object_privileges\": [ { \"metadata_id\": \"metadata-guid-1\", \"metadata_name\": \"metadata-name-1\", \"metadata_type\": \"metadata-type-1\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-1, object-privilege-2]\" } ] }, { \"principal_type\": \"principal-type-2\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-3\", \"principal_name\": \"principal-guid-4\", \"principal_sub_type\": \"principal-sub-type-4\", \"object_privileges\": \"[object-privilege-1]\" } ] } ] }, { \"metadata_id\": \"metadata-guid-2\", \"metadata_name\": \"metadata-name-2\", \"metadata_type\": \"metadata-type-2\", \"principal_object_privilege_info\": [ { \"principal_type\": \"principal-type-1\", \"principal_object_privileges\": [ { \"principal_id\": \"principal-guid-1\", \"principal_name\": \"principal-name-1\", \"principal_sub_type\": \"principal-sub-type-1\", \"object_privileges\": \"[object-privilege-3, object-privilege-4]\" }, { \"principal_id\": \"principal-guid-2\", \"principal_name\": \"principal-name-2\", \"principal_sub_type\": \"principal-sub-type-2\", \"object_privileges\": \"[object-privilege-4]\" } ] } ] } ] } ``` * @param fetchObjectPrivilegesRequest */ fetchObjectPrivileges(fetchObjectPrivilegesRequest: FetchObjectPrivilegesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches object permission details for a given principal object such as a user and group. Requires view access to the metadata object. #### Usage guidelines * To get a list of all metadata objects that a user or group can access, specify the `type` and GUID or name of the principal. * To get permission details for a specific object, add the `type` and GUID or name of the metadata object to your API request. Upon successful execution, the API returns a list of metadata objects and permission details for each object. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOfPrincipalsRequest */ fetchPermissionsOfPrincipalsWithHttpInfo(fetchPermissionsOfPrincipalsRequest: FetchPermissionsOfPrincipalsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches object permission details for a given principal object such as a user and group. Requires view access to the metadata object. #### Usage guidelines * To get a list of all metadata objects that a user or group can access, specify the `type` and GUID or name of the principal. * To get permission details for a specific object, add the `type` and GUID or name of the metadata object to your API request. Upon successful execution, the API returns a list of metadata objects and permission details for each object. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOfPrincipalsRequest */ fetchPermissionsOfPrincipals(fetchPermissionsOfPrincipalsRequest: FetchPermissionsOfPrincipalsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Fetches permission details for a given metadata object. Requires view access to the metadata object. #### Usage guidelines * To fetch a list of users and groups for a metadata object, specify `type` and GUID or name of the metadata object. * To get permission details for a specific user or group, add `type` and GUID or name of the principal object to your API request. Upon successful execution, the API returns permission details and principal information for the object specified in the API request. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOnMetadataRequest */ fetchPermissionsOnMetadataWithHttpInfo(fetchPermissionsOnMetadataRequest: FetchPermissionsOnMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Fetches permission details for a given metadata object. Requires view access to the metadata object. #### Usage guidelines * To fetch a list of users and groups for a metadata object, specify `type` and GUID or name of the metadata object. * To get permission details for a specific user or group, add `type` and GUID or name of the principal object to your API request. Upon successful execution, the API returns permission details and principal information for the object specified in the API request. **Warning**: This API sets `record_size` to `-1` by default, which fetches all records in a single response. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. If the object or principal count is high, set `record_size` to a smaller value and iterate through pages programmatically instead of relying on the default. * @param fetchPermissionsOnMetadataRequest */ fetchPermissionsOnMetadata(fetchPermissionsOnMetadataRequest: FetchPermissionsOnMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Enforces logout on current user sessions. Use this API with caution as it may invalidate active user sessions and force users to re-login. Make sure you specify the usernames or GUIDs. If you pass null values in the API call, all user sessions on your cluster become invalid, and the users are forced to re-login. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param forceLogoutUsersRequest */ forceLogoutUsersWithHttpInfo(forceLogoutUsersRequest: ForceLogoutUsersRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Enforces logout on current user sessions. Use this API with caution as it may invalidate active user sessions and force users to re-login. Make sure you specify the usernames or GUIDs. If you pass null values in the API call, all user sessions on your cluster become invalid, and the users are forced to re-login. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param forceLogoutUsersRequest */ forceLogoutUsers(forceLogoutUsersRequest: ForceLogoutUsersRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Exports a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal) in the CSV format. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines Use this API to download a custom calendar in the CSV file format. In your API request, specify the following parameters. * Start and end date of the calendar. For \"month offset\" calendars, the start date must match the month defined in the `month_offset` attribute. You can also specify optional parameters such as the starting day of the week and prefixes for the quarter and year labels. * @param generateCSVRequest */ generateCSVWithHttpInfo(generateCSVRequest: GenerateCSVRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Exports a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal) in the CSV format. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines Use this API to download a custom calendar in the CSV file format. In your API request, specify the following parameters. * Start and end date of the calendar. For \"month offset\" calendars, the start date must match the month defined in the `month_offset` attribute. You can also specify optional parameters such as the starting day of the week and prefixes for the quarter and year labels. * @param generateCSVRequest */ generateCSV(generateCSVRequest: GenerateCSVRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.6.0.cl or later Retrieves the admin instructions currently configured for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. Requires admin privileges. Only users with org admin access can retrieve agent instructions. #### Usage guidelines No input parameters are required. The API returns the stored `AgentInstructions` record for the caller\'s tenant and org. If no instructions have been configured yet, the API returns a record with an empty `instructions` field and `null` values for `id`, `created_at`, `updated_at`, and `last_updated_by`. If the request is successful, the response includes: - `id`: unique identifier of the instructions record - `instructions`: the configured instructions text - `created_at`: ISO timestamp when the instructions were first saved - `updated_at`: ISO timestamp when the instructions were last updated - `last_updated_by`: user ID of the admin who last updated the instructions (may be `null` for older records) #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to read agent instructions. | > ###### Note: > > - Use `setAgentInstructions` to create or update agent instructions. > - Available from version 26.6.0.cl and later. */ getAgentInstructionsWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Retrieves the admin instructions currently configured for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. Requires admin privileges. Only users with org admin access can retrieve agent instructions. #### Usage guidelines No input parameters are required. The API returns the stored `AgentInstructions` record for the caller\'s tenant and org. If no instructions have been configured yet, the API returns a record with an empty `instructions` field and `null` values for `id`, `created_at`, `updated_at`, and `last_updated_by`. If the request is successful, the response includes: - `id`: unique identifier of the instructions record - `instructions`: the configured instructions text - `created_at`: ISO timestamp when the instructions were first saved - `updated_at`: ISO timestamp when the instructions were last updated - `last_updated_by`: user ID of the admin who last updated the instructions (may be `null` for older records) #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to read agent instructions. | > ###### Note: > > - Use `setAgentInstructions` to create or update agent instructions. > - Available from version 26.6.0.cl and later. */ getAgentInstructions(_options?: PromiseConfigurationOptions): Promise; /** * Retrieves the full public-safe content of a saved agent conversation: ordered turns (user messages and agent response items) and sanitized code-execution file metadata. Internal graph or branch state, Azure file identifiers, and messages with a `SYSTEM` source are omitted. The full answer payload is not embedded; fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Retrieves the full public-safe content of a saved agent conversation. Returns ordered conversation messages — each carrying an optional user prompt (the user\'s message and any attachments) and the agent response items produced for that turn — plus sanitized metadata for any files generated by the code-execution tool. Use this endpoint to render a persisted conversation in a UI, build an audit trail, or post-process a completed conversation. The full answer payload is not embedded — fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` _(path parameter)_: the unique ID of the conversation, as returned by `createAgentConversation` or `getConversationList`. If the request is successful, the response contains two top-level fields: | Field | Type | Description | | ---------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | | `messages` | `ConversationMessage[]` | Ordered oldest to newest. Empty array when the conversation has no messages. | | `code_execution_files` | `CodeExecutionFileMetadata[]` | List of sanitized file metadata entries (one per `file_id`). Covers all code-execution-generated files referenced anywhere in the conversation. Empty array when there are none. | No other top-level fields are returned. #### ConversationMessage fields | Field | Type | Description | | --------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------- | | `message_id` | `String` | Stable identifier for the turn. For liveboard-started synthetic first turns, this is the root node identifier. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch for the turn. | | `user_prompt` | `UserPrompt` | User-authored prompt that started the turn (message and attachments). `null` for liveboard-started synthetic first turns. | | `response_items` | `ConversationResponseItem[]` | Agent-side output produced in response to this turn. Empty array for in-progress turns. | #### UserPrompt fields | Field | Type | Description | | ------------- | ---------------------- | ---------------------------------------------------------------------------------------------------- | | `message` | `UserMessage` | User query that started the turn. `null` for liveboard-started synthetic first turns. | | `attachments` | `UserAttachmentItem[]` | Files or connector resources attached to the user message. Empty array when there are no attachments. | #### UserMessage fields | Field | Type | Description | | ------------ | -------- | --------------------------------------------- | | `message_id` | `String` | Unique identifier of the user-source message. | | `content` | `String` | Text body of the user query. | #### UserAttachmentItem fields Discriminated by `type`. Only `\"file\"` or `\"resource\"` are valid values. Only the fields for the indicated variant are populated. See `ConversationResponseItem` below for the field definitions of the `file` and `resource` variants — `UserAttachmentItem` uses the same fields. #### ConversationResponseItem fields Every item carries a `type` discriminator and these shared fields: | Field | Type | Description | | --------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ | | `type` | `String` | Discriminator. One of `\"text\"`, `\"tool_call\"`, `\"tool_result\"`, `\"answer\"`, `\"file\"`, `\"resource\"`, `\"search_datasets\"`. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch when this item was produced. | | `is_thinking` | `Boolean` | `true` when the item represents internal agent reasoning rather than user-facing output. Consumers may hide or collapse these. | | `step_title` | `String` | Human-readable label for the agent step producing this item (e.g. `\"Searching\"`, `\"Visualising\"`). | Variant-specific fields: - **`text`** — agent text output: `content` (String), `content_type` (`ContentMimeType` enum), `file_reference` (FileReference). - **`tool_call`** — agent invoked a tool: `tool_call_id` (String), `tool_name` (String), `arguments` (JSON object). - **`tool_result`** — result returned from a tool invocation: `tool_call_id`, `tool_name`, `content`, `content_type` (`ContentMimeType` enum), `success` (Boolean). - **`answer`** — slim reference to a saved answer: `answer_id` (String), `tool_call_id`, `tool_name`. - **`file`** — uploaded or generated files: `files` (`PublicFileInfo[]`). - **`resource`** — MCP connector resource: `title`, `uri`, `name`, `mime_type`, `description`, `size` (Int), `connector_id`, `connector_name`, `connector_slug`, `transport_type` (`TransportType` enum). - **`search_datasets`** — dataset discovery result: `text` (String), `data_sources` (`DataSourceInfo[]`). Clients should switch on `type` and ignore unknown variants for forward-compatibility. #### content_type values `content_type` is the `ContentMimeType` enum. The following values are defined: | Value | Wire MIME | Meaning | | --------------------------- | --------------------------- | ---------------------------------------------------- | | `TEXT_PLAIN` | `text/plain` | Plain text. Default for `tool_result`. | | `TEXT_MARKDOWN` | `text/markdown` | Markdown. Default for `text`. | | `TEXT_X_MARKDOWN_WITH_CODE` | `text/x-markdown-with-code` | Markdown whose body starts with a fenced code block. | | `TEXT_HTML` | `text/html` | Raw HTML. | #### transport_type values `transport_type` is the `TransportType` enum used on the `resource` variant. | Value | Meaning | | ------------------ | --------------------------------------------- | | `STREAMABLE_HTTP` | Streamable HTTP transport (default for MCP). | | `SSE` | Server-sent events transport. | #### FileReference fields | Field | Type | Description | | ------------------------ | -------- | ------------------------------------------------------------ | | `file_id` | `String` | Unique identifier of the code-execution-generated file. | | `display_name` | `String` | Human-readable file name. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | Cross-reference `file_id` against `code_execution_files` to retrieve full metadata including the `expired` flag before attempting a download. #### PublicFileInfo fields | Field | Type | Description | | ------------------------ | -------- | -------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `size_bytes` | `Int` | File size in bytes. | #### CodeExecutionFileMetadata fields Each entry in the `code_execution_files` array contains: | Field | Type | Description | | ------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `expired` | `Boolean` | When `true`, the underlying file is no longer retrievable from code-execution storage; UIs should disable download and preview. | #### Loading answer payloads Each `AnswerResponseItem` in the response contains an `answer_id` field. Pass this value as the `answer_identifier` parameter to `loadAnswer` to retrieve the full answer payload (TML tokens, visualization metadata) for that item. #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/messages ``` #### Example response ```json { \"messages\": [ { \"message_id\": \"node_u_01\", \"timestamp_in_millis\": 1744000000000, \"user_prompt\": { \"message\": { \"message_id\": \"msg_u_01\", \"content\": \"Show me revenue by region as a chart.\" }, \"attachments\": [] }, \"response_items\": [ { \"type\": \"tool_call\", \"tool_call_id\": \"toolu_01ABC\", \"tool_name\": \"search_datasets\", \"step_title\": \"Searching datasets\", \"arguments\": { \"query\": \"revenue\" }, \"timestamp_in_millis\": 1744000001000, \"is_thinking\": false }, { \"type\": \"answer\", \"answer_id\": \"ans_01XYZ\", \"tool_call_id\": \"toolu_02DEF\", \"tool_name\": \"fetch_and_visualize\", \"step_title\": \"Visualising\", \"timestamp_in_millis\": 1744000004000, \"is_thinking\": false }, { \"type\": \"text\", \"content\": \"Revenue is highest in APAC.\", \"content_type\": \"TEXT_MARKDOWN\", \"timestamp_in_millis\": 1744000005000, \"is_thinking\": false, \"step_title\": null, \"file_reference\": { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"created_time_in_millis\": 1744027200000 } } ] } ], \"code_execution_files\": [ { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"file_type\": \"csv\", \"created_time_in_millis\": 1744027200000, \"expired\": false } ] } ``` #### Example: liveboard-started conversation When a conversation is initiated from a saved liveboard visualization rather than a user query, the first turn is synthetic. `user_prompt` is `null`, and `response_items` contains a single `answer` item referencing the seed visualization. ```json { \"messages\": [ { \"message_id\": \"ROOT_NODE\", \"timestamp_in_millis\": 1743999000000, \"user_prompt\": null, \"response_items\": [ { \"type\": \"answer\", \"answer_id\": \"lb_seed_01\", \"tool_call_id\": null, \"tool_name\": null, \"step_title\": null, \"timestamp_in_millis\": 1743999000000, \"is_thinking\": false } ] } ], \"code_execution_files\": [] } ``` Subsequent turns follow the normal user-to-agent pattern. #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation exists with the given identifier for the authenticated user. | > ###### Note: > > - Messages with an internal `SYSTEM` source are always dropped from the response. > - In-progress turns are still returned with an empty `response_items` array so clients can render the user message immediately. > - Do not assume every `tool_call` has a paired `tool_result` or `answer` — an interrupted conversation can leave a dangling call. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to load. */ getConversationWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Retrieves the full public-safe content of a saved agent conversation: ordered turns (user messages and agent response items) and sanitized code-execution file metadata. Internal graph or branch state, Azure file identifiers, and messages with a `SYSTEM` source are omitted. The full answer payload is not embedded; fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Retrieves the full public-safe content of a saved agent conversation. Returns ordered conversation messages — each carrying an optional user prompt (the user\'s message and any attachments) and the agent response items produced for that turn — plus sanitized metadata for any files generated by the code-execution tool. Use this endpoint to render a persisted conversation in a UI, build an audit trail, or post-process a completed conversation. The full answer payload is not embedded — fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` _(path parameter)_: the unique ID of the conversation, as returned by `createAgentConversation` or `getConversationList`. If the request is successful, the response contains two top-level fields: | Field | Type | Description | | ---------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | | `messages` | `ConversationMessage[]` | Ordered oldest to newest. Empty array when the conversation has no messages. | | `code_execution_files` | `CodeExecutionFileMetadata[]` | List of sanitized file metadata entries (one per `file_id`). Covers all code-execution-generated files referenced anywhere in the conversation. Empty array when there are none. | No other top-level fields are returned. #### ConversationMessage fields | Field | Type | Description | | --------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------- | | `message_id` | `String` | Stable identifier for the turn. For liveboard-started synthetic first turns, this is the root node identifier. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch for the turn. | | `user_prompt` | `UserPrompt` | User-authored prompt that started the turn (message and attachments). `null` for liveboard-started synthetic first turns. | | `response_items` | `ConversationResponseItem[]` | Agent-side output produced in response to this turn. Empty array for in-progress turns. | #### UserPrompt fields | Field | Type | Description | | ------------- | ---------------------- | ---------------------------------------------------------------------------------------------------- | | `message` | `UserMessage` | User query that started the turn. `null` for liveboard-started synthetic first turns. | | `attachments` | `UserAttachmentItem[]` | Files or connector resources attached to the user message. Empty array when there are no attachments. | #### UserMessage fields | Field | Type | Description | | ------------ | -------- | --------------------------------------------- | | `message_id` | `String` | Unique identifier of the user-source message. | | `content` | `String` | Text body of the user query. | #### UserAttachmentItem fields Discriminated by `type`. Only `\"file\"` or `\"resource\"` are valid values. Only the fields for the indicated variant are populated. See `ConversationResponseItem` below for the field definitions of the `file` and `resource` variants — `UserAttachmentItem` uses the same fields. #### ConversationResponseItem fields Every item carries a `type` discriminator and these shared fields: | Field | Type | Description | | --------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ | | `type` | `String` | Discriminator. One of `\"text\"`, `\"tool_call\"`, `\"tool_result\"`, `\"answer\"`, `\"file\"`, `\"resource\"`, `\"search_datasets\"`. | | `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch when this item was produced. | | `is_thinking` | `Boolean` | `true` when the item represents internal agent reasoning rather than user-facing output. Consumers may hide or collapse these. | | `step_title` | `String` | Human-readable label for the agent step producing this item (e.g. `\"Searching\"`, `\"Visualising\"`). | Variant-specific fields: - **`text`** — agent text output: `content` (String), `content_type` (`ContentMimeType` enum), `file_reference` (FileReference). - **`tool_call`** — agent invoked a tool: `tool_call_id` (String), `tool_name` (String), `arguments` (JSON object). - **`tool_result`** — result returned from a tool invocation: `tool_call_id`, `tool_name`, `content`, `content_type` (`ContentMimeType` enum), `success` (Boolean). - **`answer`** — slim reference to a saved answer: `answer_id` (String), `tool_call_id`, `tool_name`. - **`file`** — uploaded or generated files: `files` (`PublicFileInfo[]`). - **`resource`** — MCP connector resource: `title`, `uri`, `name`, `mime_type`, `description`, `size` (Int), `connector_id`, `connector_name`, `connector_slug`, `transport_type` (`TransportType` enum). - **`search_datasets`** — dataset discovery result: `text` (String), `data_sources` (`DataSourceInfo[]`). Clients should switch on `type` and ignore unknown variants for forward-compatibility. #### content_type values `content_type` is the `ContentMimeType` enum. The following values are defined: | Value | Wire MIME | Meaning | | --------------------------- | --------------------------- | ---------------------------------------------------- | | `TEXT_PLAIN` | `text/plain` | Plain text. Default for `tool_result`. | | `TEXT_MARKDOWN` | `text/markdown` | Markdown. Default for `text`. | | `TEXT_X_MARKDOWN_WITH_CODE` | `text/x-markdown-with-code` | Markdown whose body starts with a fenced code block. | | `TEXT_HTML` | `text/html` | Raw HTML. | #### transport_type values `transport_type` is the `TransportType` enum used on the `resource` variant. | Value | Meaning | | ------------------ | --------------------------------------------- | | `STREAMABLE_HTTP` | Streamable HTTP transport (default for MCP). | | `SSE` | Server-sent events transport. | #### FileReference fields | Field | Type | Description | | ------------------------ | -------- | ------------------------------------------------------------ | | `file_id` | `String` | Unique identifier of the code-execution-generated file. | | `display_name` | `String` | Human-readable file name. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | Cross-reference `file_id` against `code_execution_files` to retrieve full metadata including the `expired` flag before attempting a download. #### PublicFileInfo fields | Field | Type | Description | | ------------------------ | -------- | -------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `size_bytes` | `Int` | File size in bytes. | #### CodeExecutionFileMetadata fields Each entry in the `code_execution_files` array contains: | Field | Type | Description | | ------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- | | `file_id` | `String` | Unique identifier of the file. | | `display_name` | `String` | Human-readable file name. | | `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. | | `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. | | `expired` | `Boolean` | When `true`, the underlying file is no longer retrievable from code-execution storage; UIs should disable download and preview. | #### Loading answer payloads Each `AnswerResponseItem` in the response contains an `answer_id` field. Pass this value as the `answer_identifier` parameter to `loadAnswer` to retrieve the full answer payload (TML tokens, visualization metadata) for that item. #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/messages ``` #### Example response ```json { \"messages\": [ { \"message_id\": \"node_u_01\", \"timestamp_in_millis\": 1744000000000, \"user_prompt\": { \"message\": { \"message_id\": \"msg_u_01\", \"content\": \"Show me revenue by region as a chart.\" }, \"attachments\": [] }, \"response_items\": [ { \"type\": \"tool_call\", \"tool_call_id\": \"toolu_01ABC\", \"tool_name\": \"search_datasets\", \"step_title\": \"Searching datasets\", \"arguments\": { \"query\": \"revenue\" }, \"timestamp_in_millis\": 1744000001000, \"is_thinking\": false }, { \"type\": \"answer\", \"answer_id\": \"ans_01XYZ\", \"tool_call_id\": \"toolu_02DEF\", \"tool_name\": \"fetch_and_visualize\", \"step_title\": \"Visualising\", \"timestamp_in_millis\": 1744000004000, \"is_thinking\": false }, { \"type\": \"text\", \"content\": \"Revenue is highest in APAC.\", \"content_type\": \"TEXT_MARKDOWN\", \"timestamp_in_millis\": 1744000005000, \"is_thinking\": false, \"step_title\": null, \"file_reference\": { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"created_time_in_millis\": 1744027200000 } } ] } ], \"code_execution_files\": [ { \"file_id\": \"revenue_by_region.csv\", \"display_name\": \"revenue_by_region.csv\", \"file_type\": \"csv\", \"created_time_in_millis\": 1744027200000, \"expired\": false } ] } ``` #### Example: liveboard-started conversation When a conversation is initiated from a saved liveboard visualization rather than a user query, the first turn is synthetic. `user_prompt` is `null`, and `response_items` contains a single `answer` item referencing the seed visualization. ```json { \"messages\": [ { \"message_id\": \"ROOT_NODE\", \"timestamp_in_millis\": 1743999000000, \"user_prompt\": null, \"response_items\": [ { \"type\": \"answer\", \"answer_id\": \"lb_seed_01\", \"tool_call_id\": null, \"tool_name\": null, \"step_title\": null, \"timestamp_in_millis\": 1743999000000, \"is_thinking\": false } ] } ], \"code_execution_files\": [] } ``` Subsequent turns follow the normal user-to-agent pattern. #### Error responses | Code | Description | | ---- | --------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation exists with the given identifier for the authenticated user. | > ###### Note: > > - Messages with an internal `SYSTEM` source are always dropped from the response. > - In-progress turns are still returned with an empty `response_items` array so clients can render the user message immediately. > - Do not assume every `tool_call` has a paired `tool_result` or `answer` — an interrupted conversation can leave a dangling call. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to load. */ getConversation(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Retrieves the list of saved agent conversations for the currently authenticated user. Only conversations created with `enable_save_chat: true` are returned. Version: 26.7.0.cl or later Retrieves a paginated list of saved agent conversations for the currently authenticated user. Only conversations that were created with `enable_save_chat: true` in `createAgentConversation` are returned. Requires `CAN_USE_SPOTTER` privilege. #### Usage guidelines The request supports the following optional query parameters: - `limit`: maximum number of conversations to return. Use this together with `offset` for pagination. - `offset`: number of conversations to skip before returning results. Defaults to `0`. - `skip_empty`: when `true` (default), conversations with no messages are excluded from the results. Set to `false` to include empty conversations. If the request is successful, the response includes a `conversations` array. Each entry contains: - `conversation_identifier`: the unique ID of the conversation, used as input to `sendAgentConversationMessage`, `updateConversation`, `deleteConversation`, `stopConversation`, and `loadAnswer` - `conversation_title`: the display name of the conversation - `created_at`: ISO 8601 timestamp of when the conversation was created - `updated_at`: ISO 8601 timestamp of the most recent update to the conversation - `data_source_identifiers`: list of unique IDs of the data sources associated with the conversation - `data_source_names`: array of `{ id, name }` objects for the data sources associated with the conversation - `is_pinned`: whether the current user has pinned this conversation. Pinned conversations are surfaced first in the list. Available from version 26.10.0.cl. - `analyst_id`: unique identifier of the Spotter Analyst the conversation is associated with, or `null` when the conversation is not associated with an analyst. Available from version 26.10.0.cl. #### Pagination Use `limit` and `offset` to page through large result sets: ``` GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=0 → first page GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=20 → second page ``` #### Pagination and `has_more` The response includes a `has_more: Boolean` field. When `true`, there are additional conversations beyond the current page — increment `offset` by `limit` to fetch the next page. When `has_more` is `false`, the current page is the last. Note that `total_count` is not returned; use `has_more` to drive paging controls. #### Example response ```json { \"conversations\": [ { \"conversation_identifier\": \"abc123\", \"conversation_title\": \"Sales by Region Q1\", \"created_at\": \"2026-03-01T10:00:00Z\", \"updated_at\": \"2026-03-05T14:23:00Z\", \"data_source_identifiers\": [\"ds-001\"], \"data_source_names\": [{ \"id\": \"ds-001\", \"name\": \"Retail Sales\" }], \"is_pinned\": true } ], \"has_more\": false } ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` appear in this list. Conversations created with `enable_save_chat: false` (the default) are not persisted and cannot be retrieved. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param [limit] Maximum number of conversations to return. Used for pagination. * @param [offset] Number of conversations to skip before returning results. Used for pagination. * @param [skipEmpty] When true, excludes conversations with no messages. Defaults to true. */ getConversationListWithHttpInfo(limit?: number, offset?: number, skipEmpty?: boolean, _options?: PromiseConfigurationOptions): Promise>; /** * Retrieves the list of saved agent conversations for the currently authenticated user. Only conversations created with `enable_save_chat: true` are returned. Version: 26.7.0.cl or later Retrieves a paginated list of saved agent conversations for the currently authenticated user. Only conversations that were created with `enable_save_chat: true` in `createAgentConversation` are returned. Requires `CAN_USE_SPOTTER` privilege. #### Usage guidelines The request supports the following optional query parameters: - `limit`: maximum number of conversations to return. Use this together with `offset` for pagination. - `offset`: number of conversations to skip before returning results. Defaults to `0`. - `skip_empty`: when `true` (default), conversations with no messages are excluded from the results. Set to `false` to include empty conversations. If the request is successful, the response includes a `conversations` array. Each entry contains: - `conversation_identifier`: the unique ID of the conversation, used as input to `sendAgentConversationMessage`, `updateConversation`, `deleteConversation`, `stopConversation`, and `loadAnswer` - `conversation_title`: the display name of the conversation - `created_at`: ISO 8601 timestamp of when the conversation was created - `updated_at`: ISO 8601 timestamp of the most recent update to the conversation - `data_source_identifiers`: list of unique IDs of the data sources associated with the conversation - `data_source_names`: array of `{ id, name }` objects for the data sources associated with the conversation - `is_pinned`: whether the current user has pinned this conversation. Pinned conversations are surfaced first in the list. Available from version 26.10.0.cl. - `analyst_id`: unique identifier of the Spotter Analyst the conversation is associated with, or `null` when the conversation is not associated with an analyst. Available from version 26.10.0.cl. #### Pagination Use `limit` and `offset` to page through large result sets: ``` GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=0 → first page GET /api/rest/2.0/ai/agent/conversations?limit=20&offset=20 → second page ``` #### Pagination and `has_more` The response includes a `has_more: Boolean` field. When `true`, there are additional conversations beyond the current page — increment `offset` by `limit` to fetch the next page. When `has_more` is `false`, the current page is the last. Note that `total_count` is not returned; use `has_more` to drive paging controls. #### Example response ```json { \"conversations\": [ { \"conversation_identifier\": \"abc123\", \"conversation_title\": \"Sales by Region Q1\", \"created_at\": \"2026-03-01T10:00:00Z\", \"updated_at\": \"2026-03-05T14:23:00Z\", \"data_source_identifiers\": [\"ds-001\"], \"data_source_names\": [{ \"id\": \"ds-001\", \"name\": \"Retail Sales\" }], \"is_pinned\": true } ], \"has_more\": false } ``` #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` appear in this list. Conversations created with `enable_save_chat: false` (the default) are not persisted and cannot be retrieved. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param [limit] Maximum number of conversations to return. Used for pagination. * @param [offset] Number of conversations to skip before returning results. Used for pagination. * @param [skipEmpty] When true, excludes conversations with no messages. Defaults to true. */ getConversationList(limit?: number, offset?: number, skipEmpty?: boolean, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Retrieves details of the current user session for the token provided in the request header. Any ThoughtSpot user can access this endpoint and send an API request. The data returned in the API response varies according to user\'s privilege and object access permissions. **NOTE**: In ThoughtSpot, users with cluster administration privileges can access all Orgs by default. However, unless the administrator is explicitly added to an Org, the Orgs list in the session information returned by the API will include only the Primary Org. To include other Orgs in the API response, you must explicitly add the administrator to each Org in the Admin settings page in the UI or via user REST API. */ getCurrentUserInfoWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Retrieves details of the current user session for the token provided in the request header. Any ThoughtSpot user can access this endpoint and send an API request. The data returned in the API response varies according to user\'s privilege and object access permissions. **NOTE**: In ThoughtSpot, users with cluster administration privileges can access all Orgs by default. However, unless the administrator is explicitly added to an Org, the Orgs list in the session information returned by the API will include only the Primary Org. To include other Orgs in the API response, you must explicitly add the administrator to each Org in the Admin settings page in the UI or via user REST API. */ getCurrentUserInfo(_options?: PromiseConfigurationOptions): Promise; /** * Version: 9.4.0.cl or later Generates a new bearer token from an existing authenticated session. #### Required privileges Any ThoughtSpot user with a valid bearer token can access this endpoint and send an API request. Requires no additional privileges. #### Usage guidelines This endpoint doesn\'t return the caller\'s existing session token. Instead, it issues a new token based on the current authenticated session and returns the new token string, its creation and expiration timestamps, and the associated user details in response. The token generated from this API request is valid for 24 hours. Use this endpoint when your application needs a new token without requiring the user to re-authenticate. If you need a token with a specific expiration or a different security scope, use `POST /api/rest/2.0/auth/token/full`, `POST /api/rest/2.0/auth/token/custom`, or `POST /api/rest/2.0/auth/token/object` instead. */ getCurrentUserTokenWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.4.0.cl or later Generates a new bearer token from an existing authenticated session. #### Required privileges Any ThoughtSpot user with a valid bearer token can access this endpoint and send an API request. Requires no additional privileges. #### Usage guidelines This endpoint doesn\'t return the caller\'s existing session token. Instead, it issues a new token based on the current authenticated session and returns the new token string, its creation and expiration timestamps, and the associated user details in response. The token generated from this API request is valid for 24 hours. Use this endpoint when your application needs a new token without requiring the user to re-authenticate. If you need a token with a specific expiration or a different security scope, use `POST /api/rest/2.0/auth/token/full`, `POST /api/rest/2.0/auth/token/custom`, or `POST /api/rest/2.0/auth/token/object` instead. */ getCurrentUserToken(_options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Creates an authentication token that provides values for the formula variables in the Row Level Security (RLS) rules for a given user. Recommended for use cases that require Attribute-based access control (ABAC) via RLS. #### Required privileges To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege and edit access to the data source are required. To configure formula variables for all Orgs on your instance or the Primary Org, cluster administration privileges are required. Org administrators can configure formula variables for their respective Orgs. If Role-Based Access Control (RBAC) is enabled, users with the `CAN_MANAGE_VARIABLES` (**Can manage variables**) role privilege can also create and manage variables for their Org context. #### Usage guidelines You can generate a token by providing a `username` and `password`, or by using a `secret_key`. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### ABAC via RLS To implement ABAC via RLS and assign security entitlements to users during session creation, generate a token with custom variable values. The values set in the authentication token are applied to the formula variables referenced in RLS rules at the table level, which determines the data each user can access based on their entitlements. The variable values can be configured to persist for a specific set of Models in user sessions initiated with the token, allowing different RLS rules to be set for different data models. Once defined, the rules are added to the user\'s `variable_values` object, after which all sessions will use the persisted values. For more information, see [ABAC via tokens Documentation](https://developers.thoughtspot.com/docs/abac-via-rls-variables). ##### Formula variables Before defining variable values, ensure the variables are created and available on your instance. To create a formula variable, you can use the **Create variable** (`/api/rest/2.0/template/variables/create`) REST API endpoint, with the variable `type` set as `Formula_Variable` in the API request. The API doesn\'t support `\"persist_option\": \"RESET\"` and `\"persist_option\": \"NONE\"` when `variable_values` are defined in the request. If you are using `variable_values` for token generation, you must use other supported persist options such as `APPEND` or `REPLACE`. If you want to use `RESET` or `NONE`, do not pass any `variable_values`. In such cases, `variable_values` will remain unaffected. #### Supported objects The supported object type is `LOGICAL_TABLE`. When using `object_id` with `variable_values`, models are supported. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `groups` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the username already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email, Org and group entitlements will not be updated with new values. Setting `auto_create` to `true` does not create formula variables. Hence, this setting will not be applicable to `variable_values`. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. Persist options such as `APPEND` and `REPLACE` will persist `variable_values` on the user profile when the token is created. * @param getCustomAccessTokenRequest */ getCustomAccessTokenWithHttpInfo(getCustomAccessTokenRequest: GetCustomAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Creates an authentication token that provides values for the formula variables in the Row Level Security (RLS) rules for a given user. Recommended for use cases that require Attribute-based access control (ABAC) via RLS. #### Required privileges To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege and edit access to the data source are required. To configure formula variables for all Orgs on your instance or the Primary Org, cluster administration privileges are required. Org administrators can configure formula variables for their respective Orgs. If Role-Based Access Control (RBAC) is enabled, users with the `CAN_MANAGE_VARIABLES` (**Can manage variables**) role privilege can also create and manage variables for their Org context. #### Usage guidelines You can generate a token by providing a `username` and `password`, or by using a `secret_key`. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### ABAC via RLS To implement ABAC via RLS and assign security entitlements to users during session creation, generate a token with custom variable values. The values set in the authentication token are applied to the formula variables referenced in RLS rules at the table level, which determines the data each user can access based on their entitlements. The variable values can be configured to persist for a specific set of Models in user sessions initiated with the token, allowing different RLS rules to be set for different data models. Once defined, the rules are added to the user\'s `variable_values` object, after which all sessions will use the persisted values. For more information, see [ABAC via tokens Documentation](https://developers.thoughtspot.com/docs/abac-via-rls-variables). ##### Formula variables Before defining variable values, ensure the variables are created and available on your instance. To create a formula variable, you can use the **Create variable** (`/api/rest/2.0/template/variables/create`) REST API endpoint, with the variable `type` set as `Formula_Variable` in the API request. The API doesn\'t support `\"persist_option\": \"RESET\"` and `\"persist_option\": \"NONE\"` when `variable_values` are defined in the request. If you are using `variable_values` for token generation, you must use other supported persist options such as `APPEND` or `REPLACE`. If you want to use `RESET` or `NONE`, do not pass any `variable_values`. In such cases, `variable_values` will remain unaffected. #### Supported objects The supported object type is `LOGICAL_TABLE`. When using `object_id` with `variable_values`, models are supported. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `groups` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the username already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email, Org and group entitlements will not be updated with new values. Setting `auto_create` to `true` does not create formula variables. Hence, this setting will not be applicable to `variable_values`. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. Persist options such as `APPEND` and `REPLACE` will persist `variable_values` on the user profile when the token is created. * @param getCustomAccessTokenRequest */ getCustomAccessToken(getCustomAccessTokenRequest: GetCustomAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.15.0.cl or later Suggests the most relevant data sources for a given natural language query, ranked by confidence with LLM-generated reasoning. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the underlying metadata entities referenced in the response. #### Usage guidelines The request must include: - `query`: the natural language question to find relevant data sources for If the request is successful, the API returns a ranked list of suggested data sources, each containing: - `confidence`: a float score indicating the model\'s confidence in the relevance of the suggestion - `details`: metadata about the data source - `data_source_identifier`: the unique ID of the data source - `data_source_name`: the display name of the data source - `description`: a description of the data source - `reasoning`: LLM-generated rationale explaining why the data source was recommended #### Error responses | Code | Description | |------|--------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the underlying metadata entities. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before it is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param getDataSourceSuggestionsRequest */ getDataSourceSuggestionsWithHttpInfo(getDataSourceSuggestionsRequest: GetDataSourceSuggestionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.15.0.cl or later Suggests the most relevant data sources for a given natural language query, ranked by confidence with LLM-generated reasoning. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the underlying metadata entities referenced in the response. #### Usage guidelines The request must include: - `query`: the natural language question to find relevant data sources for If the request is successful, the API returns a ranked list of suggested data sources, each containing: - `confidence`: a float score indicating the model\'s confidence in the relevance of the suggestion - `details`: metadata about the data source - `data_source_identifier`: the unique ID of the data source - `data_source_name`: the display name of the data source - `description`: a description of the data source - `reasoning`: LLM-generated rationale explaining why the data source was recommended #### Error responses | Code | Description | |------|--------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the underlying metadata entities. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before it is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param getDataSourceSuggestionsRequest */ getDataSourceSuggestions(getDataSourceSuggestionsRequest: GetDataSourceSuggestionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Generates an authentication token for creating a full session in ThoughtSpot for a given user. Recommended for use cases that do not require Attribute-based access control (ABAC) via Row Level Security (RLS). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the user already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email and group assignment will be updated. To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getFullAccessTokenRequest */ getFullAccessTokenWithHttpInfo(getFullAccessTokenRequest: GetFullAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Generates an authentication token for creating a full session in ThoughtSpot for a given user. Recommended for use cases that do not require Attribute-based access control (ABAC) via Row Level Security (RLS). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the username does not exist in ThoughtSpot. If the user already exists in ThoughtSpot and `auto_create` is set to `true`, user properties such as display name, email and group assignment will be updated. To add a new user and assign privileges during auto-creation, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getFullAccessTokenRequest */ getFullAccessToken(getFullAccessTokenRequest: GetFullAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise; /** * Get translations bundle for a locale. Version: 26.7.0.cl or later Retrieves all translations for a specific locale as a JSON map. Available to all authenticated users. No additional privileges are required. #### Usage guidelines - `locale` parameter must be a hyphenated locale code, in any case (for example, `fr-fr`, `de-de`, `JA-JP`). - Returns a JSON object with a `translations` map where each key is the original string and each value is the translated string. - If the org has no translations for the requested locale, the endpoint falls back to cluster-level translations. - Returns an empty `translations` map (not an error) if no entries exist at either level. * @param locale Locale code for which to retrieve translations. For example, `fr-fr`, `de-de`, `JA-JP`. */ getManualTranslationBundleWithHttpInfo(locale: string, _options?: PromiseConfigurationOptions): Promise>; /** * Get translations bundle for a locale. Version: 26.7.0.cl or later Retrieves all translations for a specific locale as a JSON map. Available to all authenticated users. No additional privileges are required. #### Usage guidelines - `locale` parameter must be a hyphenated locale code, in any case (for example, `fr-fr`, `de-de`, `JA-JP`). - Returns a JSON object with a `translations` map where each key is the original string and each value is the translated string. - If the org has no translations for the requested locale, the endpoint falls back to cluster-level translations. - Returns an empty `translations` map (not an error) if no entries exist at either level. * @param locale Locale code for which to retrieve translations. For example, `fr-fr`, `de-de`, `JA-JP`. */ getManualTranslationBundle(locale: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.15.0.cl or later Retrieves existing natural language (NL) instructions configured for a specific data model. These instructions guide the AI system in understanding data context and generating more accurate responses. Requires `CAN_USE_SPOTTER` privilege, at least view access on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines The request must include: - `data_source_identifier`: the unique ID of the data model to retrieve instructions for If the request is successful, the API returns: - `nl_instructions_info`: an array of instruction objects, each containing: - `instructions`: the configured text instructions for AI processing - `scope`: the scope of the instruction — currently only `GLOBAL` is supported #### Instructions scope - **GLOBAL**: Instructions that apply globally across the system on the given data-model (currently only global instructions are supported) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view access on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs at least view access on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Use this API to review currently configured instructions before modifying them with `setNLInstructions`. * @param getNLInstructionsRequest */ getNLInstructionsWithHttpInfo(getNLInstructionsRequest: GetNLInstructionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.15.0.cl or later Retrieves existing natural language (NL) instructions configured for a specific data model. These instructions guide the AI system in understanding data context and generating more accurate responses. Requires `CAN_USE_SPOTTER` privilege, at least view access on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines The request must include: - `data_source_identifier`: the unique ID of the data model to retrieve instructions for If the request is successful, the API returns: - `nl_instructions_info`: an array of instruction objects, each containing: - `instructions`: the configured text instructions for AI processing - `scope`: the scope of the instruction — currently only `GLOBAL` is supported #### Instructions scope - **GLOBAL**: Instructions that apply globally across the system on the given data-model (currently only global instructions are supported) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks view access on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs at least view access on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Use this API to review currently configured instructions before modifying them with `setNLInstructions`. * @param getNLInstructionsRequest */ getNLInstructions(getNLInstructionsRequest: GetNLInstructionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Generates an authentication token that provides access to a specific metadata object. This object list is intersected with the list of objects the user is allowed to access via group membership. For more information, see [Object security](https://docs.thoughtspot.com/cloud/latest/security-data-object#object_security). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the user is not available in ThoughtSpot. If the user already exists in ThoughtSpot and the `auto_create` parameter is set to `true`, user properties such as display name, email, and group assignment will be updated. To add a new user and assign privileges, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH`(**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getObjectAccessTokenRequest */ getObjectAccessTokenWithHttpInfo(getObjectAccessTokenRequest: GetObjectAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Generates an authentication token that provides access to a specific metadata object. This object list is intersected with the list of objects the user is allowed to access via group membership. For more information, see [Object security](https://docs.thoughtspot.com/cloud/latest/security-data-object#object_security). #### Usage guidelines You can generate a token for a user by providing a `username` and `password`, or by using the `secret_key` generated for your instance. To generate a `secret_key`, the administrator must enable [Trusted authentication](https://developers.thoughtspot.com/docs/trusted-auth-secret-key) in the **Develop** > **Customizations** > **Security Settings** page. **Note**: * When both `password` and `secret_key` are included in the API request, `secret_key` takes precedence. * If [Multi-Factor Authentication (MFA)](https://docs.thoughtspot.com/cloud/latest/authentication-local-mfa) is enabled on your instance, the API login request with `username` and `password` returns an error. You can switch to token-based authentication with `secret_key` or contact ThoughtSpot Support for assistance. The token obtained from ThoughtSpot is valid for 5 minutes by default. You can configure the token expiration time as required. #### Just-in-time provisioning For [just-in-time user creation and provisioning](https://developers.thoughtspot.com/docs/just-in-time-provisioning), specify the following attributes in the API request: * `auto_create` * `username` * `display_name` * `email` * `group_identifiers` Set `auto_create` to `true` if the user is not available in ThoughtSpot. If the user already exists in ThoughtSpot and the `auto_create` parameter is set to `true`, user properties such as display name, email, and group assignment will be updated. To add a new user and assign privileges, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH`(**Can Enable or Disable Trusted Authentication**) privilege is required. #### Important point to note All options in the token creation APIs that define user access to data in ThoughtSpot will take effect during token creation, not when the token is used for authentication. For example, `auto_create:true` will create the user when the authentication token is created. * @param getObjectAccessTokenRequest */ getObjectAccessToken(getObjectAccessTokenRequest: GetObjectAccessTokenRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.13.0.cl or later Breaks down a natural language query into a series of smaller analytical sub-questions, each mapped to a relevant data source. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request must include: - `query`: the natural language question to decompose into analytical sub-questions - `metadata_context`: at least one of the following context identifiers to guide question generation: - `conversation_identifier` — an existing conversation session ID - `answer_identifiers` — a list of Answer GUIDs - `liveboard_identifiers` — a list of Liveboard GUIDs - `data_source_identifiers` — a list of data source GUIDs Optional parameters for refining the output: - `ai_context`: additional context to improve response quality - `content` — supplementary text or CSV data as string input - `instructions` — custom text instructions for the AI system - `limit_relevant_questions`: maximum number of questions to return (default: `5`) - `bypass_cache`: if `true`, forces fresh computation instead of returning cached results If the request is successful, the API returns a list of relevant analytical questions, each containing: - `query`: the generated sub-question - `data_source_identifier`: the unique ID of the data source the question targets - `data_source_name`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param getRelevantQuestionsRequest */ getRelevantQuestionsWithHttpInfo(getRelevantQuestionsRequest: GetRelevantQuestionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.13.0.cl or later Breaks down a natural language query into a series of smaller analytical sub-questions, each mapped to a relevant data source. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request must include: - `query`: the natural language question to decompose into analytical sub-questions - `metadata_context`: at least one of the following context identifiers to guide question generation: - `conversation_identifier` — an existing conversation session ID - `answer_identifiers` — a list of Answer GUIDs - `liveboard_identifiers` — a list of Liveboard GUIDs - `data_source_identifiers` — a list of data source GUIDs Optional parameters for refining the output: - `ai_context`: additional context to improve response quality - `content` — supplementary text or CSV data as string input - `instructions` — custom text instructions for the AI system - `limit_relevant_questions`: maximum number of questions to return (default: `5`) - `bypass_cache`: if `true`, forces fresh computation instead of returning cached results If the request is successful, the API returns a list of relevant analytical questions, each containing: - `query`: the generated sub-question - `data_source_identifier`: the unique ID of the data source the question targets - `data_source_name`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param getRelevantQuestionsRequest */ getRelevantQuestions(getRelevantQuestionsRequest: GetRelevantQuestionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Returns the current share state for a conversation the caller owns: whether the shared view is outdated relative to the latest conversation content, and the list of principals that currently have access. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation. */ getShareInfoWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Returns the current share state for a conversation the caller owns: whether the shared view is outdated relative to the latest conversation content, and the list of principals that currently have access. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation. */ getShareInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Returns the full read-only view of a shared conversation, including ordered messages and data source metadata. Accessible by the conversation owner and any principal (user or group) that has been granted access. Requires `CAN_USE_SPOTTER` privilege. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the source conversation. */ getSharedContentWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Returns the full read-only view of a shared conversation, including ordered messages and data source metadata. Accessible by the conversation owner and any principal (user or group) that has been granted access. Requires `CAN_USE_SPOTTER` privilege. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the source conversation. */ getSharedContent(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Retrieves the current configuration details of the cluster. If the request is successful, the API returns a list configuration settings applied on the cluster. Requires `ADMINISTRATION`(**Can administer ThoughtSpot**) privilege to view these complete configuration settings of the cluster. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemConfigWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Retrieves the current configuration details of the cluster. If the request is successful, the API returns a list configuration settings applied on the cluster. Requires `ADMINISTRATION`(**Can administer ThoughtSpot**) privilege to view these complete configuration settings of the cluster. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemConfig(_options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets system information such as the release version, locale, time zone, deployment environment, date format, and date time format of the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemInformationWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets system information such as the release version, locale, time zone, deployment environment, date format, and date time format of the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `SYSTEM_INFO_ADMINISTRATION` (**Can view system activities**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemInformation(_options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Gets a list of configuration overrides applied on the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemOverrideInfoWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Gets a list of configuration overrides applied on the cluster. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. This API does not require any parameters to be passed in the request. */ getSystemOverrideInfo(_options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Returns cluster-level storage setup information for configuring customer-managed storage. Use this endpoint to obtain the IAM identity details required before configuring a webhook storage destination. For S3 destinations, returns the platform AWS account ID and IAM trust policy template. For GCS destinations, returns the platform GCP service account email and the IAM role to grant for service account impersonation. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. */ getWebhookStorageConfigWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.7.0.cl or later Returns cluster-level storage setup information for configuring customer-managed storage. Use this endpoint to obtain the IAM identity details required before configuring a webhook storage destination. For S3 destinations, returns the platform AWS account ID and IAM trust policy template. For GCS destinations, returns the platform GCP service account email and the IAM role to grant for service account impersonation. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. */ getWebhookStorageConfig(_options?: PromiseConfigurationOptions): Promise>; /** * Import manual translations from a CSV file. Version: 26.7.0.cl or later Uploads a CSV file containing manual translations and upserts them into the database. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The CSV file must have exactly three columns in this order: `content`, `locale`, `translated-content`. - Maximum file size: **30 MB**. Maximum rows: **10,000**. - Only `.csv` files are accepted. - The import performs an **upsert**: existing entries matched by `(org_id, locale, content)` are updated; new entries are inserted. Entries not in the upload are left untouched. - Set `scope` to `CLUSTER` to upload translations to the All-Org context. Cluster-level translations act as defaults for orgs that have no translations for a locale. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. * @param translationsFile CSV file containing translations. The file must have three columns: `content`, `locale`, `translated-content`. Max file size: 30 MB. Max rows: 10,000. * @param [scope] Org scope for the import. `ORG` (default) targets the calling user\\\'s current org. `CLUSTER` targets the All-Org context. */ importManualTranslationsWithHttpInfo(translationsFile: HttpFile, scope?: string, _options?: PromiseConfigurationOptions): Promise>; /** * Import manual translations from a CSV file. Version: 26.7.0.cl or later Uploads a CSV file containing manual translations and upserts them into the database. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege. #### Usage guidelines - The CSV file must have exactly three columns in this order: `content`, `locale`, `translated-content`. - Maximum file size: **30 MB**. Maximum rows: **10,000**. - Only `.csv` files are accepted. - The import performs an **upsert**: existing entries matched by `(org_id, locale, content)` are updated; new entries are inserted. Entries not in the upload are left untouched. - Set `scope` to `CLUSTER` to upload translations to the All-Org context. Cluster-level translations act as defaults for orgs that have no translations for a locale. - `scope` accepts only `ORG` (default) and `CLUSTER`, in uppercase. Any other value returns a `400` error. * @param translationsFile CSV file containing translations. The file must have three columns: `content`, `locale`, `translated-content`. Max file size: 30 MB. Max rows: 10,000. * @param [scope] Org scope for the import. `ORG` (default) targets the calling user\\\'s current org. `CLUSTER` targets the All-Org context. */ importManualTranslations(translationsFile: HttpFile, scope?: string, _options?: PromiseConfigurationOptions): Promise; /** * Imports memory entries (rules, recipes, and always-apply rules) from a YAML payload, typically a payload produced by `exportMemory` and edited locally. The imported entries replace the existing memory for the data-models referenced in the payload. `dry_run` is required. Pass `true` first to validate the payload and review the preview counts and any row-level failures without making changes, then re-run with `dry_run = false` to apply the import. An import is not applied if any row fails validation. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to import data-model memories using a given yaml file. This yaml file can be obtained from the export memory API in source env and can be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To import memory, the request must include: - `content`: The full serialized memory payload to import (YAML). Typically the `content` value returned by the `exportMemory` API, edited locally and re-submitted. The payload itself identifies which data-models the memory applies to, so no separate identifier list is required. - `dry_run`: Required. When `true`, validate the payload and return preview counts without writing anything; when `false`, apply the import. Always run with `dry_run = true` first, then re-run with `dry_run = false` once you are satisfied with the preview. The import replaces the existing global memories on the data-models referenced in the payload with the entries supplied in the payload. The API returns a response object with: - `status`: The terminal status of the import (`SUCCESS`, `VALIDATION_FAILED`, or `FAILED`). - `summary`: Per `(memory_type, source)` counts. In a dry run the `deleted_record_count`/`inserted_record_count` are previews; in a real import they are actuals. On `VALIDATION_FAILED`, `summary` is `null` when validation fails before any item is processed (e.g. an unresolved or inaccessible data-model source) and an empty list otherwise — treat both as \"no counts available\". - `validation_failures`: Per-item validation failures, each with `line_number`, `reason`, `field_name`, and `message` for click-to-locate and inline highlighting. - `diagnostics`: Groups of diagnostic messages, each with a `sub_status` (`WARNING`, `FAILURE`, `ROLLED_BACK`, or `UNKNOWN`) and a `messages` list. This is the single channel for both non-fatal warnings (under `WARNING`, e.g. when some older memory entries could not be fully cleaned up) and fatal causes (e.g. the failure reason under `FAILURE`, or a `ROLLED_BACK` group when new entries were undone). - `operation_id`: A server-generated identifier for this import operation; include it when contacting support to help correlate server-side logs. Populated once the server registers the import operation; `null` when the request fails earlier (e.g. while parsing the payload or resolving its data-model sources). #### File format The payload is a YAML document with a single top-level `memories` key holding a list of memory items. Each item is self-contained: a `type`, a typed `content` block, a `datamodel_sources` list, and optional `tags`. Typically you don\'t hand-author this file — you obtain it from `exportMemory`, edit it, and submit it back through `importMemory`. ```yaml memories: - type: RULE content: rule_definition: \"Always filter revenue to closed-won deals.\" datamodel_sources: - guid: 11111111-1111-1111-1111-111111111111 obj_id: sales_data_model tags: - finance - type: RULE content: rule_definition: \"Exclude internal test accounts from all results.\" datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"top accounts by revenue\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"monthly new customer count\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: ALWAYS_APPLY_RULES content: rules: - \"Never show internal test accounts.\" - \"Round currency to whole dollars.\" datamodel_sources: - guid: 22222222-2222-2222-2222-222222222222 ``` A file can contain multiple `RULE` and multiple `RECIPE` items for a data-model, but at most one `ALWAYS_APPLY_RULES` item per data-model. ##### Memory item fields | Field | Required | Type | Description | |-------|----------|------|-------------| | `type` | Yes | String enum | One of `RULE`, `RECIPE`, or `ALWAYS_APPLY_RULES`. | | `content` | Yes | Mapping | Type-specific content block (see below). | | `datamodel_sources` | Yes | Non-empty list | The data-model(s) the memory attaches to. | | `tags` | No | List of strings | Free-form labels. | ##### Memory types and content | `type` | Content fields | Notes | |--------|----------------|-------| | `RULE` | `rule_definition` — required, non-empty string | A single semantic rule. | | `RECIPE` | `recipe` and `user_query` — both required, non-empty strings | `recipe` is an opaque serialized blob; `user_query` is the natural-language query it answers. | | `ALWAYS_APPLY_RULES` | `rules` — required, non-empty list of non-empty strings | Data-model-wide always-apply rules. At most one `ALWAYS_APPLY_RULES` item per data-model. | ##### Identifying data-models (`datamodel_sources`) Each item must list at least one source. Each entry identifies a data-model by at least one of: - `guid` — the data-model GUID. - `obj_id` — a stable object ID, resolved to a GUID server-side. If both are supplied, `obj_id` takes precedence and `guid` is ignored entirely; `guid` takes effect only when `obj_id` is absent. Exported files populate `guid` and, if present, `obj_id` as well. > ⚠️ **Cross-environment import:** When `obj_id` is present it is > authoritative — the accompanying `guid` is **not** used as a fallback. > If an `obj_id` does not exist in the target environment, that item > fails with `UNRESOLVED_SOURCE`. Remove or correct stale `obj_id` > values before importing across environments. #### Validations reference The payload is fully validated before anything is written. This applies to `dry_run = true` and `dry_run = false` alike: if any item fails validation, the entire import is rejected — no partial writes — and all failures are returned together so you can fix them in one pass. ##### Limits Default limits (may be adjusted in future if the need arises): | Limit | Default | |-------|---------| | Uploaded file size | 10 MiB | | Total memory items | 10,000 | | `rule_definition` length | 1,000 characters | | `user_query` length | 1,000 characters | | `recipe` length | 2,000 characters | | `rules` combined length (`ALWAYS_APPLY_RULES`) | 2,000 characters | | Tags per item | 10 | | Characters per tag | 50 | The `rules` limit in `ALWAYS_APPLY_RULES` is a combined budget across all entries in the list, not per entry. ##### Structural rules - The document must be a mapping with a `memories` key whose value is a list. - Unknown keys — at the top level, within an item, or under `content` — are rejected. - Each item\'s `type` must be one of the three supported values, and `content` must match that type\'s shape. - Null, empty-string, or wrong-typed values in a required field are treated as missing. - Non-string or empty `tags` entries are dropped silently; certain tags reserved for internal use are stripped automatically before the item is stored. ##### Cross-item rules - A data-model referenced by more than one `ALWAYS_APPLY_RULES` item is rejected — combine them into a single item\'s `rules` list. ##### Failure reasons Each entry in `validation_failures` carries one of: | Reason | Meaning | |--------|---------| | `SCHEMA` | YAML structure is invalid or unsupported. | | `VALIDATION` | A required field is missing/empty, a count exceeds a limit, or a GUID is malformed. | | `CHAR_LIMIT` | A content field or tag exceeds its size limit. | | `UNRESOLVED_SOURCE` | A `guid` or `obj_id` could not be resolved to an existing data-model. | | `ACCESS_DENIED` | The caller lacks sufficient access on the referenced data-model. | #### Dry run `dry_run` is required and has no default, so the import is always a deliberate two-step flow: 1. **First, call with `dry_run = true`.** This validates the payload and previews what would happen — the counts in `summary` and any `validation_failures` — without writing anything. 2. **Then, after reviewing a clean preview, call again with `dry_run = false`** (same `content`). This applies the import. It refuses to write when any item fails validation, so fix the reported `validation_failures` and resubmit. > ###### Important: > Never call `dry_run = false` without first inspecting a `dry_run = true` preview. A real import deletes and replaces existing global memories on the referenced data-models. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have the necessary Spotter permissions, or the bearer token does not correspond to the data-model\'s org. Per-data-model access failures do not use this code — they surface as `ACCESS_DENIED` validation failures with HTTP `200` (see Logical failures below). | #### Logical failures Validation and write failures are not returned in the error envelope. The call returns `200` with a terminal `status` of `VALIDATION_FAILED` or `FAILED`, and the details live in `validation_failures` / `diagnostics`: - **VALIDATION_FAILED** — one or more items failed schema/semantic validation; nothing was written. Inspect `validation_failures`, fix the items, and resubmit. - **FAILED** — the import did not complete. Inspect `diagnostics`: a `ROLLED_BACK` group means writing the new entries failed and any entries written before the failure were undone (existing memory is intact, no destructive change), while a `FAILURE` group carries another non-validation cause. Sample `VALIDATION_FAILED` responses (HTTP 200): **Invalid data-model (unresolved source):** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"UNRESOLVED_SOURCE\", \"field_name\": \"datamodel_sources[0].guid\", \"message\": \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" ] } ], \"operation_id\": null } ``` **Inaccessible data-models:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'\" }, { \"line_number\": 8, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Memory import validation failed with 2 error(s): Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'; Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" ] } ], \"operation_id\": null } ``` **Character-limit validations:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": [], \"validation_failures\": [ { \"line_number\": 3, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.rule_definition\", \"message\": \"content.rule_definition is 1073 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.user_query\", \"message\": \"content.user_query is 1150 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.recipe\", \"message\": \"content.recipe is 3574 characters; max allowed is 2000\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Validation failures present; fix them and re-run to see the DRY_RUN preview.\" ] } ], \"operation_id\": \"66666666-6666-6666-6666-666666666666\" } ``` > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param importMemoryRequest */ importMemoryWithHttpInfo(importMemoryRequest: ImportMemoryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Imports memory entries (rules, recipes, and always-apply rules) from a YAML payload, typically a payload produced by `exportMemory` and edited locally. The imported entries replace the existing memory for the data-models referenced in the payload. `dry_run` is required. Pass `true` first to validate the payload and review the preview counts and any row-level failures without making changes, then re-run with `dry_run = false` to apply the import. An import is not applied if any row fails validation. Requires Spotter access (use/manage) and either edit or memory access on corresponding data model sources. Version: 26.8.0.cl or later This API allows users to import data-model memories using a given yaml file. This yaml file can be obtained from the export memory API in source env and can be modified and used as input to the import API in target env. This API enables customers to migrate memories from a source env to a target env. This improves memory adoption for Spotter by giving the users a chance to develop their memories in one env and replicate the same in another env. #### Usage guidelines To import memory, the request must include: - `content`: The full serialized memory payload to import (YAML). Typically the `content` value returned by the `exportMemory` API, edited locally and re-submitted. The payload itself identifies which data-models the memory applies to, so no separate identifier list is required. - `dry_run`: Required. When `true`, validate the payload and return preview counts without writing anything; when `false`, apply the import. Always run with `dry_run = true` first, then re-run with `dry_run = false` once you are satisfied with the preview. The import replaces the existing global memories on the data-models referenced in the payload with the entries supplied in the payload. The API returns a response object with: - `status`: The terminal status of the import (`SUCCESS`, `VALIDATION_FAILED`, or `FAILED`). - `summary`: Per `(memory_type, source)` counts. In a dry run the `deleted_record_count`/`inserted_record_count` are previews; in a real import they are actuals. On `VALIDATION_FAILED`, `summary` is `null` when validation fails before any item is processed (e.g. an unresolved or inaccessible data-model source) and an empty list otherwise — treat both as \"no counts available\". - `validation_failures`: Per-item validation failures, each with `line_number`, `reason`, `field_name`, and `message` for click-to-locate and inline highlighting. - `diagnostics`: Groups of diagnostic messages, each with a `sub_status` (`WARNING`, `FAILURE`, `ROLLED_BACK`, or `UNKNOWN`) and a `messages` list. This is the single channel for both non-fatal warnings (under `WARNING`, e.g. when some older memory entries could not be fully cleaned up) and fatal causes (e.g. the failure reason under `FAILURE`, or a `ROLLED_BACK` group when new entries were undone). - `operation_id`: A server-generated identifier for this import operation; include it when contacting support to help correlate server-side logs. Populated once the server registers the import operation; `null` when the request fails earlier (e.g. while parsing the payload or resolving its data-model sources). #### File format The payload is a YAML document with a single top-level `memories` key holding a list of memory items. Each item is self-contained: a `type`, a typed `content` block, a `datamodel_sources` list, and optional `tags`. Typically you don\'t hand-author this file — you obtain it from `exportMemory`, edit it, and submit it back through `importMemory`. ```yaml memories: - type: RULE content: rule_definition: \"Always filter revenue to closed-won deals.\" datamodel_sources: - guid: 11111111-1111-1111-1111-111111111111 obj_id: sales_data_model tags: - finance - type: RULE content: rule_definition: \"Exclude internal test accounts from all results.\" datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"top accounts by revenue\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: RECIPE content: user_query: \"monthly new customer count\" recipe: | {\"steps\": [...serialized recipe blob...]} datamodel_sources: - obj_id: sales_data_model - type: ALWAYS_APPLY_RULES content: rules: - \"Never show internal test accounts.\" - \"Round currency to whole dollars.\" datamodel_sources: - guid: 22222222-2222-2222-2222-222222222222 ``` A file can contain multiple `RULE` and multiple `RECIPE` items for a data-model, but at most one `ALWAYS_APPLY_RULES` item per data-model. ##### Memory item fields | Field | Required | Type | Description | |-------|----------|------|-------------| | `type` | Yes | String enum | One of `RULE`, `RECIPE`, or `ALWAYS_APPLY_RULES`. | | `content` | Yes | Mapping | Type-specific content block (see below). | | `datamodel_sources` | Yes | Non-empty list | The data-model(s) the memory attaches to. | | `tags` | No | List of strings | Free-form labels. | ##### Memory types and content | `type` | Content fields | Notes | |--------|----------------|-------| | `RULE` | `rule_definition` — required, non-empty string | A single semantic rule. | | `RECIPE` | `recipe` and `user_query` — both required, non-empty strings | `recipe` is an opaque serialized blob; `user_query` is the natural-language query it answers. | | `ALWAYS_APPLY_RULES` | `rules` — required, non-empty list of non-empty strings | Data-model-wide always-apply rules. At most one `ALWAYS_APPLY_RULES` item per data-model. | ##### Identifying data-models (`datamodel_sources`) Each item must list at least one source. Each entry identifies a data-model by at least one of: - `guid` — the data-model GUID. - `obj_id` — a stable object ID, resolved to a GUID server-side. If both are supplied, `obj_id` takes precedence and `guid` is ignored entirely; `guid` takes effect only when `obj_id` is absent. Exported files populate `guid` and, if present, `obj_id` as well. > ⚠️ **Cross-environment import:** When `obj_id` is present it is > authoritative — the accompanying `guid` is **not** used as a fallback. > If an `obj_id` does not exist in the target environment, that item > fails with `UNRESOLVED_SOURCE`. Remove or correct stale `obj_id` > values before importing across environments. #### Validations reference The payload is fully validated before anything is written. This applies to `dry_run = true` and `dry_run = false` alike: if any item fails validation, the entire import is rejected — no partial writes — and all failures are returned together so you can fix them in one pass. ##### Limits Default limits (may be adjusted in future if the need arises): | Limit | Default | |-------|---------| | Uploaded file size | 10 MiB | | Total memory items | 10,000 | | `rule_definition` length | 1,000 characters | | `user_query` length | 1,000 characters | | `recipe` length | 2,000 characters | | `rules` combined length (`ALWAYS_APPLY_RULES`) | 2,000 characters | | Tags per item | 10 | | Characters per tag | 50 | The `rules` limit in `ALWAYS_APPLY_RULES` is a combined budget across all entries in the list, not per entry. ##### Structural rules - The document must be a mapping with a `memories` key whose value is a list. - Unknown keys — at the top level, within an item, or under `content` — are rejected. - Each item\'s `type` must be one of the three supported values, and `content` must match that type\'s shape. - Null, empty-string, or wrong-typed values in a required field are treated as missing. - Non-string or empty `tags` entries are dropped silently; certain tags reserved for internal use are stripped automatically before the item is stored. ##### Cross-item rules - A data-model referenced by more than one `ALWAYS_APPLY_RULES` item is rejected — combine them into a single item\'s `rules` list. ##### Failure reasons Each entry in `validation_failures` carries one of: | Reason | Meaning | |--------|---------| | `SCHEMA` | YAML structure is invalid or unsupported. | | `VALIDATION` | A required field is missing/empty, a count exceeds a limit, or a GUID is malformed. | | `CHAR_LIMIT` | A content field or tag exceeds its size limit. | | `UNRESOLVED_SOURCE` | A `guid` or `obj_id` could not be resolved to an existing data-model. | | `ACCESS_DENIED` | The caller lacks sufficient access on the referenced data-model. | #### Dry run `dry_run` is required and has no default, so the import is always a deliberate two-step flow: 1. **First, call with `dry_run = true`.** This validates the payload and previews what would happen — the counts in `summary` and any `validation_failures` — without writing anything. 2. **Then, after reviewing a clean preview, call again with `dry_run = false`** (same `content`). This applies the import. It refuses to write when any item fails validation, so fix the reported `validation_failures` and resubmit. > ###### Important: > Never call `dry_run = false` without first inspecting a `dry_run = true` preview. A real import deletes and replaces existing global memories on the referenced data-models. #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have the necessary Spotter permissions, or the bearer token does not correspond to the data-model\'s org. Per-data-model access failures do not use this code — they surface as `ACCESS_DENIED` validation failures with HTTP `200` (see Logical failures below). | #### Logical failures Validation and write failures are not returned in the error envelope. The call returns `200` with a terminal `status` of `VALIDATION_FAILED` or `FAILED`, and the details live in `validation_failures` / `diagnostics`: - **VALIDATION_FAILED** — one or more items failed schema/semantic validation; nothing was written. Inspect `validation_failures`, fix the items, and resubmit. - **FAILED** — the import did not complete. Inspect `diagnostics`: a `ROLLED_BACK` group means writing the new entries failed and any entries written before the failure were undone (existing memory is intact, no destructive change), while a `FAILURE` group carries another non-validation cause. Sample `VALIDATION_FAILED` responses (HTTP 200): **Invalid data-model (unresolved source):** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"UNRESOLVED_SOURCE\", \"field_name\": \"datamodel_sources[0].guid\", \"message\": \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"unknown datamodel guid: 55555555-5555-5555-5555-555555555555\" ] } ], \"operation_id\": null } ``` **Inaccessible data-models:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": null, \"validation_failures\": [ { \"line_number\": 2, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'\" }, { \"line_number\": 8, \"reason\": \"ACCESS_DENIED\", \"field_name\": \"datamodel_sources[0]\", \"message\": \"Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Memory import validation failed with 2 error(s): Insufficient permissions on datamodel \'44444444-4444-4444-4444-444444444444\'; Insufficient permissions on datamodel \'33333333-3333-3333-3333-333333333333\'\" ] } ], \"operation_id\": null } ``` **Character-limit validations:** ```json { \"status\": \"VALIDATION_FAILED\", \"summary\": [], \"validation_failures\": [ { \"line_number\": 3, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.rule_definition\", \"message\": \"content.rule_definition is 1073 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.user_query\", \"message\": \"content.user_query is 1150 characters; max allowed is 1000\" }, { \"line_number\": 49, \"reason\": \"CHAR_LIMIT\", \"field_name\": \"content.recipe\", \"message\": \"content.recipe is 3574 characters; max allowed is 2000\" } ], \"diagnostics\": [ { \"sub_status\": \"FAILURE\", \"messages\": [ \"Validation failures present; fix them and re-run to see the DRY_RUN preview.\" ] } ], \"operation_id\": \"66666666-6666-6666-6666-666666666666\" } ``` > ###### Note: > - To use this API, the user needs Spotter access (use/manage) and either edit or memory access on the data-model and they must use corresponding org related bearerToken where the data-model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 26.8.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param importMemoryRequest */ importMemory(importMemoryRequest: ImportMemoryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Imports [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines * Import all related objects in a single TML Import API call. For example, Tables that use the same Connection object and Worksheets connected to these Tables. * Include the `fqn` property to distinguish objects that have the same name. For example, if you have multiple Connections or Worksheets with the same name on ThoughtSpot and the Connection or Worksheet referenced in your TML file does not have a unique name to distinguish, it may result in invalid object references. Adding `fqn` helps ThoughtSpot differentiate a Table from another with the same name. We recommend [exporting TML with FQNs](#/http/api-endpoints/metadata/export-metadata-tml) and using these during the import operation. * You can upload multiple TML files at a time. If you import a Worksheet along with Liveboards, Answers, and other dependent objects in a single API call, the imported objects will be immediately available for use. When you import only a Worksheet object, it may take some time for the Worksheet to become available in the ThoughtSpot system. Please wait for a few minutes, and then proceed to create an Answer and Liveboard from the newly imported Worksheet. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_import_a_tml). * @param importMetadataTMLRequest */ importMetadataTMLWithHttpInfo(importMetadataTMLRequest: ImportMetadataTMLRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Imports [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines * Import all related objects in a single TML Import API call. For example, Tables that use the same Connection object and Worksheets connected to these Tables. * Include the `fqn` property to distinguish objects that have the same name. For example, if you have multiple Connections or Worksheets with the same name on ThoughtSpot and the Connection or Worksheet referenced in your TML file does not have a unique name to distinguish, it may result in invalid object references. Adding `fqn` helps ThoughtSpot differentiate a Table from another with the same name. We recommend [exporting TML with FQNs](#/http/api-endpoints/metadata/export-metadata-tml) and using these during the import operation. * You can upload multiple TML files at a time. If you import a Worksheet along with Liveboards, Answers, and other dependent objects in a single API call, the imported objects will be immediately available for use. When you import only a Worksheet object, it may take some time for the Worksheet to become available in the ThoughtSpot system. Please wait for a few minutes, and then proceed to create an Answer and Liveboard from the newly imported Worksheet. For more information, see [TML Documentation](https://developers.thoughtspot.com/docs/tml#_import_a_tml). * @param importMetadataTMLRequest */ importMetadataTML(importMetadataTMLRequest: ImportMetadataTMLRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Schedules a task to import [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. You can use this API endpoint to process TML objects asynchronously when importing TMLs of large and complex metadata objects into ThoughtSpot. Unlike the synchronous import TML operation, the API processes TML data in the background and returns a task ID, which can be used to check the status of the import task via `/api/rest/2.0/metadata/tml/async/status` API endpoint. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege, and edit access to the TML objects. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines See [Async TML API Documentation](https://developers.thoughtspot.com/docs/tml#_import_tml_objects_asynchronously) for usage guidelines. * @param importMetadataTMLAsyncRequest */ importMetadataTMLAsyncWithHttpInfo(importMetadataTMLAsyncRequest: ImportMetadataTMLAsyncRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Schedules a task to import [TML](https://docs.thoughtspot.com/cloud/latest/tml) files into ThoughtSpot. You can use this API endpoint to process TML objects asynchronously when importing TMLs of large and complex metadata objects into ThoughtSpot. Unlike the synchronous import TML operation, the API processes TML data in the background and returns a task ID, which can be used to check the status of the import task via `/api/rest/2.0/metadata/tml/async/status` API endpoint. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtsSpot**) privilege, and edit access to the TML objects. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### Usage guidelines See [Async TML API Documentation](https://developers.thoughtspot.com/docs/tml#_import_tml_objects_asynchronously) for usage guidelines. * @param importMetadataTMLAsyncRequest */ importMetadataTMLAsync(importMetadataTMLAsyncRequest: ImportMetadataTMLAsyncRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.9.0.cl or later Imports semantic updates for an existing semantic integration from its CDW source and refreshes the associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About import semantic integration Re-imports the semantic view from the CDW for the specified integration and rebuilds the corresponding ThoughtSpot model. Use this after the source semantic view has been updated in the CDW (added, removed, or modified formulas, dimensions, or measures) to bring the ThoughtSpot model back in line. - `semantic_integration_identifier` is the GUID or name of the integration to import updates for. - Import preserves the integration\'s GUID, name, and `model_id`; only the underlying formula set is refreshed. - The response includes the same `semantic_report` as create, with an additional `change_status` per formula indicating whether each formula is `NEW`, `UPDATED`, or `UNCHANGED` since the previous import. > **Note:** Importing updates for a semantic integration that was created using the file upload option in the ThoughtSpot UI is not supported. To refresh a file-upload-based integration, use the ThoughtSpot UI. * @param semanticIntegrationIdentifier ID or name of the semantic integration to import updates for. */ importSemanticIntegrationWithHttpInfo(semanticIntegrationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.9.0.cl or later Imports semantic updates for an existing semantic integration from its CDW source and refreshes the associated ThoughtSpot model. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About import semantic integration Re-imports the semantic view from the CDW for the specified integration and rebuilds the corresponding ThoughtSpot model. Use this after the source semantic view has been updated in the CDW (added, removed, or modified formulas, dimensions, or measures) to bring the ThoughtSpot model back in line. - `semantic_integration_identifier` is the GUID or name of the integration to import updates for. - Import preserves the integration\'s GUID, name, and `model_id`; only the underlying formula set is refreshed. - The response includes the same `semantic_report` as create, with an additional `change_status` per formula indicating whether each formula is `NEW`, `UPDATED`, or `UNCHANGED` since the previous import. > **Note:** Importing updates for a semantic integration that was created using the file upload option in the ThoughtSpot UI is not supported. To refresh a file-upload-based integration, use the ThoughtSpot UI. * @param semanticIntegrationIdentifier ID or name of the semantic integration to import updates for. */ importSemanticIntegration(semanticIntegrationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Imports group objects from external databases into ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. During the import operation: * If the specified group is not available in ThoughtSpot, it will be added to ThoughtSpot. * If `delete_unspecified_groups` is set to `true`, the groups not specified in the API request, excluding administrator and system user groups, are deleted. * If the specified groups are already available in ThoughtSpot, the object properties of these groups are modified and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. * @param importUserGroupsRequest */ importUserGroupsWithHttpInfo(importUserGroupsRequest: ImportUserGroupsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Imports group objects from external databases into ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. During the import operation: * If the specified group is not available in ThoughtSpot, it will be added to ThoughtSpot. * If `delete_unspecified_groups` is set to `true`, the groups not specified in the API request, excluding administrator and system user groups, are deleted. * If the specified groups are already available in ThoughtSpot, the object properties of these groups are modified and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. * @param importUserGroupsRequest */ importUserGroups(importUserGroupsRequest: ImportUserGroupsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Imports user data from external databases into ThoughtSpot. During the user import operation: * If the specified users are not available in ThoughtSpot, the users are created and assigned a default password. Defining a `default_password` in the API request is optional. * If `delete_unspecified_users` is set to `true`, the users not specified in the API request, excluding the `tsadmin`, `guest`, `system` and `su` users, are deleted. * If the specified user objects are already available in ThoughtSpot, the object properties are updated and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param importUsersRequest */ importUsersWithHttpInfo(importUsersRequest: ImportUsersRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Imports user data from external databases into ThoughtSpot. During the user import operation: * If the specified users are not available in ThoughtSpot, the users are created and assigned a default password. Defining a `default_password` in the API request is optional. * If `delete_unspecified_users` is set to `true`, the users not specified in the API request, excluding the `tsadmin`, `guest`, `system` and `su` users, are deleted. * If the specified user objects are already available in ThoughtSpot, the object properties are updated and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param importUsersRequest */ importUsers(importUsersRequest: ImportUsersRequest, _options?: PromiseConfigurationOptions): Promise; /** * Loads the full answer payload for a specific answer item in an agent conversation. Returns structured answer data including the TML query, token breakdown, visualization metadata, and agent context state. Pass the `answer_id` from an `AnswerResponseItem` in the `getConversation` response as the `answer_identifier` parameter. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Loads the answer details for a specific answer item in an agent conversation. Returns structured answer data including the TML token list, visualization metadata, and agent context state. Use this endpoint to retrieve the full answer representation for an answer item — for example, to re-render a chart, export a query, or inspect the generated TML. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation, as returned by `createAgentConversation` - `answer_identifier` *(path parameter)*: the `answer_id` field from an `AnswerResponseItem` in the `getConversation` response If the request is successful, the response contains an `answer` object with the following fields: | Field | Type | Description | |-------|------|-------------| | `title` | `String` | Display title of the generated answer (e.g., `\"sales by month\"`). | | `description` | `String` | Optional description of the answer. | | `session_identifier` | `String` | Unique identifier of the session in which this answer was generated. | | `generation_number` | `Int` | Generation sequence number of this answer within the session. | | `tokens` | `[String]` | Ordered list of TML token strings that make up the answer query (e.g., `[\"[sales]\", \"[date].\'monthly\'\"]`). | | `visualization_type` | `VizType` | Suggested visualization type: `Chart`, `Table`, or `Undefined`. `null` if no suggestion is available. | | `formulas` | `[String]` | List of formula names referenced in the answer. Empty if none are used. | | `parameters` | `[String]` | List of parameter names applied to the answer. Empty if none are used. | | `sub_queries` | `[JSON]` | List of sub-query objects used in the answer. Empty if none are present. | | `ac_state` | `ACState` | Agent context state, including `transaction_identifier` and `generation_number`, used to correlate this answer with a specific agent turn. | #### ACState fields | Field | Type | Description | |-------|------|-------------| | `transaction_identifier` | `String` | Unique identifier of the agent transaction that produced this answer. | | `generation_number` | `Int` | Generation number within the transaction. | #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/answers/{answer_identifier}/details ``` #### Example response ```json { \"answer\": { \"title\": \"sales by month\", \"description\": \"\", \"session_identifier\": \"7b00b801-73f4-4639-af5e-e775584ceba6\", \"generation_number\": 1, \"tokens\": [\"[sales]\", \"[date].\'monthly\'\"], \"visualization_type\": null, \"formulas\": [], \"parameters\": [], \"sub_queries\": [], \"ac_state\": { \"transaction_identifier\": \"7f6c9948-b4c7-4098-bb1f-6c67bc0e5699\", \"generation_number\": 1 } } } ``` #### Typical usage scenario 1. Call `getConversation` to retrieve the full conversation history. 2. Locate an `AnswerResponseItem` in `response_items` — note its `answer_id` field. 3. Call `loadAnswer` with the `conversation_identifier` and `answer_id` as `answer_identifier`. 4. The returned `tokens` array can be used to open the answer in the ThoughtSpot search interface or rendered as pill chips in the UI. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation or message exists with the given identifiers for the authenticated user. | | 422 | Unprocessable Entity — the message does not contain an answer of the expected type. | > ###### Note: > > - This endpoint only loads answer-type messages. Other message types are not supported. > - `visualization_type` may be `null` if the agent did not produce a visualization suggestion for this answer. > - `formulas`, `parameters`, and `sub_queries` are returned as empty arrays when not applicable — they are never `null`. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param answerIdentifier Unique identifier of the answer to load. Use the `answer_id` field from an `AnswerResponseItem` returned by `getConversation`. */ loadAnswerWithHttpInfo(conversationIdentifier: string, answerIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Loads the full answer payload for a specific answer item in an agent conversation. Returns structured answer data including the TML query, token breakdown, visualization metadata, and agent context state. Pass the `answer_id` from an `AnswerResponseItem` in the `getConversation` response as the `answer_identifier` parameter. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. Version: 26.7.0.cl or later Loads the answer details for a specific answer item in an agent conversation. Returns structured answer data including the TML token list, visualization metadata, and agent context state. Use this endpoint to retrieve the full answer representation for an answer item — for example, to re-render a chart, export a query, or inspect the generated TML. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation, as returned by `createAgentConversation` - `answer_identifier` *(path parameter)*: the `answer_id` field from an `AnswerResponseItem` in the `getConversation` response If the request is successful, the response contains an `answer` object with the following fields: | Field | Type | Description | |-------|------|-------------| | `title` | `String` | Display title of the generated answer (e.g., `\"sales by month\"`). | | `description` | `String` | Optional description of the answer. | | `session_identifier` | `String` | Unique identifier of the session in which this answer was generated. | | `generation_number` | `Int` | Generation sequence number of this answer within the session. | | `tokens` | `[String]` | Ordered list of TML token strings that make up the answer query (e.g., `[\"[sales]\", \"[date].\'monthly\'\"]`). | | `visualization_type` | `VizType` | Suggested visualization type: `Chart`, `Table`, or `Undefined`. `null` if no suggestion is available. | | `formulas` | `[String]` | List of formula names referenced in the answer. Empty if none are used. | | `parameters` | `[String]` | List of parameter names applied to the answer. Empty if none are used. | | `sub_queries` | `[JSON]` | List of sub-query objects used in the answer. Empty if none are present. | | `ac_state` | `ACState` | Agent context state, including `transaction_identifier` and `generation_number`, used to correlate this answer with a specific agent turn. | #### ACState fields | Field | Type | Description | |-------|------|-------------| | `transaction_identifier` | `String` | Unique identifier of the agent transaction that produced this answer. | | `generation_number` | `Int` | Generation number within the transaction. | #### Example request ```bash GET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/answers/{answer_identifier}/details ``` #### Example response ```json { \"answer\": { \"title\": \"sales by month\", \"description\": \"\", \"session_identifier\": \"7b00b801-73f4-4639-af5e-e775584ceba6\", \"generation_number\": 1, \"tokens\": [\"[sales]\", \"[date].\'monthly\'\"], \"visualization_type\": null, \"formulas\": [], \"parameters\": [], \"sub_queries\": [], \"ac_state\": { \"transaction_identifier\": \"7f6c9948-b4c7-4098-bb1f-6c67bc0e5699\", \"generation_number\": 1 } } } ``` #### Typical usage scenario 1. Call `getConversation` to retrieve the full conversation history. 2. Locate an `AnswerResponseItem` in `response_items` — note its `answer_id` field. 3. Call `loadAnswer` with the `conversation_identifier` and `answer_id` as `answer_identifier`. 4. The returned `tokens` array can be used to open the answer in the ThoughtSpot search interface or rendered as pill chips in the UI. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | | 404 | Not Found — no conversation or message exists with the given identifiers for the authenticated user. | | 422 | Unprocessable Entity — the message does not contain an answer of the expected type. | > ###### Note: > > - This endpoint only loads answer-type messages. Other message types are not supported. > - `visualization_type` may be `null` if the agent did not produce a visualization suggestion for this answer. > - `formulas`, `parameters`, and `sub_queries` are returned as empty arrays when not applicable — they are never `null`. > - Available from version 26.7.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param answerIdentifier Unique identifier of the answer to load. Use the `answer_id` field from an `AnswerResponseItem` returned by `getConversation`. */ loadAnswer(conversationIdentifier: string, answerIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Creates a login session for a ThoughtSpot user with Basic authentication. In Basic authentication method, REST clients log in to ThoughtSpot using `username` and `password` attributes. On a multi-tenant cluster with Orgs, users can pass the ID of the Org in the API request to log in to a specific Org context. **Note**: If Multi-Factor Authentication (MFA) is enabled on your instance, the API login request with basic authentication (`username` and `password` ) returns an error. Contact ThoughtSpot Support for assistance. A successful login returns a session cookie that can be used in your subsequent API requests. #### Redirecting after login To send a browser to a specific page once the session is created, pass `redirect_url`. It must be a path on the same ThoughtSpot instance that served the login request, for example `/pinboards`. An absolute URL is rejected with `400`, so that a login cannot be used to forward a newly issued session cookie to another host. The path is resolved against the host the caller actually reached, which means the same request works unchanged on a custom domain, behind a proxy, or on an Org-specific subdomain. * **Browser flows** — omit `no_url_redirection`. The API answers `302` with the resolved path in the `location` header, and the browser follows it on its own. This is the usual choice when the login is submitted as an HTML form or opened as a top-level navigation. * **SPA and non-browser clients** — set `no_url_redirection` to `true`. The API keeps its normal `204` response and returns the resolved path in the `location` header without redirecting, leaving the client to decide when and where to navigate. Use this from `fetch`/`XMLHttpRequest` calls, which follow a `302` internally and never expose it to your code. When `redirect_url` is omitted the response is unchanged, and `no_url_redirection` has no effect on its own. * @param loginRequest */ loginWithHttpInfo(loginRequest: LoginRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates a login session for a ThoughtSpot user with Basic authentication. In Basic authentication method, REST clients log in to ThoughtSpot using `username` and `password` attributes. On a multi-tenant cluster with Orgs, users can pass the ID of the Org in the API request to log in to a specific Org context. **Note**: If Multi-Factor Authentication (MFA) is enabled on your instance, the API login request with basic authentication (`username` and `password` ) returns an error. Contact ThoughtSpot Support for assistance. A successful login returns a session cookie that can be used in your subsequent API requests. #### Redirecting after login To send a browser to a specific page once the session is created, pass `redirect_url`. It must be a path on the same ThoughtSpot instance that served the login request, for example `/pinboards`. An absolute URL is rejected with `400`, so that a login cannot be used to forward a newly issued session cookie to another host. The path is resolved against the host the caller actually reached, which means the same request works unchanged on a custom domain, behind a proxy, or on an Org-specific subdomain. * **Browser flows** — omit `no_url_redirection`. The API answers `302` with the resolved path in the `location` header, and the browser follows it on its own. This is the usual choice when the login is submitted as an HTML form or opened as a top-level navigation. * **SPA and non-browser clients** — set `no_url_redirection` to `true`. The API keeps its normal `204` response and returns the resolved path in the `location` header without redirecting, leaving the client to decide when and where to navigate. Use this from `fetch`/`XMLHttpRequest` calls, which follow a `302` internally and never expose it to your code. When `redirect_url` is omitted the response is unchanged, and `no_url_redirection` has no effect on its own. * @param loginRequest */ login(loginRequest: LoginRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Logs out a user from their current session. */ logoutWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Logs out a user from their current session. */ logout(_options?: PromiseConfigurationOptions): Promise; /** * Version: 26.3.0.cl or later This API allows the addition or deletion of object level privileges for a set of users and groups, on a set of metadata objects. It provides users to access certain features based on privilege based access control. #### Usage guidelines - Specify the `operation`. The supported operations are: `ADD`, `REMOVE`. - Specify the type of the objects on which the object privileges are being provided in `metadata_type`. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - Specify the list of object privilege types in the `object_privilege_types` array. The supported object privilege types are: `SPOTTER_COACHING_PRIVILEGE`. - Specify the identifiers (either GUID or name) for the metadata objects in the `metadata_identifiers` array. - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals to which you want to apply the given operation and given object privileges in the `principals` array. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"operation\": \"operation-type\", \"metadata_type\": \"metadata-type\", \"object_privilege_types\": [\"privilege-type-1\", \"privilege-type-2\"], \"metadata_identifiers\": [\"metadata-guid-or-name-1\", \"metadata-guid-or-name-1\"], \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ] } ``` > ###### Note: > * Only admin users, users with edit access and users with coaching privilege on a given data-model can add or remove principals related to SPOTTER_COACHING_PRIVILEGE * @param manageObjectPrivilegeRequest */ manageObjectPrivilegeWithHttpInfo(manageObjectPrivilegeRequest: ManageObjectPrivilegeRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.3.0.cl or later This API allows the addition or deletion of object level privileges for a set of users and groups, on a set of metadata objects. It provides users to access certain features based on privilege based access control. #### Usage guidelines - Specify the `operation`. The supported operations are: `ADD`, `REMOVE`. - Specify the type of the objects on which the object privileges are being provided in `metadata_type`. Only `LOGICAL_TABLE` metadata type is supported for now. It may be extended for other metadata types in future. - Specify the list of object privilege types in the `object_privilege_types` array. The supported object privilege types are: `SPOTTER_COACHING_PRIVILEGE`. - Specify the identifiers (either GUID or name) for the metadata objects in the `metadata_identifiers` array. - Specify the `type` (`USER` or `USER_GROUP`) and `identifier` (either GUID or name) of the principals to which you want to apply the given operation and given object privileges in the `principals` array. - Ensure using correct Authorization Bearer Token corresponding to specific user & org. #### Example request ```json { \"operation\": \"operation-type\", \"metadata_type\": \"metadata-type\", \"object_privilege_types\": [\"privilege-type-1\", \"privilege-type-2\"], \"metadata_identifiers\": [\"metadata-guid-or-name-1\", \"metadata-guid-or-name-1\"], \"principals\": [ { \"type\": \"type-1\", \"identifier\": \"principal-guid-or-name-1\" }, { \"type\": \"type-2\", \"identifier\": \"principal-guid-or-name-2\" } ] } ``` > ###### Note: > * Only admin users, users with edit access and users with coaching privilege on a given data-model can add or remove principals related to SPOTTER_COACHING_PRIVILEGE * @param manageObjectPrivilegeRequest */ manageObjectPrivilege(manageObjectPrivilegeRequest: ManageObjectPrivilegeRequest, _options?: PromiseConfigurationOptions): Promise; /** * Parameterize fields in metadata objects. Version: 10.9.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/metadata/parameterize-fields](/api/rest/2.0/metadata/parameterize-fields) instead. Allows parameterizing fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be parameterized. For Connection Config, the only supported field name is: * impersonate_user * @param parameterizeMetadataRequest */ parameterizeMetadataWithHttpInfo(parameterizeMetadataRequest: ParameterizeMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Parameterize fields in metadata objects. Version: 10.9.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/metadata/parameterize-fields](/api/rest/2.0/metadata/parameterize-fields) instead. Allows parameterizing fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be parameterized. For Connection Config, the only supported field name is: * impersonate_user * @param parameterizeMetadataRequest */ parameterizeMetadata(parameterizeMetadataRequest: ParameterizeMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Parameterize multiple fields of metadata objects. For example [schemaName, databaseName] for LOGICAL_TABLE. Version: 26.10.0.cl or later Allows parameterizing multiple fields of metadata objects in ThoughtSpot. For example, you can parameterize [schemaName, databaseName] for LOGICAL_TABLE. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table, the field type must be `ATTRIBUTE` and field names can include: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_names specifies the exact properties of the Connection or Connection Config that need to be parameterized. For Connection Config, supported field names include: * impersonate_user You can parameterize multiple fields at once by providing an array of field names. * @param parameterizeMetadataFieldsRequest */ parameterizeMetadataFieldsWithHttpInfo(parameterizeMetadataFieldsRequest: ParameterizeMetadataFieldsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Parameterize multiple fields of metadata objects. For example [schemaName, databaseName] for LOGICAL_TABLE. Version: 26.10.0.cl or later Allows parameterizing multiple fields of metadata objects in ThoughtSpot. For example, you can parameterize [schemaName, databaseName] for LOGICAL_TABLE. Requires appropriate permissions to modify the metadata object. The API endpoint allows parameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table, the field type must be `ATTRIBUTE` and field names can include: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_names specifies the exact properties of the Connection or Connection Config that need to be parameterized. For Connection Config, supported field names include: * impersonate_user You can parameterize multiple fields at once by providing an array of field names. * @param parameterizeMetadataFieldsRequest */ parameterizeMetadataFields(parameterizeMetadataFieldsRequest: ParameterizeMetadataFieldsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.10.0.cl or later Allows publishing metadata objects across organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows publishing the following types of metadata objects: * Liveboards * Answers * Logical Tables This API will essentially share the objects along with it\'s dependencies to the org admins of the orgs to which it is being published. * @param publishMetadataRequest */ publishMetadataWithHttpInfo(publishMetadataRequest: PublishMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Allows publishing metadata objects across organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows publishing the following types of metadata objects: * Liveboards * Answers * Logical Tables This API will essentially share the objects along with it\'s dependencies to the org admins of the orgs to which it is being published. * @param publishMetadataRequest */ publishMetadata(publishMetadataRequest: PublishMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update values for a variable Version: 26.4.0.cl or later Allows updating values for a specific variable in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to the variable * Replacing existing values * Deleting values from the variable * Resetting all values When updating variable values, you need to specify: * The variable identifier (ID or name) * The values to add/replace/remove * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constraints for the given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param identifier Unique ID or name of the variable * @param putVariableValuesRequest */ putVariableValuesWithHttpInfo(identifier: string, putVariableValuesRequest: PutVariableValuesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update values for a variable Version: 26.4.0.cl or later Allows updating values for a specific variable in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to the variable * Replacing existing values * Deleting values from the variable * Resetting all values When updating variable values, you need to specify: * The variable identifier (ID or name) * The values to add/replace/remove * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constraints for the given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param identifier Unique ID or name of the variable * @param putVariableValuesRequest */ putVariableValues(identifier: string, putVariableValuesRequest: PutVariableValuesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.7.0.cl or later **Deprecated** — Use `getRelevantQuestions` instead (available from 10.13.0.cl). Breaks down a topical or goal-oriented natural language question into smaller, actionable analytical sub-questions, each mapped to a relevant data source for independent execution. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request accepts the following parameters: - `nlsRequest`: contains the user `query` to decompose, along with optional `instructions` and `bypassCache` flag - `worksheetIds`: list of data source identifiers to scope the decomposition - `answerIds`: list of Answer GUIDs whose data guides the response - `liveboardIds`: list of Liveboard GUIDs whose data guides the response - `conversationId`: an existing conversation session ID for context continuity - `content`: supplementary text or CSV data to improve response quality - `maxDecomposedQueries`: maximum number of sub-questions to return (default: `5`) If the request is successful, the API returns a `decomposedQueryResponse` containing a list of `decomposedQueries`, each with: - `query`: the generated analytical sub-question - `worksheetId`: the unique ID of the data source the question targets - `worksheetName`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is deprecated since 10.13.0.cl. Use `getRelevantQuestions` for new integrations. > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot support to enable Spotter on your cluster. * @param queryGetDecomposedQueryRequest */ queryGetDecomposedQueryWithHttpInfo(queryGetDecomposedQueryRequest: QueryGetDecomposedQueryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.7.0.cl or later **Deprecated** — Use `getRelevantQuestions` instead (available from 10.13.0.cl). Breaks down a topical or goal-oriented natural language question into smaller, actionable analytical sub-questions, each mapped to a relevant data source for independent execution. Requires `CAN_USE_SPOTTER` privilege and at least view-level access to the referenced metadata objects. #### Usage guidelines The request accepts the following parameters: - `nlsRequest`: contains the user `query` to decompose, along with optional `instructions` and `bypassCache` flag - `worksheetIds`: list of data source identifiers to scope the decomposition - `answerIds`: list of Answer GUIDs whose data guides the response - `liveboardIds`: list of Liveboard GUIDs whose data guides the response - `conversationId`: an existing conversation session ID for context continuity - `content`: supplementary text or CSV data to improve response quality - `maxDecomposedQueries`: maximum number of sub-questions to return (default: `5`) If the request is successful, the API returns a `decomposedQueryResponse` containing a list of `decomposedQueries`, each with: - `query`: the generated analytical sub-question - `worksheetId`: the unique ID of the data source the question targets - `worksheetName`: the display name of the corresponding data source #### Error responses | Code | Description | |------|---------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view access to the referenced metadata objects. | > ###### Note: > * This endpoint is deprecated since 10.13.0.cl. Use `getRelevantQuestions` for new integrations. > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter — please contact ThoughtSpot support to enable Spotter on your cluster. * @param queryGetDecomposedQueryRequest */ queryGetDecomposedQuery(queryGetDecomposedQueryRequest: QueryGetDecomposedQueryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Resets the password of a user account. Administrators can reset password on behalf of a user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param resetUserPasswordRequest */ resetUserPasswordWithHttpInfo(resetUserPasswordRequest: ResetUserPasswordRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Resets the password of a user account. Administrators can reset password on behalf of a user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param resetUserPasswordRequest */ resetUserPassword(resetUserPasswordRequest: ResetUserPasswordRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Reverts TML objects to a previous commit specified in the API request. Requires at least edit access to objects. In the API request, specify the `commit_id`. If the branch name is not specified in the request, the API will consider the default branch configured on your instance. By default, the API reverts all objects. If the revert operation fails for one of the objects provided in the commit, the API returns an error and does not revert any object. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitId Commit id to which the object should be reverted * @param revertCommitRequest */ revertCommitWithHttpInfo(commitId: string, revertCommitRequest: RevertCommitRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Reverts TML objects to a previous commit specified in the API request. Requires at least edit access to objects. In the API request, specify the `commit_id`. If the branch name is not specified in the request, the API will consider the default branch configured on your instance. By default, the API reverts all objects. If the revert operation fails for one of the objects provided in the commit, the API returns an error and does not revert any object. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitId Commit id to which the object should be reverted * @param revertCommitRequest */ revertCommit(commitId: string, revertCommitRequest: RevertCommitRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later Revokes OAuth refresh tokens for users who no longer require access to a data warehouse connection. When a token is revoked, the affected user\'s session for that connection is terminated, and they must re-authenticate to regain access. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on the ThoughtSpot instance, users with `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege can also make API requests to revoke tokens for connection users. #### Usage guidelines You can specify different combinations of identifiers to control which refresh tokens are revoked. - **connection_identifier**: Revokes refresh tokens for all users of the connection, except the connection author. - **connection_identifier** and **user_identifiers**: Revokes refresh tokens only for the users specified in the request. If the name or ID of the connection author is included in the request, their token will also be revoked. - **connection_identifier** and **configuration_identifiers**: Revokes refresh tokens for all users on the specified configurations, except the configuration author. - **connection_identifier**, **configuration_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users on the specified configurations. - **connection_identifier** and **org_identifiers**: Revokes refresh tokens for the specified Orgs. Applicable only for published connections. - **connection_identifier**, **org_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users in the specified Orgs. Applicable only for published connections. **NOTE**: The `org_identifiers` parameter is only applicable for published connections. Using this parameter for unpublished connections will result in an error. Ensure that the connections are published before making the API request. * @param connectionIdentifier Unique ID or name of the connection whose refresh tokens need to be revoked. All the users associated with the connection will have their refresh tokens revoked except the author. * @param revokeRefreshTokensRequest */ revokeRefreshTokensWithHttpInfo(connectionIdentifier: string, revokeRefreshTokensRequest: RevokeRefreshTokensRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Revokes OAuth refresh tokens for users who no longer require access to a data warehouse connection. When a token is revoked, the affected user\'s session for that connection is terminated, and they must re-authenticate to regain access. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DATAMANAGEMENT` (**Can manage data**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on the ThoughtSpot instance, users with `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege can also make API requests to revoke tokens for connection users. #### Usage guidelines You can specify different combinations of identifiers to control which refresh tokens are revoked. - **connection_identifier**: Revokes refresh tokens for all users of the connection, except the connection author. - **connection_identifier** and **user_identifiers**: Revokes refresh tokens only for the users specified in the request. If the name or ID of the connection author is included in the request, their token will also be revoked. - **connection_identifier** and **configuration_identifiers**: Revokes refresh tokens for all users on the specified configurations, except the configuration author. - **connection_identifier**, **configuration_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users on the specified configurations. - **connection_identifier** and **org_identifiers**: Revokes refresh tokens for the specified Orgs. Applicable only for published connections. - **connection_identifier**, **org_identifiers**, and **user_identifiers**: Revokes refresh tokens for the specified users in the specified Orgs. Applicable only for published connections. **NOTE**: The `org_identifiers` parameter is only applicable for published connections. Using this parameter for unpublished connections will result in an error. Ensure that the connections are published before making the API request. * @param connectionIdentifier Unique ID or name of the connection whose refresh tokens need to be revoked. All the users associated with the connection will have their refresh tokens revoked except the author. * @param revokeRefreshTokensRequest */ revokeRefreshTokens(connectionIdentifier: string, revokeRefreshTokensRequest: RevokeRefreshTokensRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Revokes the authentication token issued for current user session. The token of your current session expires when you make a call to the `/api/rest/2.0/auth/token/revoke` endpoint. the users will not be able to access ThoughtSpot objects until a new token is obtained. To restart your session, request for a new token from ThoughtSpot. See [Get Full Access Token](#/http/api-endpoints/authentication/get-full-access-token). * @param revokeTokenRequest */ revokeTokenWithHttpInfo(revokeTokenRequest: RevokeTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Revokes the authentication token issued for current user session. The token of your current session expires when you make a call to the `/api/rest/2.0/auth/token/revoke` endpoint. the users will not be able to access ThoughtSpot objects until a new token is obtained. To restart your session, request for a new token from ThoughtSpot. See [Get Full Access Token](#/http/api-endpoints/authentication/get-full-access-token). * @param revokeTokenRequest */ revokeToken(revokeTokenRequest: RevokeTokenRequest, _options?: PromiseConfigurationOptions): Promise; /** * Searches Spotter Analysts. Two modes: - Fetch mode: when `analyst_identifier` is provided, the response contains exactly that analyst and all other filters are ignored. - List mode: returns a paginated list of analysts visible to the caller, optionally filtered by a case-insensitive substring match on the analyst name (`query`) and by ownership (`type`). Results are ordered by most recently accessed. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Version: 26.10.0.cl or later Searches Spotter Analysts. Use this endpoint to page through the analysts visible to you, or to fetch a single analyst by its identifier. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Use a bearer token for the Org whose analysts should be searched. #### Usage guidelines The endpoint operates in one of two modes: **Fetch mode** — when `analyst_identifier` is provided, the response contains exactly that analyst (`total_size` is 1) and all other filters are ignored. The caller must have access to the analyst (owner, shared with, or admin/Spotter-management privileges). **List mode** — when `analyst_identifier` is omitted, the response is a paginated list of analysts the caller can see, ordered by most recently accessed: - `record_size` (optional): number of records per page. Default 50, between 1 and 500. - `record_offset` (optional): zero-based index of the first record. Default 0, maximum 10000. - `query` (optional): case-insensitive substring match applied to the analyst **name only**. - `type` (optional): ownership filter — `ALL` (default; created by or shared with me), `CREATED_BY_ME`, or `SHARED_TO_ME`. The response contains `analysts` — the page of matching analysts — and `total_size`, the total number of matches before pagination. Each analyst includes its `id`, `name`, `description`, `instructions`, `sources` (with `id`, `type`, and display `name`), enriched `mcp_connectors` (with `id`, `name`, and `icon_url`), `icon_id`, `starter_prompts` (including the server-managed fixed prompt, marked `is_fixed`), `updated_time_in_millis` and `last_accessed_time_in_millis` (epoch milliseconds), and `created_by` / `updated_by` user references (with `id`, `name`, and `display_name`). #### Error conditions - `403` — missing privileges, or (fetch mode) no access to the requested analyst. - `404` — (fetch mode) no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as `record_size` or `record_offset` out of range. * @param searchAnalystsRequest */ searchAnalystsWithHttpInfo(searchAnalystsRequest: SearchAnalystsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Searches Spotter Analysts. Two modes: - Fetch mode: when `analyst_identifier` is provided, the response contains exactly that analyst and all other filters are ignored. - List mode: returns a paginated list of analysts visible to the caller, optionally filtered by a case-insensitive substring match on the analyst name (`query`) and by ownership (`type`). Results are ordered by most recently accessed. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Version: 26.10.0.cl or later Searches Spotter Analysts. Use this endpoint to page through the analysts visible to you, or to fetch a single analyst by its identifier. Requires at least one of `ADMINISTRATION`, `CAN_MANAGE_SPOTTER`, or `CAN_USE_SPOTTER` privileges. Use a bearer token for the Org whose analysts should be searched. #### Usage guidelines The endpoint operates in one of two modes: **Fetch mode** — when `analyst_identifier` is provided, the response contains exactly that analyst (`total_size` is 1) and all other filters are ignored. The caller must have access to the analyst (owner, shared with, or admin/Spotter-management privileges). **List mode** — when `analyst_identifier` is omitted, the response is a paginated list of analysts the caller can see, ordered by most recently accessed: - `record_size` (optional): number of records per page. Default 50, between 1 and 500. - `record_offset` (optional): zero-based index of the first record. Default 0, maximum 10000. - `query` (optional): case-insensitive substring match applied to the analyst **name only**. - `type` (optional): ownership filter — `ALL` (default; created by or shared with me), `CREATED_BY_ME`, or `SHARED_TO_ME`. The response contains `analysts` — the page of matching analysts — and `total_size`, the total number of matches before pagination. Each analyst includes its `id`, `name`, `description`, `instructions`, `sources` (with `id`, `type`, and display `name`), enriched `mcp_connectors` (with `id`, `name`, and `icon_url`), `icon_id`, `starter_prompts` (including the server-managed fixed prompt, marked `is_fixed`), `updated_time_in_millis` and `last_accessed_time_in_millis` (epoch milliseconds), and `created_by` / `updated_by` user references (with `id`, `name`, and `display_name`). #### Error conditions - `403` — missing privileges, or (fetch mode) no access to the requested analyst. - `404` — (fetch mode) no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as `record_size` or `record_offset` out of range. * @param searchAnalystsRequest */ searchAnalysts(searchAnalystsRequest: SearchAnalystsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.6.0.cl or later Returns the authentication configuration for the specified auth type at cluster and org level. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `scope` to control which level of settings are returned: - `CLUSTER` — Returns cluster-level authentication status and access tokens. Accessible only from the Primary Org. - `ORG` — Returns org-level authentication status and access tokens for the current Org. Requires the per-Org authentication feature to be enabled on your instance. - If `scope` is omitted, both cluster and org-level settings are returned based on the caller\'s org context and feature availability. The `access_tokens` array in `cluster_preferences` or `org_preferences` is omitted when no token is configured at that level. **Note**: Access tokens returned in the response are sensitive credentials. Treat them with the same care as passwords. * @param searchAuthSettingsRequest */ searchAuthSettingsWithHttpInfo(searchAuthSettingsRequest: SearchAuthSettingsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Returns the authentication configuration for the specified auth type at cluster and org level. Currently supports `TRUSTED_AUTH`. #### Required privileges Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `CONTROL_TRUSTED_AUTH` (**Can Enable or Disable Trusted Authentication**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CONTROL_TRUSTED_AUTH` privilege is required. #### Usage guidelines Use `scope` to control which level of settings are returned: - `CLUSTER` — Returns cluster-level authentication status and access tokens. Accessible only from the Primary Org. - `ORG` — Returns org-level authentication status and access tokens for the current Org. Requires the per-Org authentication feature to be enabled on your instance. - If `scope` is omitted, both cluster and org-level settings are returned based on the caller\'s org context and feature availability. The `access_tokens` array in `cluster_preferences` or `org_preferences` is omitted when no token is configured at that level. **Note**: Access tokens returned in the response are sensitive credentials. Treat them with the same care as passwords. * @param searchAuthSettingsRequest */ searchAuthSettings(searchAuthSettingsRequest: SearchAuthSettingsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Gets a list of [custom calendars](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines By 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. The `name_pattern` parameter filters and returns only those objects that match the specified pattern. Use `%` as a wildcard for pattern matching. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCalendarsRequest */ searchCalendarsWithHttpInfo(searchCalendarsRequest: SearchCalendarsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.12.0.cl or later Gets a list of [custom calendars](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines By 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. The `name_pattern` parameter filters and returns only those objects that match the specified pattern. Use `%` as a wildcard for pattern matching. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCalendarsRequest */ searchCalendars(searchCalendarsRequest: SearchCalendarsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Searches delivery history for communication channels such as webhooks. Returns channel-level delivery status for each job execution record. Use this to monitor channel health and delivery success rates across events. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. **NOTE**: When `channel_type` is `WEBHOOK`, the following constraints apply: - `job_ids`, `channel_identifiers`, and `events` each accept at most one element. - When `job_ids` is provided, it is used as the sole lookup key and other filter fields are ignored. - When `job_ids` is not provided, `channel_identifiers` and `events` are both required, each containing exactly one element. - Records older than the configured retention period are not returned. - Use `start_epoch_time_in_millis` and/or `end_epoch_time_in_millis` to narrow results to a specific time window. * @param searchChannelHistoryRequest */ searchChannelHistoryWithHttpInfo(searchChannelHistoryRequest: SearchChannelHistoryRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Searches delivery history for communication channels such as webhooks. Returns channel-level delivery status for each job execution record. Use this to monitor channel health and delivery success rates across events. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. **NOTE**: When `channel_type` is `WEBHOOK`, the following constraints apply: - `job_ids`, `channel_identifiers`, and `events` each accept at most one element. - When `job_ids` is provided, it is used as the sole lookup key and other filter fields are ignored. - When `job_ids` is not provided, `channel_identifiers` and `events` are both required, each containing exactly one element. - Records older than the configured retention period are not returned. - Use `start_epoch_time_in_millis` and/or `end_epoch_time_in_millis` to narrow results to a specific time window. * @param searchChannelHistoryRequest */ searchChannelHistory(searchChannelHistoryRequest: SearchChannelHistoryRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Gets a list of collections available in ThoughtSpot. To get details of a specific collection, specify the collection GUID or name. You can also filter the API response based on the collection name pattern, author, and other criteria. #### Search options * **name_pattern**: Use \'%\' as a wildcard character to match collection names * **collection_identifiers**: Search for specific collections by their GUIDs or names * **include_metadata**: When set to `true`, includes the metadata objects within each collection in the response **NOTE**: In addition to the GUID and name, `collection_identifiers` accepts a Custom object ID if one is configured for the collection. The response also includes the `obj_id` field for each collection that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCollectionsRequest */ searchCollectionsWithHttpInfo(searchCollectionsRequest: SearchCollectionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Gets a list of collections available in ThoughtSpot. To get details of a specific collection, specify the collection GUID or name. You can also filter the API response based on the collection name pattern, author, and other criteria. #### Search options * **name_pattern**: Use \'%\' as a wildcard character to match collection names * **collection_identifiers**: Search for specific collections by their GUIDs or names * **include_metadata**: When set to `true`, includes the metadata objects within each collection in the response **NOTE**: In addition to the GUID and name, `collection_identifiers` accepts a Custom object ID if one is configured for the collection. The response also includes the `obj_id` field for each collection that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchCollectionsRequest */ searchCollections(searchCollectionsRequest: SearchCollectionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Gets a list of commits for a given metadata object. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param searchCommitsRequest */ searchCommitsWithHttpInfo(searchCommitsRequest: SearchCommitsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Gets a list of commits for a given metadata object. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param searchCommitsRequest */ searchCommits(searchCommitsRequest: SearchCommitsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Fetch communication channel preferences. - Use `cluster_preferences` to fetch the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to fetch any Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param searchCommunicationChannelPreferencesRequest */ searchCommunicationChannelPreferencesWithHttpInfo(searchCommunicationChannelPreferencesRequest: SearchCommunicationChannelPreferencesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Fetch communication channel preferences. - Use `cluster_preferences` to fetch the default preferences for your ThoughtSpot application instance. - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to fetch any Org-specific preferences that override the defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action. * @param searchCommunicationChannelPreferencesRequest */ searchCommunicationChannelPreferences(searchCommunicationChannelPreferencesRequest: SearchCommunicationChannelPreferencesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Gets Git repository connections configured on the ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param searchConfigRequest */ searchConfigWithHttpInfo(searchConfigRequest: SearchConfigRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Gets Git repository connections configured on the ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param searchConfigRequest */ searchConfig(searchConfigRequest: SearchConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Gets connection objects. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. - To get a list of all connections available in the ThoughtSpot system, send the API request without any attributes in the request body. - To get the connection objects for a specific type of data warehouse, specify the type in `data_warehouse_types`. - To fetch details of a connection object, specify the connection object GUID or name. The `name_pattern` attribute allows passing partial text with `%` for a wildcard match. - To get details of the database, schemas, tables, or columns from a data connection object, specify `data_warehouse_object_type`. - To get a specific database, schema, table, or column from a connection object, define the object type in `data_warehouse_object_type` and object properties in the `data_warehouse_objects` array. For example, to search for a column, you must pass the database, schema, and table names in the API request. Note that in the following example, object properties are set in a hierarchical order (`database` > `schema` > `table` > `column`). ``` { \"connections\": [ { \"identifier\": \"b9d1f2ef-fa65-4a4b-994e-30fa2d57b0c2\", \"data_warehouse_objects\": [ { \"database\": \"NEBULADEV\", \"schema\": \"INFORMATION_SCHEMA\", \"table\": \"APPLICABLE_ROLES\", \"column\": \"ROLE_NAME\" } ] } ], \"data_warehouse_object_type\": \"COLUMN\" } ``` - To fetch data by `configuration`, specify `data_warehouse_object_type`. For example, to fetch columns from the `DEVELOPMENT` database, specify the `data_warehouse_object_type` as `DATABASE` and define the `configuration` string as `{\"database\":\"DEVELOPMENT\"}`. To get column data for a specific table, specify the table, for example,`{\"database\":\"RETAILAPPAREL\",\"table\":\"PIPES\"}`. - To query connections by `authentication_type`, specify `data_warehouse_object_type`. Supported values for `authentication_type` are: - `SERVICE_ACCOUNT`: For connections that require service account credentials to authenticate to the Cloud Data Warehouse and fetch data. - `OAUTH`: For connections that require OAuth credentials to authenticate to the Cloud Data Warehouse and fetch data. Teradata, Oracle, and Presto Cloud Data Warehouses do not support the OAuth authentication type. - `IAM`: For connections that have the IAM OAuth set up. This authentication type is supported on Amazon Redshift connections only. - `EXTOAUTH`: For connections that have External OAuth set up. ThoughtSpot supports external [OAuth with Microsoft Azure Active Directory (AD)](https://docs.thoughtspot.com/cloud/latest/ connections-snowflake-azure-ad-oauth) and [Okta for Snowflake data connections](https://docs.thoughtspot.com/cloud/latest/connections-snowflake-okta-oauth). - `KEY_PAIR`: For connections that require Key Pair account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PKCE`: For connections that require OAuth with PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake, Starburst, Databricks, Denodo connections only. - `EXTOAUTH_WITH_PKCE`: For connections that require External OAuth With PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PEZ`: For connections that require OAuth With PEZ account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Amazon Redshift connections only. - `OAUTH_WITH_SERVICE_PRINCIPAL`: For connections that require OAuth With Service Principal account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `PERSONAL_ACCESS_TOKEN`: For connections that require Personal Access Token account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `OAUTH_CLIENT_CREDENTIALS`: For connections that require OAuth Client Credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - To include more details about connection objects in the API response, set `include_details` to `true`. - You can also sort the output by field names and filter connections by tags. **NOTE**: In addition to the connection GUID and name, the `identifier` field on each entry in `connections` accepts a Custom object ID if one is configured for the connection. The response also includes the `obj_id` field for each connection that has one set. **NOTE**: When filtering connection records by parameters other than `data_warehouse_types` or `tag_identifiers`, ensure that you set `record_size` to `-1` and `record_offset` to `0` for precise results. * @param searchConnectionRequest */ searchConnectionWithHttpInfo(searchConnectionRequest: SearchConnectionRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Gets connection objects. Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. - To get a list of all connections available in the ThoughtSpot system, send the API request without any attributes in the request body. - To get the connection objects for a specific type of data warehouse, specify the type in `data_warehouse_types`. - To fetch details of a connection object, specify the connection object GUID or name. The `name_pattern` attribute allows passing partial text with `%` for a wildcard match. - To get details of the database, schemas, tables, or columns from a data connection object, specify `data_warehouse_object_type`. - To get a specific database, schema, table, or column from a connection object, define the object type in `data_warehouse_object_type` and object properties in the `data_warehouse_objects` array. For example, to search for a column, you must pass the database, schema, and table names in the API request. Note that in the following example, object properties are set in a hierarchical order (`database` > `schema` > `table` > `column`). ``` { \"connections\": [ { \"identifier\": \"b9d1f2ef-fa65-4a4b-994e-30fa2d57b0c2\", \"data_warehouse_objects\": [ { \"database\": \"NEBULADEV\", \"schema\": \"INFORMATION_SCHEMA\", \"table\": \"APPLICABLE_ROLES\", \"column\": \"ROLE_NAME\" } ] } ], \"data_warehouse_object_type\": \"COLUMN\" } ``` - To fetch data by `configuration`, specify `data_warehouse_object_type`. For example, to fetch columns from the `DEVELOPMENT` database, specify the `data_warehouse_object_type` as `DATABASE` and define the `configuration` string as `{\"database\":\"DEVELOPMENT\"}`. To get column data for a specific table, specify the table, for example,`{\"database\":\"RETAILAPPAREL\",\"table\":\"PIPES\"}`. - To query connections by `authentication_type`, specify `data_warehouse_object_type`. Supported values for `authentication_type` are: - `SERVICE_ACCOUNT`: For connections that require service account credentials to authenticate to the Cloud Data Warehouse and fetch data. - `OAUTH`: For connections that require OAuth credentials to authenticate to the Cloud Data Warehouse and fetch data. Teradata, Oracle, and Presto Cloud Data Warehouses do not support the OAuth authentication type. - `IAM`: For connections that have the IAM OAuth set up. This authentication type is supported on Amazon Redshift connections only. - `EXTOAUTH`: For connections that have External OAuth set up. ThoughtSpot supports external [OAuth with Microsoft Azure Active Directory (AD)](https://docs.thoughtspot.com/cloud/latest/ connections-snowflake-azure-ad-oauth) and [Okta for Snowflake data connections](https://docs.thoughtspot.com/cloud/latest/connections-snowflake-okta-oauth). - `KEY_PAIR`: For connections that require Key Pair account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PKCE`: For connections that require OAuth with PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake, Starburst, Databricks, Denodo connections only. - `EXTOAUTH_WITH_PKCE`: For connections that require External OAuth With PKCE account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - `OAUTH_WITH_PEZ`: For connections that require OAuth With PEZ account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Amazon Redshift connections only. - `OAUTH_WITH_SERVICE_PRINCIPAL`: For connections that require OAuth With Service Principal account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `PERSONAL_ACCESS_TOKEN`: For connections that require Personal Access Token account credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Databricks connections only. - `OAUTH_CLIENT_CREDENTIALS`: For connections that require OAuth Client Credentials to authenticate to the Cloud Data Warehouse and fetch data. This authentication type is supported on Snowflake connections only. - To include more details about connection objects in the API response, set `include_details` to `true`. - You can also sort the output by field names and filter connections by tags. **NOTE**: In addition to the connection GUID and name, the `identifier` field on each entry in `connections` accepts a Custom object ID if one is configured for the connection. The response also includes the `obj_id` field for each connection that has one set. **NOTE**: When filtering connection records by parameters other than `data_warehouse_types` or `tag_identifiers`, ensure that you set `record_size` to `-1` and `record_offset` to `0` for precise results. * @param searchConnectionRequest */ searchConnection(searchConnectionRequest: SearchConnectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Gets custom actions configured on the cluster. 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. * @param searchCustomActionsRequest */ searchCustomActionsWithHttpInfo(searchCustomActionsRequest: SearchCustomActionsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Gets custom actions configured on the cluster. 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. * @param searchCustomActionsRequest */ searchCustomActions(searchCustomActionsRequest: SearchCustomActionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Generates an Answer from a given data source. Requires at least view access to the data source object (Worksheet or View). If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines To search data, specify the data source GUID in `logical_table_identifier`. The data source can be a Worksheet, View, Table, or SQL view. Pass search tokens in the `query_string` attribute in the API request as shown in the following example: ``` { \"query_string\": \"[sales] by [store]\", \"logical_table_identifier\": \"cd252e5c-b552-49a8-821d-3eadaa049cca\", } ``` For more information about the `query_string` format and data source attribute, see [Search data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_search_data_api). The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_api). * @param searchDataRequest */ searchDataWithHttpInfo(searchDataRequest: SearchDataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Generates an Answer from a given data source. Requires at least view access to the data source object (Worksheet or View). If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled, the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege is also required. #### Usage guidelines To search data, specify the data source GUID in `logical_table_identifier`. The data source can be a Worksheet, View, Table, or SQL view. Pass search tokens in the `query_string` attribute in the API request as shown in the following example: ``` { \"query_string\": \"[sales] by [store]\", \"logical_table_identifier\": \"cd252e5c-b552-49a8-821d-3eadaa049cca\", } ``` For more information about the `query_string` format and data source attribute, see [Search data API](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_search_data_api). The `record_size` attribute determines the number of records to retrieve in an API call. For more information about pagination, record size, and maximum row limit, see [Pagination and record size settings](https://developers.thoughtspot.com/docs/fetch-data-and-report-apis#_pagination_settings_for_data_and_report_api). * @param searchDataRequest */ searchData(searchDataRequest: SearchDataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.10.0.cl or later Search the email customization configuration if any set for the ThoughtSpot system. #### 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. * @param searchEmailCustomizationRequest */ searchEmailCustomizationWithHttpInfo(searchEmailCustomizationRequest: SearchEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.10.0.cl or later Search the email customization configuration if any set for the ThoughtSpot system. #### 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. * @param searchEmailCustomizationRequest */ searchEmailCustomization(searchEmailCustomizationRequest: SearchEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Returns the feature configurations available on the ThoughtSpot system, grouped by feature group. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To retrieve feature configurations, pass these parameters in your API request: - `scope` — Determines the administrative view. Use `CLUSTER` for the cluster-admin view (returns the Orgs assigned to each feature); use `ORG` for the org-admin view (returns the current value of each feature for a single Org). - `org_identifier` — Numeric ID of the Org. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `category` — Availability category of the features to return. `GENERAL_ACCESS` returns generally available features; `EARLY_ACCESS` returns features still in early access. Defaults to `GENERAL_ACCESS`. The response fields populated depend on the requested scope. In the cluster-admin view (`scope=CLUSTER`), each feature includes `assigned_orgs`, `is_org_aware`, and (for non-org-aware features) `feature_value`. In the org-admin view (`scope=ORG`), each feature includes `element_type`, `element_config`, and `element_value`. The following example retrieves the general-access features for the cluster-admin view: ``` { \"scope\": \"CLUSTER\", \"category\": \"GENERAL_ACCESS\" } ``` For the org-admin view, set `scope` to `ORG` and pass the `org_identifier` of the Org to scope the search to (`org_identifier` is required when `scope` is `ORG`; omitting it returns a 400 error): ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"category\": \"GENERAL_ACCESS\" } ``` * @param searchFeaturesRequest */ searchFeaturesWithHttpInfo(searchFeaturesRequest: SearchFeaturesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.10.0.cl or later Returns the feature configurations available on the ThoughtSpot system, grouped by feature group. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To retrieve feature configurations, pass these parameters in your API request: - `scope` — Determines the administrative view. Use `CLUSTER` for the cluster-admin view (returns the Orgs assigned to each feature); use `ORG` for the org-admin view (returns the current value of each feature for a single Org). - `org_identifier` — Numeric ID of the Org. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `category` — Availability category of the features to return. `GENERAL_ACCESS` returns generally available features; `EARLY_ACCESS` returns features still in early access. Defaults to `GENERAL_ACCESS`. The response fields populated depend on the requested scope. In the cluster-admin view (`scope=CLUSTER`), each feature includes `assigned_orgs`, `is_org_aware`, and (for non-org-aware features) `feature_value`. In the org-admin view (`scope=ORG`), each feature includes `element_type`, `element_config`, and `element_value`. The following example retrieves the general-access features for the cluster-admin view: ``` { \"scope\": \"CLUSTER\", \"category\": \"GENERAL_ACCESS\" } ``` For the org-admin view, set `scope` to `ORG` and pass the `org_identifier` of the Org to scope the search to (`org_identifier` is required when `scope` is `ORG`; omitting it returns a 400 error): ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"category\": \"GENERAL_ACCESS\" } ``` * @param searchFeaturesRequest */ searchFeatures(searchFeaturesRequest: SearchFeaturesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets a list of metadata objects available on the ThoughtSpot system. This API endpoint is available to all users who have view access to the object. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view data for all metadata objects, including users and groups. #### Usage guidelines - To get all metadata objects, send the API request without any attributes. - To get metadata objects of a specific type, set the `type` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE`. - To filter metadata objects within type `LOGICAL_TABLE`, set the `subtypes` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE` & subtypes as `[WORKSHEET]`. - To get a specific metadata object, specify the GUID. - To customize your search and filter the API response, you can use several parameters. You can search for objects created or modified by specific users, by tags applied to the objects, or by using the include parameters like `include_auto_created_objects`, `include_dependent_objects`, `include_headers`, `include_incomplete_objects`, and so on. You can also define sorting options to sort the data retrieved in the API response. - To get discoverable objects when linientmodel is enabled you can use `include_discoverable_objects` as true else false. Default value is true. - For liveboard metadata type, to get the newer format, set the `liveboard_response_format` as V2. Default value is V1. - To retrieve only objects that are published, set the `include_only_published_objects` as true. Default value is false. **NOTE**: `obj_identifier` is supported for the following object types: `LIVEBOARD`, `ANSWER`, `LOGICAL_TABLE`, `LOGICAL_COLUMN`, `CONNECTION`, `USER_GROUP`, `COLLECTION`. The response includes the `metadata_obj_id` field for objects that have a Custom object ID set. **NOTE**: The following parameters support pagination of metadata records: - `tag_identifiers` - `type` - `subtypes` - `created_by_user_identifiers` - `modified_by_user_identifiers` - `owned_by_user_identifiers` - `exclude_objects` - `include_auto_created_objects` - `favorite_object_options` - `include_only_published_objects` **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchMetadataRequest */ searchMetadataWithHttpInfo(searchMetadataRequest: SearchMetadataRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of metadata objects available on the ThoughtSpot system. This API endpoint is available to all users who have view access to the object. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view data for all metadata objects, including users and groups. #### Usage guidelines - To get all metadata objects, send the API request without any attributes. - To get metadata objects of a specific type, set the `type` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE`. - To filter metadata objects within type `LOGICAL_TABLE`, set the `subtypes` attribute. For example, to fetch a Worksheet, set the type as `LOGICAL_TABLE` & subtypes as `[WORKSHEET]`. - To get a specific metadata object, specify the GUID. - To customize your search and filter the API response, you can use several parameters. You can search for objects created or modified by specific users, by tags applied to the objects, or by using the include parameters like `include_auto_created_objects`, `include_dependent_objects`, `include_headers`, `include_incomplete_objects`, and so on. You can also define sorting options to sort the data retrieved in the API response. - To get discoverable objects when linientmodel is enabled you can use `include_discoverable_objects` as true else false. Default value is true. - For liveboard metadata type, to get the newer format, set the `liveboard_response_format` as V2. Default value is V1. - To retrieve only objects that are published, set the `include_only_published_objects` as true. Default value is false. **NOTE**: `obj_identifier` is supported for the following object types: `LIVEBOARD`, `ANSWER`, `LOGICAL_TABLE`, `LOGICAL_COLUMN`, `CONNECTION`, `USER_GROUP`, `COLLECTION`. The response includes the `metadata_obj_id` field for objects that have a Custom object ID set. **NOTE**: The following parameters support pagination of metadata records: - `tag_identifiers` - `type` - `subtypes` - `created_by_user_identifiers` - `modified_by_user_identifiers` - `owned_by_user_identifiers` - `exclude_objects` - `include_auto_created_objects` - `favorite_object_options` - `include_only_published_objects` **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchMetadataRequest */ searchMetadata(searchMetadataRequest: SearchMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets a list of Orgs configured on the ThoughtSpot system. To get details of a specific Org, specify the Org ID or name. You can also pass parameters such as status, visibility, and user identifiers to get a specific list of Orgs. Results are paginated: `record_size` (default `10`) sets the number of Orgs returned and `record_offset` (default `0`) sets the starting record. To retrieve all Orgs, increase `record_offset` by `record_size` until a page returns fewer than `record_size` Orgs. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param searchOrgsRequest */ searchOrgsWithHttpInfo(searchOrgsRequest: SearchOrgsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of Orgs configured on the ThoughtSpot system. To get details of a specific Org, specify the Org ID or name. You can also pass parameters such as status, visibility, and user identifiers to get a specific list of Orgs. Results are paginated: `record_size` (default `10`) sets the number of Orgs returned and `record_offset` (default `0`) sets the starting record. To retrieve all Orgs, increase `record_offset` by `record_size` until a page returns fewer than `record_size` Orgs. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param searchOrgsRequest */ searchOrgs(searchOrgsRequest: SearchOrgsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.5.0.cl or later Gets a list of Role objects from the ThoughtSpot system. Available if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To search for Roles, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. To get details of a specific Role object, specify the GUID or name. You can also filter the API response based on user group and Org identifiers, privileges assigned to the Role, and deprecation status. **NOTE**: In addition to the GUID and name, `role_identifiers` accepts a Custom object ID if one is configured for the role. The response also includes the `obj_id` field for each role that has one set. * @param searchRolesRequest */ searchRolesWithHttpInfo(searchRolesRequest: SearchRolesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.5.0.cl or later Gets a list of Role objects from the ThoughtSpot system. Available if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To search for Roles, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. To get details of a specific Role object, specify the GUID or name. You can also filter the API response based on user group and Org identifiers, privileges assigned to the Role, and deprecation status. **NOTE**: In addition to the GUID and name, `role_identifiers` accepts a Custom object ID if one is configured for the role. The response also includes the `obj_id` field for each role that has one set. * @param searchRolesRequest */ searchRoles(searchRolesRequest: SearchRolesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Search Schedules Version: 9.4.0.cl or later Gets a list of scheduled jobs configured for a Liveboard. To get details of a specific scheduled job, specify the name or GUID of the scheduled job. Requires at least view access to Liveboards. **NOTE**: When filtering schedules by parameters other than `metadata`, set `record_size` to `-1` and `record_offset` to `0` for accurate results. * @param searchSchedulesRequest */ searchSchedulesWithHttpInfo(searchSchedulesRequest: SearchSchedulesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Search Schedules Version: 9.4.0.cl or later Gets a list of scheduled jobs configured for a Liveboard. To get details of a specific scheduled job, specify the name or GUID of the scheduled job. Requires at least view access to Liveboards. **NOTE**: When filtering schedules by parameters other than `metadata`, set `record_size` to `-1` and `record_offset` to `0` for accurate results. * @param searchSchedulesRequest */ searchSchedules(searchSchedulesRequest: SearchSchedulesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Fetch security settings for your ThoughtSpot application instance. - Use `scope: CLUSTER` to retrieve cluster-level security settings, including CORS and CSP allowlists, SAML redirect URLs, and settings that control access to non-embedded pages. - Use `scope: ORG` to retrieve Org-level security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this returns CORS and non-embed access settings specific to the Org. - If `scope` is not specified, returns both cluster and Org-specific settings based on user privileges. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param searchSecuritySettingsRequest */ searchSecuritySettingsWithHttpInfo(searchSecuritySettingsRequest: SearchSecuritySettingsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later Fetch security settings for your ThoughtSpot application instance. - Use `scope: CLUSTER` to retrieve cluster-level security settings, including CORS and CSP allowlists, SAML redirect URLs, and settings that control access to non-embedded pages. - Use `scope: ORG` to retrieve Org-level security settings. If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), this returns CORS and non-embed access settings specific to the Org. - If `scope` is not specified, returns both cluster and Org-specific settings based on user privileges. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. See [Security Settings](https://developers.thoughtspot.com/docs/security-settings) for more details. * @param searchSecuritySettingsRequest */ searchSecuritySettings(searchSecuritySettingsRequest: SearchSecuritySettingsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.9.0.cl or later Searches and lists semantic integrations available to the authenticated user in the current organization, with optional filters, sort, and pagination. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About search semantic integrations Returns a paginated batch of semantic integrations, each with its identifier, name, description, source connection, generated model identifier, author, creation/modification timestamps, and associated tags. Use the filters to narrow results by author, connection, tag, or name pattern. - `pattern` matches the integration name as a case-insensitive substring. - `author_identifiers` and `connection_identifiers` accept either GUIDs or names. - `sort_options.field_name` defaults to `MODIFIED_TIME`; set `sort_options.order` to `ASC` or `DESC` to control sort direction. - `record_offset` and `record_size` control pagination. Use `record_size: 0` to return all matching records in a single response. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchSemanticIntegrationsRequest */ searchSemanticIntegrationsWithHttpInfo(searchSemanticIntegrationsRequest: SearchSemanticIntegrationsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.9.0.cl or later Searches and lists semantic integrations available to the authenticated user in the current organization, with optional filters, sort, and pagination. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following Data control privileges may be required: - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - **Can manage data models** #### About search semantic integrations Returns a paginated batch of semantic integrations, each with its identifier, name, description, source connection, generated model identifier, author, creation/modification timestamps, and associated tags. Use the filters to narrow results by author, connection, tag, or name pattern. - `pattern` matches the integration name as a case-insensitive substring. - `author_identifiers` and `connection_identifiers` accept either GUIDs or names. - `sort_options.field_name` defaults to `MODIFIED_TIME`; set `sort_options.order` to `ASC` or `DESC` to control sort direction. - `record_offset` and `record_size` control pagination. Use `record_size: 0` to return all matching records in a single response. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchSemanticIntegrationsRequest */ searchSemanticIntegrations(searchSemanticIntegrationsRequest: SearchSemanticIntegrationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Retrieves style preferences at cluster level or for the authenticated user\'s org. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to retrieve cluster-level style defaults. - Set `scope` to `ORG` (default) to retrieve preferences for the authenticated user\'s org. - Each field in the response includes an `is_overridden` flag indicating whether the value was explicitly set at the requested scope or inherited from a parent scope (cluster or system default). - `app_color_theme` (_available from 26.10.0.cl_) describes the same underlying color as `navigation_panel`, in a different form: `navigation_panel` uses the `DARK`/`TWO_TONE`/`CUSTOM` theme modes, while `app_color_theme` gives the brand color and how it is applied (`brand_color`, `apply_as_top_nav_color`). They never disagree, so use whichever your integration already reads. `app_color_theme` is returned only when the app color theme is enabled on the cluster; `navigation_panel` is always returned. * @param searchStyleCustomizationsRequest */ searchStyleCustomizationsWithHttpInfo(searchStyleCustomizationsRequest: SearchStyleCustomizationsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.7.0.cl or later Retrieves style preferences at cluster level or for the authenticated user\'s org. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to retrieve cluster-level style defaults. - Set `scope` to `ORG` (default) to retrieve preferences for the authenticated user\'s org. - Each field in the response includes an `is_overridden` flag indicating whether the value was explicitly set at the requested scope or inherited from a parent scope (cluster or system default). - `app_color_theme` (_available from 26.10.0.cl_) describes the same underlying color as `navigation_panel`, in a different form: `navigation_panel` uses the `DARK`/`TWO_TONE`/`CUSTOM` theme modes, while `app_color_theme` gives the brand color and how it is applied (`brand_color`, `apply_as_top_nav_color`). They never disagree, so use whichever your integration already reads. `app_color_theme` is returned only when the app color theme is enabled on the cluster; `navigation_panel` is always returned. * @param searchStyleCustomizationsRequest */ searchStyleCustomizations(searchStyleCustomizationsRequest: SearchStyleCustomizationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Returns custom fonts from the cluster-level or org-level font library. Omitting all filter fields returns all fonts in the target scope. When `include_font_assignments` is `true`, the response includes only the visualization areas explicitly assigned to each font. For cluster-scoped fonts, `org` is returned as `null`. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to search the cluster-level library. Set `scope` to `ORG` (default) to search the authenticated user\'s org library. - Use `font_identifier` to look up a specific font by UUID or name. - Use `name_pattern` for partial, case-insensitive name matching. - Set `include_font_assignments` to `true` to include visualization areas this font is currently assigned to. Defaults to `false`. * @param searchStyleFontsRequest */ searchStyleFontsWithHttpInfo(searchStyleFontsRequest: SearchStyleFontsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.7.0.cl or later Returns custom fonts from the cluster-level or org-level font library. Omitting all filter fields returns all fonts in the target scope. When `include_font_assignments` is `true`, the response includes only the visualization areas explicitly assigned to each font. For cluster-scoped fonts, `org` is returned as `null`. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Set `scope` to `CLUSTER` to search the cluster-level library. Set `scope` to `ORG` (default) to search the authenticated user\'s org library. - Use `font_identifier` to look up a specific font by UUID or name. - Use `name_pattern` for partial, case-insensitive name matching. - Set `include_font_assignments` to `true` to include visualization areas this font is currently assigned to. Defaults to `false`. * @param searchStyleFontsRequest */ searchStyleFonts(searchStyleFontsRequest: SearchStyleFontsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets a list of tag objects available on the ThoughtSpot system. To get details of a specific tag object, specify the GUID or name. Any authenticated user can search for tag objects. * @param searchTagsRequest */ searchTagsWithHttpInfo(searchTagsRequest: SearchTagsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of tag objects available on the ThoughtSpot system. To get details of a specific tag object, specify the GUID or name. Any authenticated user can search for tag objects. * @param searchTagsRequest */ searchTags(searchTagsRequest: SearchTagsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets a list of user group objects from the ThoughtSpot system. To get details of a specific user group, specify the user group GUID or name. You can also filter the API response based on User ID, Org ID, Role ID, type of group, sharing visibility, privileges assigned to the group, and the Liveboard IDs assigned to the users in the group. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. **NOTE**: In addition to the GUID and name, `group_identifier` accepts a Custom object ID if one is configured for the group. The response also includes the `obj_id` field for each group that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUserGroupsRequest */ searchUserGroupsWithHttpInfo(searchUserGroupsRequest: SearchUserGroupsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of user group objects from the ThoughtSpot system. To get details of a specific user group, specify the user group GUID or name. You can also filter the API response based on User ID, Org ID, Role ID, type of group, sharing visibility, privileges assigned to the group, and the Liveboard IDs assigned to the users in the group. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. **NOTE**: In addition to the GUID and name, `group_identifier` accepts a Custom object ID if one is configured for the group. The response also includes the `obj_id` field for each group that has one set. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUserGroupsRequest */ searchUserGroups(searchUserGroupsRequest: SearchUserGroupsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Gets a list of users available on the ThoughtSpot system. To get details of a specific user, specify the user GUID or name. You can also filter the API response based on groups, Org ID, user visibility, account status, user type, and user preference settings and favorites. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUsersRequest */ searchUsersWithHttpInfo(searchUsersRequest: SearchUsersRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of users available on the ThoughtSpot system. To get details of a specific user, specify the user GUID or name. You can also filter the API response based on groups, Org ID, user visibility, account status, user type, and user preference settings and favorites. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUsersRequest */ searchUsers(searchUsersRequest: SearchUsersRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Search variables Version: 26.4.0.cl or later Allows searching for variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports searching variables by: * Variable identifier (ID or name) * Variable type * Name pattern (case-insensitive, supports % for wildcard) The search results can be formatted in three ways: * METADATA - Returns only variable metadata (default) * METADATA_AND_VALUES - Returns variable metadata and values The values can be filtered by scope: * org_identifier * principal_identifier * model_identifier **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchVariablesRequest */ searchVariablesWithHttpInfo(searchVariablesRequest: SearchVariablesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Search variables Version: 26.4.0.cl or later Allows searching for variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports searching variables by: * Variable identifier (ID or name) * Variable type * Name pattern (case-insensitive, supports % for wildcard) The search results can be formatted in three ways: * METADATA - Returns only variable metadata (default) * METADATA_AND_VALUES - Returns variable metadata and values The values can be filtered by scope: * org_identifier * principal_identifier * model_identifier **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchVariablesRequest */ searchVariables(searchVariablesRequest: SearchVariablesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Searches for webhook configurations based on various criteria such as Org, webhook identifier, event type, with support for pagination and sorting. Returns matching webhook configurations with their complete details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param searchWebhookConfigurationsRequest */ searchWebhookConfigurationsWithHttpInfo(searchWebhookConfigurationsRequest: SearchWebhookConfigurationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Searches for webhook configurations based on various criteria such as Org, webhook identifier, event type, with support for pagination and sorting. Returns matching webhook configurations with their complete details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param searchWebhookConfigurationsRequest */ searchWebhookConfigurations(searchWebhookConfigurationsRequest: SearchWebhookConfigurationsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.5.0.cl or later Sends natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - For real-time streamed responses, use `sendAgentConversationMessageStreaming` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageRequest */ sendAgentConversationMessageWithHttpInfo(conversationIdentifier: string, sendAgentConversationMessageRequest: SendAgentConversationMessageRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.5.0.cl or later Sends natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - For real-time streamed responses, use `sendAgentConversationMessageStreaming` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageRequest */ sendAgentConversationMessage(conversationIdentifier: string, sendAgentConversationMessageRequest: SendAgentConversationMessageRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.5.0.cl or later Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | | ---- | -------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). > - For the complete response in a single payload, use `sendAgentConversationMessage` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageStreamingRequest */ sendAgentConversationMessageStreamingWithHttpInfo(conversationIdentifier: string, sendAgentConversationMessageStreamingRequest: SendAgentConversationMessageStreamingRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.5.0.cl or later Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | | ---- | -------------------------------------------------------------------------------------------------------------------------------- | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is Generally Available from version 26.5.0.cl. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). > - For the complete response in a single payload, use `sendAgentConversationMessage` instead. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentConversationMessageStreamingRequest */ sendAgentConversationMessageStreaming(conversationIdentifier: string, sendAgentConversationMessageStreamingRequest: SendAgentConversationMessageStreamingRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessage` instead. Send natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessage` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentMessageRequest */ sendAgentMessageWithHttpInfo(conversationIdentifier: string, sendAgentMessageRequest: SendAgentMessageRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessage` instead. Send natural language messages to an existing Spotter agent conversation and returns the complete response synchronously. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent The API returns an array of response objects, each containing: - `type`: the kind of response — `text`, `answer`, or `error` - `message`: the main content of the response - `metadata`: additional information depending on the message type (e.g., answer metadata includes analytics and visualization details) #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessage` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier for the conversation (used to track context) * @param sendAgentMessageRequest */ sendAgentMessage(conversationIdentifier: string, sendAgentMessageRequest: SendAgentMessageRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessageStreaming` instead. Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessageStreaming` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). * @param sendAgentMessageStreamingRequest */ sendAgentMessageStreamingWithHttpInfo(sendAgentMessageStreamingRequest: SendAgentMessageStreamingRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.2.0.cl or later **Deprecated** — Use `sendAgentConversationMessageStreaming` instead. Sends one or more natural language messages to an existing Spotter agent conversation and returns the response as a real-time Server-Sent Events stream. Requires `CAN_USE_SPOTTER` privilege and access to the metadata object associated with the conversation. The user must have access to the conversation session referenced by `conversation_identifier`. A conversation must first be created using the `createAgentConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createAgentConversation`, used for context continuity and message tracking - `messages`: an array of one or more text messages to send to the agent If the request is valid, the API returns a Server-Sent Events (SSE) stream. Each line has the form `data: [{\"type\": \"...\", ...}]` — a JSON array of event objects. Event types include: - `ack`: confirms receipt of the request (`node_id`) - `conv_title`: conversation title (`title`, `conv_id`) - `notification`: status updates on operations (`group_id`, `metadata`, `code` — e.g. `TOOL_CALL_NOTIFICATION`, `nls_start`, `FINAL_RESPONSE_NOTIFICATION`) - `text-chunk`: incremental content chunks (`id`, `group_id`, `metadata` with `format` and `type` such as `thinking` or `text`, `content`) - `text`: full text block with same structure as `text-chunk` - `answer`: structured answer with metadata (`id`, `group_id`, `metadata` with `sage_query`, `session_id`, `title`, etc., `title`) - `error`: if a failure occurs #### Error responses | Code | Description | |------|----------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks permission on the referenced conversation. | > ###### Note: > > - This endpoint is deprecated. Use `sendAgentConversationMessageStreaming` for new integrations. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. > - The streaming protocol uses Server-Sent Events (SSE). * @param sendAgentMessageStreamingRequest */ sendAgentMessageStreaming(sendAgentMessageStreamingRequest: SendAgentMessageStreamingRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Sends a follow-up message to an existing conversation within the context of a data model. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. A conversation must first be created using the `createConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createConversation` - `metadata_identifier`: the unique ID of the data source used for the conversation - `message`: a natural language string with the follow-up question If the request is successful, the API returns an array of response messages, each containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param sendMessageRequest */ sendMessageWithHttpInfo(conversationIdentifier: string, sendMessageRequest: SendMessageRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 10.4.0.cl or later Sends a follow-up message to an existing conversation within the context of a data model. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. A conversation must first be created using the `createConversation` API. #### Usage guidelines The request must include: - `conversation_identifier`: the unique session ID returned by `createConversation` - `metadata_identifier`: the unique ID of the data source used for the conversation - `message`: a natural language string with the follow-up question If the request is successful, the API returns an array of response messages, each containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation. * @param sendMessageRequest */ sendMessage(conversationIdentifier: string, sendMessageRequest: SendMessageRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Creates or updates the admin instructions for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. If instructions already exist for the org, they are replaced (upsert semantics). Requires admin privileges. Only users with org admin access can set agent instructions. #### Usage guidelines The request must include: - `instructions`: the instructions text to apply to the agent (maximum 5000 characters) Instructions are validated against system guardrails before being saved. If the instructions contain content that conflicts with guardrails, the request is rejected with a `409` error and the existing instructions remain unchanged. If the request is successful, the response includes the saved `AgentInstructions` record: - `id`: unique identifier of the record - `instructions`: the saved instructions text - `created_at`: ISO timestamp when the instructions were first created - `updated_at`: ISO timestamp of this update - `last_updated_by`: user ID of the admin who performed this update #### Error responses | Code | Description | |------|-------------| | 400 | Bad request — the request body is missing required fields or the `instructions` field exceeds the maximum allowed length of 5000 characters. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to set agent instructions. | | 409 | Conflict — the provided instructions conflict with system guardrails. Review and revise the instructions text before retrying. | | 500 | Internal server error. | > ###### Note: > > - This operation uses upsert semantics: it creates the instructions record if none exists, or replaces the existing one. > - Instructions take effect immediately for new conversations created after the update. > - Use `getAgentInstructions` to retrieve the current instructions before making changes. > - Available from version 26.6.0.cl and later. * @param setAgentInstructionsRequest */ setAgentInstructionsWithHttpInfo(setAgentInstructionsRequest: SetAgentInstructionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Creates or updates the admin instructions for the AI agent (Spotter). Admin instructions are tenant- and org-scoped text that guide agent behavior across all conversations. If instructions already exist for the org, they are replaced (upsert semantics). Requires admin privileges. Only users with org admin access can set agent instructions. #### Usage guidelines The request must include: - `instructions`: the instructions text to apply to the agent (maximum 5000 characters) Instructions are validated against system guardrails before being saved. If the instructions contain content that conflicts with guardrails, the request is rejected with a `409` error and the existing instructions remain unchanged. If the request is successful, the response includes the saved `AgentInstructions` record: - `id`: unique identifier of the record - `instructions`: the saved instructions text - `created_at`: ISO timestamp when the instructions were first created - `updated_at`: ISO timestamp of this update - `last_updated_by`: user ID of the admin who performed this update #### Error responses | Code | Description | |------|-------------| | 400 | Bad request — the request body is missing required fields or the `instructions` field exceeds the maximum allowed length of 5000 characters. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have org admin privileges required to set agent instructions. | | 409 | Conflict — the provided instructions conflict with system guardrails. Review and revise the instructions text before retrying. | | 500 | Internal server error. | > ###### Note: > > - This operation uses upsert semantics: it creates the instructions record if none exists, or replaces the existing one. > - Instructions take effect immediately for new conversations created after the update. > - Use `getAgentInstructions` to retrieve the current instructions before making changes. > - Available from version 26.6.0.cl and later. * @param setAgentInstructionsRequest */ setAgentInstructions(setAgentInstructionsRequest: SetAgentInstructionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.15.0.cl or later This API allows users to set natural language (NL) instructions for a specific data-model to improve AI-generated answers and query processing. These instructions help guide the AI system to better understand the data context and provide more accurate responses. Requires `CAN_USE_SPOTTER` privilege, either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines To set NL instructions for a data-model, the request must include: - `data_source_identifier`: The unique ID of the data-model for which to set NL instructions - `nl_instructions_info`: An array of instruction objects, each containing: - `instructions`: Array of text instructions for the LLM - `scope`: The scope of the instruction (`GLOBAL`). Currently only `GLOBAL` is supported. It can be extended to data-model-user scope in future. #### Instructions scope - **GLOBAL**: instructions that apply to all users querying this data model If the request is successful, the API returns: - `success`: a boolean indicating whether the operation completed successfully #### Error responses | Code | Description | |------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Instructions help improve the accuracy and relevance of AI-generated responses for the specified data-model. * @param setNLInstructionsRequest */ setNLInstructionsWithHttpInfo(setNLInstructionsRequest: SetNLInstructionsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.15.0.cl or later This API allows users to set natural language (NL) instructions for a specific data-model to improve AI-generated answers and query processing. These instructions help guide the AI system to better understand the data context and provide more accurate responses. Requires `CAN_USE_SPOTTER` privilege, either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and a bearer token corresponding to the org where the data model exists. #### Usage guidelines To set NL instructions for a data-model, the request must include: - `data_source_identifier`: The unique ID of the data-model for which to set NL instructions - `nl_instructions_info`: An array of instruction objects, each containing: - `instructions`: Array of text instructions for the LLM - `scope`: The scope of the instruction (`GLOBAL`). Currently only `GLOBAL` is supported. It can be extended to data-model-user scope in future. #### Instructions scope - **GLOBAL**: instructions that apply to all users querying this data model If the request is successful, the API returns: - `success`: a boolean indicating whether the operation completed successfully #### Error responses | Code | Description | |------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege, lacks edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, or the bearer token does not correspond to the org where the data model exists. | > ###### Note: > > - To use this API, the user needs either edit access or `SPOTTER_COACHING_PRIVILEGE` on the data model, and must use the bearer token corresponding to the org where the data model exists. > - This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > - Available from version 10.15.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - Instructions help improve the accuracy and relevance of AI-generated responses for the specified data-model. * @param setNLInstructionsRequest */ setNLInstructions(setNLInstructionsRequest: SetNLInstructionsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Updates share permissions on a Spotter Analyst, one entry per principal (user or group). `READ_ONLY` and `MODIFY` grant or change the principal\'s access; `NO_ACCESS` revokes it. Granting access also shares the analyst\'s data sources with the principal so the analyst keeps working for them. A successful share returns an empty `204 No Content` response. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Updates share permissions on a Spotter Analyst for one or more principals (users or groups). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The analyst is identified by the `analyst_identifier` path parameter. The request body contains a `permissions` array with one entry per principal: - `principal.identifier` (required): unique identifier of the user or group. - `principal.type` (required): `USER` or `USER_GROUP`. - `share_mode` (required): `READ_ONLY` or `MODIFY` grants (or changes) the principal\'s access; `NO_ACCESS` revokes it. A principal may appear at most once per request. When access is granted, the analyst\'s data sources are automatically shared with the principal as well, so the analyst keeps working for them. A successful request returns an empty `204 No Content` response. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as an empty `permissions` array, a duplicate principal, or a missing field. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to share. * @param shareAnalystRequest */ shareAnalystWithHttpInfo(analystIdentifier: string, shareAnalystRequest: ShareAnalystRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Updates share permissions on a Spotter Analyst, one entry per principal (user or group). `READ_ONLY` and `MODIFY` grant or change the principal\'s access; `NO_ACCESS` revokes it. Granting access also shares the analyst\'s data sources with the principal so the analyst keeps working for them. A successful share returns an empty `204 No Content` response. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Version: 26.10.0.cl or later Updates share permissions on a Spotter Analyst for one or more principals (users or groups). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The analyst is identified by the `analyst_identifier` path parameter. The request body contains a `permissions` array with one entry per principal: - `principal.identifier` (required): unique identifier of the user or group. - `principal.type` (required): `USER` or `USER_GROUP`. - `share_mode` (required): `READ_ONLY` or `MODIFY` grants (or changes) the principal\'s access; `NO_ACCESS` revokes it. A principal may appear at most once per request. When access is granted, the analyst\'s data sources are automatically shared with the principal as well, so the analyst keeps working for them. A successful request returns an empty `204 No Content` response. #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `422` — validation failure, such as an empty `permissions` array, a duplicate principal, or a missing field. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to share. * @param shareAnalystRequest */ shareAnalyst(analystIdentifier: string, shareAnalystRequest: ShareAnalystRequest, _options?: PromiseConfigurationOptions): Promise; /** * Grants or revokes access to a shared conversation for one or more principals (users or groups). When principals are added, a read-only shared view of the conversation is created from its current state. Use `refresh_shared_content` to regenerate the shared view with the latest conversation content. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation to share. * @param shareConversationRequest */ shareConversationWithHttpInfo(conversationIdentifier: string, shareConversationRequest: ShareConversationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Grants or revokes access to a shared conversation for one or more principals (users or groups). When principals are added, a read-only shared view of the conversation is created from its current state. Use `refresh_shared_content` to regenerate the shared view with the latest conversation content. Requires `CAN_USE_SPOTTER` privilege and ownership of the specified conversation. Version: 26.9.0.cl or later * @param conversationIdentifier Unique identifier of the conversation to share. * @param shareConversationRequest */ shareConversation(conversationIdentifier: string, shareConversationRequest: ShareConversationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Allows sharing one or several metadata objects with users and groups in ThoughtSpot. Requires edit access to the metadata object. #### Supported metadata objects: * Liveboards * Visualizations * Answers * Models * Views * Connections * Collections #### Object permissions You can provide `READ_ONLY` or `MODIFY` access when sharing an object with another user or group. The `READ_ONLY` permission grants view access to the shared object, whereas `MODIFY` provides edit access. To prevent a user or group from accessing the shared object, specify the GUID or name of the principal and set `shareMode` to `NO_ACCESS`. #### Sharing a visualization * Sharing a visualization implicitly shares the entire Liveboard with the recipient. * Object permissions set for a shared visualization also apply to the Liveboard unless overridden by another API request or via UI. * If email notifications for object sharing are enabled, a notification with a link to the shared visualization will be sent to the recipient’s email address. Although this link opens the shared visualization, recipients can also access other visualizations in the Liveboard. #### Sharing a collection Collections support **dual permissions** that provide fine-grained control: * **Collection permissions** (`share_mode`) - controls access to the collection itself (view, edit, delete the collection) * **Content permissions** (`content_share_mode`) - controls access to objects within the collection (view, edit objects inside) **Default Behavior:** - If only `share_mode` is specified, the content permissions default to `READ_ONLY` (except when `share_mode` is `NO_ACCESS`, then content also gets `NO_ACCESS`) - To give users edit access to collection contents, explicitly set `content_share_mode: \"MODIFY\"` ## Examples The following JSON examples can be copy-pasted as request bodies for the REST v2 API endpoint: ```bash POST /callosum/v1/v2/security/metadata/share Content-Type: application/x-www-form-urlencoded ``` ### Basic collection sharing Share a collection with read-only access: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Sales Reports Collection\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"alice@company.com\" }, \"share_mode\": \"READ_ONLY\" }], \"notification\": { \"message\": \"I\'ve shared the Sales Reports collection with you\", \"notify_on_share\": true } } ``` ### Collection sharing with dual permissions Share a collection with different permissions for the collection vs. its contents: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Marketing Analytics\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"bob@company.com\" }, \"share_mode\": \"MODIFY\", \"content_share_mode\": \"READ_ONLY\" }, { \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Marketing Team\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"READ_ONLY\" }], \"notification\": { \"emails\": [\"bob@company.com\"], \"message\": \"You can edit the collection but content is read-only\", \"enable_custom_url\": false, \"notify_on_share\": true }, \"has_lenient_discoverability\": false } ``` ### Multiple collections sharing Share multiple collections with different users: ```json { \"metadata\": [ { \"type\": \"COLLECTION\", \"identifier\": \"Q4 Reports\" }, { \"type\": \"COLLECTION\", \"identifier\": \"Executive Dashboard Collection\" } ], \"permissions\": [{ \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Executives\" }, \"share_mode\": \"MODIFY\" }, { \"principal\": { \"type\": \"USER\", \"identifier\": \"manager@company.com\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"MODIFY\" }], \"notification\": { \"message\": \"Sharing quarterly collections with leadership team\", \"notify_on_share\": true } } ``` ### Remove collection access Remove access to a collection by setting share_mode to NO_ACCESS: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Confidential Reports\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"former-employee@company.com\" }, \"share_mode\": \"NO_ACCESS\" }], \"notification\": { \"notify_on_share\": false } } ``` ### Collection Permission Scenarios **Scenario 1: Collection Admin** - `share_mode: MODIFY` + `content_share_mode: MODIFY` = Full control over collection and its contents **Scenario 2: Collection Curator** - `share_mode: MODIFY` + `content_share_mode: READ_ONLY` = Can manage collection structure but not edit contents **Scenario 3: Content Editor** - `share_mode: READ_ONLY` + `content_share_mode: MODIFY` = Can edit objects within collection but can\'t change collection itself **Scenario 4: Viewer** - `share_mode: READ_ONLY` + `content_share_mode: READ_ONLY` = View-only access to collection and contents * @param shareMetadataRequest */ shareMetadataWithHttpInfo(shareMetadataRequest: ShareMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Allows sharing one or several metadata objects with users and groups in ThoughtSpot. Requires edit access to the metadata object. #### Supported metadata objects: * Liveboards * Visualizations * Answers * Models * Views * Connections * Collections #### Object permissions You can provide `READ_ONLY` or `MODIFY` access when sharing an object with another user or group. The `READ_ONLY` permission grants view access to the shared object, whereas `MODIFY` provides edit access. To prevent a user or group from accessing the shared object, specify the GUID or name of the principal and set `shareMode` to `NO_ACCESS`. #### Sharing a visualization * Sharing a visualization implicitly shares the entire Liveboard with the recipient. * Object permissions set for a shared visualization also apply to the Liveboard unless overridden by another API request or via UI. * If email notifications for object sharing are enabled, a notification with a link to the shared visualization will be sent to the recipient’s email address. Although this link opens the shared visualization, recipients can also access other visualizations in the Liveboard. #### Sharing a collection Collections support **dual permissions** that provide fine-grained control: * **Collection permissions** (`share_mode`) - controls access to the collection itself (view, edit, delete the collection) * **Content permissions** (`content_share_mode`) - controls access to objects within the collection (view, edit objects inside) **Default Behavior:** - If only `share_mode` is specified, the content permissions default to `READ_ONLY` (except when `share_mode` is `NO_ACCESS`, then content also gets `NO_ACCESS`) - To give users edit access to collection contents, explicitly set `content_share_mode: \"MODIFY\"` ## Examples The following JSON examples can be copy-pasted as request bodies for the REST v2 API endpoint: ```bash POST /callosum/v1/v2/security/metadata/share Content-Type: application/x-www-form-urlencoded ``` ### Basic collection sharing Share a collection with read-only access: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Sales Reports Collection\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"alice@company.com\" }, \"share_mode\": \"READ_ONLY\" }], \"notification\": { \"message\": \"I\'ve shared the Sales Reports collection with you\", \"notify_on_share\": true } } ``` ### Collection sharing with dual permissions Share a collection with different permissions for the collection vs. its contents: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Marketing Analytics\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"bob@company.com\" }, \"share_mode\": \"MODIFY\", \"content_share_mode\": \"READ_ONLY\" }, { \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Marketing Team\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"READ_ONLY\" }], \"notification\": { \"emails\": [\"bob@company.com\"], \"message\": \"You can edit the collection but content is read-only\", \"enable_custom_url\": false, \"notify_on_share\": true }, \"has_lenient_discoverability\": false } ``` ### Multiple collections sharing Share multiple collections with different users: ```json { \"metadata\": [ { \"type\": \"COLLECTION\", \"identifier\": \"Q4 Reports\" }, { \"type\": \"COLLECTION\", \"identifier\": \"Executive Dashboard Collection\" } ], \"permissions\": [{ \"principal\": { \"type\": \"USER_GROUP\", \"identifier\": \"Executives\" }, \"share_mode\": \"MODIFY\" }, { \"principal\": { \"type\": \"USER\", \"identifier\": \"manager@company.com\" }, \"share_mode\": \"READ_ONLY\", \"content_share_mode\": \"MODIFY\" }], \"notification\": { \"message\": \"Sharing quarterly collections with leadership team\", \"notify_on_share\": true } } ``` ### Remove collection access Remove access to a collection by setting share_mode to NO_ACCESS: ```json { \"metadata_type\": \"COLLECTION\", \"metadata_identifiers\": [\"Confidential Reports\"], \"permissions\": [{ \"principal\": { \"type\": \"USER\", \"identifier\": \"former-employee@company.com\" }, \"share_mode\": \"NO_ACCESS\" }], \"notification\": { \"notify_on_share\": false } } ``` ### Collection Permission Scenarios **Scenario 1: Collection Admin** - `share_mode: MODIFY` + `content_share_mode: MODIFY` = Full control over collection and its contents **Scenario 2: Collection Curator** - `share_mode: MODIFY` + `content_share_mode: READ_ONLY` = Can manage collection structure but not edit contents **Scenario 3: Content Editor** - `share_mode: READ_ONLY` + `content_share_mode: MODIFY` = Can edit objects within collection but can\'t change collection itself **Scenario 4: Viewer** - `share_mode: READ_ONLY` + `content_share_mode: READ_ONLY` = View-only access to collection and contents * @param shareMetadataRequest */ shareMetadata(shareMetadataRequest: ShareMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Processes a natural language query against a specified data model and returns a single AI-generated answer without requiring a conversation session. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `query`: a natural language question (e.g., \"What were total sales last quarter?\") - `metadata_identifier`: the unique ID of the data source to query against If the request is successful, the API returns a response message containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param singleAnswerRequest */ singleAnswerWithHttpInfo(singleAnswerRequest: SingleAnswerRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Processes a natural language query against a specified data model and returns a single AI-generated answer without requiring a conversation session. Requires `CAN_USE_SPOTTER` privilege and at least view access to the metadata object specified in the request. #### Usage guidelines The request must include: - `query`: a natural language question (e.g., \"What were total sales last quarter?\") - `metadata_identifier`: the unique ID of the data source to query against If the request is successful, the API returns a response message containing: - `session_identifier`: the unique ID of the generated response - `generation_number`: the generation number of the response - `message_type`: the type of the response (e.g., `TSAnswer`) - `visualization_type`: the generated visualization type (`Chart`, `Table`, or `Undefined`) - `tokens` / `display_tokens`: the search tokens and user-friendly display tokens for the response #### Error responses | Code | Description | |------|-----------------------------------------------------------------------------------------------------------------------------------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks view permission on the specified metadata object. | > ###### Note: > * This endpoint is currently in Beta. Breaking changes may be introduced before the endpoint is made Generally Available. > * This endpoint requires Spotter - please contact ThoughtSpot support to enable Spotter on your cluster. * @param singleAnswerRequest */ singleAnswer(singleAnswerRequest: SingleAnswerRequest, _options?: PromiseConfigurationOptions): Promise; /** * Stops an in-progress agent conversation response. Version: 26.6.0.cl or later Version: 26.6.0.cl or later Stops an in-progress agent response for the specified conversation. Use this endpoint to cancel a response that is actively being generated — for example, when the user navigates away, reformulates their question, or no longer needs the current result. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation whose active response should be stopped, as returned by `createAgentConversation` A successful request returns an empty `204 No Content` response. If there is no active response in progress at the time of the call, the request is still treated as successful. After stopping a response, the conversation session remains active. You can continue sending messages using `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming`. #### Example request ```bash POST /api/rest/2.0/ai/agent/conversation/{conversation_identifier}/stop-response ``` #### Typical usage scenario This endpoint is useful when integrating Spotter into a chat UI where users can cancel a long-running query. For example: 1. User sends a message via `sendAgentConversationMessageStreaming`. 2. User clicks a \"Stop generating\" button while the response is streaming. 3. Your client calls `stopConversation` with the active `conversation_identifier`. 4. The stream is terminated and the user can ask a new question. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | > ###### Note: > > - Calling this endpoint when no response is in progress does not return an error. > - The conversation context is preserved after stopping — previous messages and answers remain accessible. > - Available from version 26.6.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - This feature is available only for **Spotter 3** (`SPOTTER3`) version. * @param conversationIdentifier Unique identifier of the conversation to stop. */ stopConversationWithHttpInfo(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Stops an in-progress agent conversation response. Version: 26.6.0.cl or later Version: 26.6.0.cl or later Stops an in-progress agent response for the specified conversation. Use this endpoint to cancel a response that is actively being generated — for example, when the user navigates away, reformulates their question, or no longer needs the current result. Requires `CAN_USE_SPOTTER` privilege and access to the specified conversation. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation whose active response should be stopped, as returned by `createAgentConversation` A successful request returns an empty `204 No Content` response. If there is no active response in progress at the time of the call, the request is still treated as successful. After stopping a response, the conversation session remains active. You can continue sending messages using `sendAgentConversationMessage` or `sendAgentConversationMessageStreaming`. #### Example request ```bash POST /api/rest/2.0/ai/agent/conversation/{conversation_identifier}/stop-response ``` #### Typical usage scenario This endpoint is useful when integrating Spotter into a chat UI where users can cancel a long-running query. For example: 1. User sends a message via `sendAgentConversationMessageStreaming`. 2. User clicks a \"Stop generating\" button while the response is streaming. 3. Your client calls `stopConversation` with the active `conversation_identifier`. 4. The stream is terminated and the user can ask a new question. #### Error responses | Code | Description | |------|-------------| | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. | > ###### Note: > > - Calling this endpoint when no response is in progress does not return an error. > - The conversation context is preserved after stopping — previous messages and answers remain accessible. > - Available from version 26.6.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. > - This feature is available only for **Spotter 3** (`SPOTTER3`) version. * @param conversationIdentifier Unique identifier of the conversation to stop. */ stopConversation(conversationIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.5.0.cl or later Synchronizes connection metadata attributes from your Cloud Data Warehouse (CDW) with ThoughtSpot. Requires the `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. #### Usage guidelines To synchronize attributes from a CDW, specify the connection GUID or name in the `connection_identifier` path parameter and `sync_attributes` in the request body. Default attribute is `[\"DESCRIPTION\"]`. ##### Hierarchical schema * Connection: The connection object for the sync operation. * Tables: Tables for the sync operation. When no table is specified, all tables are synchronized. * Columns: If the table is specified, you can add the columns for the sync operation. If no columns are specified, all columns in the specified table are considered for the sync operation. To set the scope for the sync operation: * Connection-level: To sync all tables and columns, pass an empty request body, or only the attributes in the request body. * Table-level: To synchronize specific tables and their columns, specify the table identifiers in the `tables` array. * Column-level: To synchronize specific columns, specify the table identifier as the key and column identifiers as the value in the `tables` array. ``` { \"tables\": [ {\"table-guid-1\": [\"column-guid-1\", \"column-guid-2\"]}, \"table-guid-2\" ], \"sync_attributes\": [\"DESCRIPTION\"] } ``` ##### API response If the sync operation is successful, the API returns the following information: * Status of the sync operation. For example, `SUCCESS`, `PARTIAL_SUCCESS`, or `NO_UPDATE`. * Number of tables and columns that were updated. * Number of tables and columns with the sync failed status when the overall sync status is `PARTIAL_SUCCESS`. * Message text indicating the sync results. * @param connectionIdentifier Unique ID or name of the connection. * @param syncMetadataRequest */ syncMetadataWithHttpInfo(connectionIdentifier: string, syncMetadataRequest: SyncMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.5.0.cl or later Synchronizes connection metadata attributes from your Cloud Data Warehouse (CDW) with ThoughtSpot. Requires the `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege is required. #### Usage guidelines To synchronize attributes from a CDW, specify the connection GUID or name in the `connection_identifier` path parameter and `sync_attributes` in the request body. Default attribute is `[\"DESCRIPTION\"]`. ##### Hierarchical schema * Connection: The connection object for the sync operation. * Tables: Tables for the sync operation. When no table is specified, all tables are synchronized. * Columns: If the table is specified, you can add the columns for the sync operation. If no columns are specified, all columns in the specified table are considered for the sync operation. To set the scope for the sync operation: * Connection-level: To sync all tables and columns, pass an empty request body, or only the attributes in the request body. * Table-level: To synchronize specific tables and their columns, specify the table identifiers in the `tables` array. * Column-level: To synchronize specific columns, specify the table identifier as the key and column identifiers as the value in the `tables` array. ``` { \"tables\": [ {\"table-guid-1\": [\"column-guid-1\", \"column-guid-2\"]}, \"table-guid-2\" ], \"sync_attributes\": [\"DESCRIPTION\"] } ``` ##### API response If the sync operation is successful, the API returns the following information: * Status of the sync operation. For example, `SUCCESS`, `PARTIAL_SUCCESS`, or `NO_UPDATE`. * Number of tables and columns that were updated. * Number of tables and columns with the sync failed status when the overall sync status is `PARTIAL_SUCCESS`. * Message text indicating the sync results. * @param connectionIdentifier Unique ID or name of the connection. * @param syncMetadataRequest */ syncMetadata(connectionIdentifier: string, syncMetadataRequest: SyncMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Removes the tags applied to a Liveboard, Answer, Table, or Worksheet. Requires edit access to the metadata object. * @param unassignTagRequest */ unassignTagWithHttpInfo(unassignTagRequest: UnassignTagRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Removes the tags applied to a Liveboard, Answer, Table, or Worksheet. Requires edit access to the metadata object. * @param unassignTagRequest */ unassignTag(unassignTagRequest: UnassignTagRequest, _options?: PromiseConfigurationOptions): Promise; /** * Remove parameterization from fields in metadata objects. Version: 26.10.0.cl or later Allows removing parameterization from fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows unparameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be unparameterized. For Connection Config, the only supported field name is: * impersonate_user ## Restored value The endpoint has two mutually exclusive modes, and the value that is restored differs per mode: * Single-field mode (`field_name` + `value`) restores the supplied `value`. * Bulk mode (`metadata_entries`) ignores `value` and restores the Primary org (`org_id=0`) value of the variable bound to the field, even when the request is made from a secondary org. In bulk mode, a secret Connection field bound to a sensitive variable is restored from the variable\'s Primary-org secret. Bulk mode has no partial success. The request fails with `400` and nothing is changed if any field: * is a non-secret field bound to a sensitive variable, * is bound to a per-principal variable, whose value is user-specific or group-specific, * has a variable that cannot be read, because it is deleted or not visible to you, * has no Primary-org value, or * is a secret field whose value is unavailable from the secure store, which includes the case where the Confidant Vault is disabled, since the restored secret could then not be stored securely. Such a field can still be unparameterized individually in single-field mode with an explicit `value`. Duplicate entries for the same object and field are coalesced. * @param unparameterizeMetadataRequest */ unparameterizeMetadataWithHttpInfo(unparameterizeMetadataRequest: UnparameterizeMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Remove parameterization from fields in metadata objects. Version: 26.10.0.cl or later Allows removing parameterization from fields in metadata objects in ThoughtSpot. Requires appropriate permissions to modify the metadata object. The API endpoint allows unparameterizing the following types of metadata objects: * Logical Tables * Connections * Connection Configs For a Logical Table the field type must be `ATTRIBUTE` and field name can be one of: * databaseName * schemaName * tableName For a Connection or Connection Config, the field type is always `CONNECTION_PROPERTY`. In this case, field_name specifies the exact property of the Connection or Connection Config that needs to be unparameterized. For Connection Config, the only supported field name is: * impersonate_user ## Restored value The endpoint has two mutually exclusive modes, and the value that is restored differs per mode: * Single-field mode (`field_name` + `value`) restores the supplied `value`. * Bulk mode (`metadata_entries`) ignores `value` and restores the Primary org (`org_id=0`) value of the variable bound to the field, even when the request is made from a secondary org. In bulk mode, a secret Connection field bound to a sensitive variable is restored from the variable\'s Primary-org secret. Bulk mode has no partial success. The request fails with `400` and nothing is changed if any field: * is a non-secret field bound to a sensitive variable, * is bound to a per-principal variable, whose value is user-specific or group-specific, * has a variable that cannot be read, because it is deleted or not visible to you, * has no Primary-org value, or * is a secret field whose value is unavailable from the secure store, which includes the case where the Confidant Vault is disabled, since the restored secret could then not be stored securely. Such a field can still be unparameterized individually in single-field mode with an explicit `value`. Duplicate entries for the same object and field are coalesced. * @param unparameterizeMetadataRequest */ unparameterizeMetadata(unparameterizeMetadataRequest: UnparameterizeMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.10.0.cl or later Allows unpublishing metadata objects from organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows unpublishing the following types of metadata objects: * Liveboards * Answers * Logical Tables When unpublishing objects, you can: * Include dependencies by setting `include_dependencies` to true - this will unpublish all dependent objects if no other published object is using them * Force unpublish by setting `force` to true - this will break all dependent objects in the unpublished organizations * @param unpublishMetadataRequest */ unpublishMetadataWithHttpInfo(unpublishMetadataRequest: UnpublishMetadataRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Allows unpublishing metadata objects from organizations in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The API endpoint allows unpublishing the following types of metadata objects: * Liveboards * Answers * Logical Tables When unpublishing objects, you can: * Include dependencies by setting `include_dependencies` to true - this will unpublish all dependent objects if no other published object is using them * Force unpublish by setting `force` to true - this will break all dependent objects in the unpublished organizations * @param unpublishMetadataRequest */ unpublishMetadata(unpublishMetadataRequest: UnpublishMetadataRequest, _options?: PromiseConfigurationOptions): Promise; /** * Updates a Spotter Analyst. The request body is identical to `createAnalyst` and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset (no instructions, no MCP connectors, no starter prompts). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot edit it. Version: 26.10.0.cl or later Updates a Spotter Analyst. The request body is identical to the create analyst API, and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with can use it but cannot edit it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior. Instructions that conflict with system guardrails are rejected with `409`. Omitting this field clears any existing instructions. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). Replaces the existing list in full. When new sources are added, they are automatically shared with users the analyst was previously shared with, so those users keep a working analyst. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors. Replaces the existing list in full; omit or pass an empty array to clear. - `starter_prompts` (optional): up to 4 plain-text prompts, each between 10 and 250 characters; display order follows list position. Replaces the existing list in full; omit or pass an empty array to clear. If the request is successful, the response contains the updated analyst, including the refreshed `updated_time_in_millis` timestamp (epoch milliseconds) and `updated_by` user. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, and starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`). #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to update. * @param updateAnalystRequest */ updateAnalystWithHttpInfo(analystIdentifier: string, updateAnalystRequest: UpdateAnalystRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Updates a Spotter Analyst. The request body is identical to `createAnalyst` and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset (no instructions, no MCP connectors, no starter prompts). Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with cannot edit it. Version: 26.10.0.cl or later Updates a Spotter Analyst. The request body is identical to the create analyst API, and the update is a full replace: the analyst is rewritten from the request, and optional fields omitted from the request are reset. Requires ownership of the analyst, or `ADMINISTRATION` or `CAN_MANAGE_SPOTTER` privileges. Users the analyst is shared with can use it but cannot edit it. Use a bearer token for the Org in which the analyst exists. #### Usage guidelines The request body is flat — all fields are top-level: - `name` (required): display name of the analyst. - `description` (required): up to 200 characters. - `instructions` (optional): natural-language instructions that guide the agent\'s behavior. Instructions that conflict with system guardrails are rejected with `409`. Omitting this field clears any existing instructions. - `sources` (required): at least one data source the analyst can query, each with an `identifier`, an optional `name`, and a `type` (`MODEL`, `ANSWER`, `LIVEBOARD`, or `CONVERSATION`). Replaces the existing list in full. When new sources are added, they are automatically shared with users the analyst was previously shared with, so those users keep a working analyst. - `mcp_connector_identifiers` (optional): identifiers of MCP connectors. Replaces the existing list in full; omit or pass an empty array to clear. - `starter_prompts` (optional): up to 4 plain-text prompts, each between 10 and 250 characters; display order follows list position. Replaces the existing list in full; omit or pass an empty array to clear. If the request is successful, the response contains the updated analyst, including the refreshed `updated_time_in_millis` timestamp (epoch milliseconds) and `updated_by` user. In responses, sources are returned with `id` and `type`, connector identifiers as `mcp_connectors`, and starter prompts as structured objects (`label`, `text`, `order`, `is_ai_generated`). #### Error conditions - `400` — malformed analyst identifier. - `403` — the caller is not the analyst\'s author and lacks admin / Spotter-management privileges. - `404` — no analyst with the given identifier exists in the caller\'s Org. - `409` — `instructions` conflict with system guardrails. - `422` — validation failure, such as a missing required field (`name`, `description`, or `sources`), an empty `sources` list, too many starter prompts, or field-length violations. - `429` — rate limit exceeded. * @param analystIdentifier Unique identifier of the analyst to update. * @param updateAnalystRequest */ updateAnalyst(analystIdentifier: string, updateAnalystRequest: UpdateAnalystRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Updates the properties of a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can update the properties of a calendar using one of the following methods: * `FROM_INPUT_PARAMS` to update the calendar properties with the values defined in the API request. * `FROM_EXISTING_TABLE` Creates a calendar from the parameters defined in the API request. To update a custom calendar, specify the calendar ID as a path parameter in the request URL and the following parameters in the request body: * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. The 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. #### Examples Update a custom calendar using an existing Table in ThoughtSpot: ``` { \"update_method\": \"FROM_EXISTING_TABLE\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" } } ``` Update a custom calendar with the attributes defined in the API request: ``` { \"update_method\": \"FROM_INPUT_PARAMS\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" }, \"month_offset\": \"August\", \"start_day_of_week\": \"Monday\", \"start_date\": \"08/01/2025\", \"end_date\": \"07/31/2026\" } ``` * @param calendarIdentifier Unique Id or name of the calendar. * @param updateCalendarRequest */ updateCalendarWithHttpInfo(calendarIdentifier: string, updateCalendarRequest: UpdateCalendarRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Updates the properties of a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal). Requires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Usage guidelines You can update the properties of a calendar using one of the following methods: * `FROM_INPUT_PARAMS` to update the calendar properties with the values defined in the API request. * `FROM_EXISTING_TABLE` Creates a calendar from the parameters defined in the API request. To update a custom calendar, specify the calendar ID as a path parameter in the request URL and the following parameters in the request body: * Connection ID and Table name * Database and schema name attributes: For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required. 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. Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional. The 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. #### Examples Update a custom calendar using an existing Table in ThoughtSpot: ``` { \"update_method\": \"FROM_EXISTING_TABLE\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" } } ``` Update a custom calendar with the attributes defined in the API request: ``` { \"update_method\": \"FROM_INPUT_PARAMS\", \"table_reference\": { \"connection_identifier\": \"Connection1\", \"database_name\": \"db1\", \"table_name\": \"custom_calendar_2025\", \"schame_name\": \"schemaVar\" }, \"month_offset\": \"August\", \"start_day_of_week\": \"Monday\", \"start_date\": \"08/01/2025\", \"end_date\": \"07/31/2026\" } ``` * @param calendarIdentifier Unique Id or name of the calendar. * @param updateCalendarRequest */ updateCalendar(calendarIdentifier: string, updateCalendarRequest: UpdateCalendarRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Updates an existing collection in ThoughtSpot. #### Supported operations This API endpoint lets you perform the following operations: * Update collection name and description * Change visibility settings * Add metadata objects to the collection (operation: ADD) * Remove metadata objects from the collection (operation: REMOVE) * Replace all metadata objects in the collection (operation: REPLACE) #### Operation types * **ADD**: Adds the specified metadata objects to the existing collection without removing current items * **REMOVE**: Removes only the specified metadata objects from the collection * **REPLACE**: Replaces all existing metadata objects with the specified items (default behavior) * @param collectionIdentifier Unique GUID of the collection. Note: Collection names cannot be used as identifiers since duplicate names are allowed. * @param updateCollectionRequest */ updateCollectionWithHttpInfo(collectionIdentifier: string, updateCollectionRequest: UpdateCollectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Updates an existing collection in ThoughtSpot. #### Supported operations This API endpoint lets you perform the following operations: * Update collection name and description * Change visibility settings * Add metadata objects to the collection (operation: ADD) * Remove metadata objects from the collection (operation: REMOVE) * Replace all metadata objects in the collection (operation: REPLACE) #### Operation types * **ADD**: Adds the specified metadata objects to the existing collection without removing current items * **REMOVE**: Removes only the specified metadata objects from the collection * **REPLACE**: Replaces all existing metadata objects with the specified items (default behavior) * @param collectionIdentifier Unique GUID of the collection. Note: Collection names cannot be used as identifiers since duplicate names are allowed. * @param updateCollectionRequest */ updateCollection(collectionIdentifier: string, updateCollectionRequest: UpdateCollectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Creates, updates, or deletes column security rules for specified tables. This 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. #### Usage guidelines - Provide table identifier using either `identifier` (GUID or name) or `obj_identifier` (object ID) - Use `clear_csr: true` to remove all column security rules from the table - For each column, specify the security rule using `column_security_rules` array - Use `is_unsecured: true` to mark a specific column as unprotected - Use `group_access` operations to manage group associations: - `ADD`: Add groups to the column\'s access list - `REMOVE`: Remove groups from the column\'s access list - `REPLACE`: Replace all existing groups with the specified groups #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data (if RBAC is disabled) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables (if RBAC is enabled) #### Example request ```json { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\", \"clear_csr\": false, \"column_security_rules\": [ { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"ADD\", \"group_identifiers\": [\"hr_group_id\", \"hr_group_name\", \"finance_group_id\"] } ] }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": true }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"REPLACE\", \"group_identifiers\": [\"management_group_id\", \"management_group_name\"] } ] } ] } ``` #### Request Body Schema - `identifier` (string, optional): GUID or name of the table for which we want to create column security rules - `obj_identifier` (string, optional): The object ID of the table - `clear_csr` (boolean, optional): If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed - `column_security_rules` (array of objects, required): An array where each object defines the security rule for a specific column Each column security rule object contains: - `column_identifier` (string, required): Column identifier (col_id or name) - `is_unsecured` (boolean, optional): If true, the column will be marked as unprotected and all groups associated with it will be removed - `group_access` (array of objects, optional): Array of group operation objects Each group operation object contains: - `operation` (string, required): Operation type - ADD, REMOVE, or REPLACE - `group_identifiers` (array of strings, required): Array of group identifiers (name or GUID) on which the operation will be performed #### Response This API does not return any response body. A successful operation returns HTTP 200 status code. #### Operation Types - **ADD**: Adds the specified groups to the column\'s access list - **REMOVE**: Removes the specified groups from the column\'s access list - **REPLACE**: Replaces all existing groups with the specified groups * @param updateColumnSecurityRulesRequest */ updateColumnSecurityRulesWithHttpInfo(updateColumnSecurityRulesRequest: UpdateColumnSecurityRulesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Creates, updates, or deletes column security rules for specified tables. This 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. #### Usage guidelines - Provide table identifier using either `identifier` (GUID or name) or `obj_identifier` (object ID) - Use `clear_csr: true` to remove all column security rules from the table - For each column, specify the security rule using `column_security_rules` array - Use `is_unsecured: true` to mark a specific column as unprotected - Use `group_access` operations to manage group associations: - `ADD`: Add groups to the column\'s access list - `REMOVE`: Remove groups from the column\'s access list - `REPLACE`: Replace all existing groups with the specified groups #### Required permissions - `ADMINISTRATION` - Can administer ThoughtSpot - `DATAMANAGEMENT` - Can manage data (if RBAC is disabled) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables (if RBAC is enabled) #### Example request ```json { \"identifier\": \"table-guid\", \"obj_identifier\": \"table-object-id\", \"clear_csr\": false, \"column_security_rules\": [ { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"ADD\", \"group_identifiers\": [\"hr_group_id\", \"hr_group_name\", \"finance_group_id\"] } ] }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": true }, { \"column_identifier\": \"col id or col name\", \"is_unsecured\": false, \"group_access\": [ { \"operation\": \"REPLACE\", \"group_identifiers\": [\"management_group_id\", \"management_group_name\"] } ] } ] } ``` #### Request Body Schema - `identifier` (string, optional): GUID or name of the table for which we want to create column security rules - `obj_identifier` (string, optional): The object ID of the table - `clear_csr` (boolean, optional): If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed - `column_security_rules` (array of objects, required): An array where each object defines the security rule for a specific column Each column security rule object contains: - `column_identifier` (string, required): Column identifier (col_id or name) - `is_unsecured` (boolean, optional): If true, the column will be marked as unprotected and all groups associated with it will be removed - `group_access` (array of objects, optional): Array of group operation objects Each group operation object contains: - `operation` (string, required): Operation type - ADD, REMOVE, or REPLACE - `group_identifiers` (array of strings, required): Array of group identifiers (name or GUID) on which the operation will be performed #### Response This API does not return any response body. A successful operation returns HTTP 200 status code. #### Operation Types - **ADD**: Adds the specified groups to the column\'s access list - **REMOVE**: Removes the specified groups from the column\'s access list - **REPLACE**: Replaces all existing groups with the specified groups * @param updateColumnSecurityRulesRequest */ updateColumnSecurityRules(updateColumnSecurityRulesRequest: UpdateColumnSecurityRulesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Updates Git repository configuration settings. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param updateConfigRequest */ updateConfigWithHttpInfo(updateConfigRequest: UpdateConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Updates Git repository configuration settings. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param updateConfigRequest */ updateConfig(updateConfigRequest: UpdateConfigRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Update connection V2](#/http/api-endpoints/connections/update-connection-v2) endpoint to update your connection objects. #### Usage guidelines Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. * @param updateConnectionRequest */ updateConnectionWithHttpInfo(updateConnectionRequest: UpdateConnectionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later **Important**: This endpoint is deprecated and will be removed from ThoughtSpot in September 2025. ThoughtSpot strongly recommends using the [Update connection V2](#/http/api-endpoints/connections/update-connection-v2) endpoint to update your connection objects. #### Usage guidelines Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. * @param updateConnectionRequest */ updateConnection(updateConnectionRequest: UpdateConnectionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Updates a connection configuration object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit the name or description of the configuration * Edit the configuration properties * Edit the `policy_type` * Edit the type of authentication * Enable or disable a configuration #### Parameterized Connection Support For 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. **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`. * @param configurationIdentifier Unique ID or name of the configuration. * @param updateConnectionConfigurationRequest */ updateConnectionConfigurationWithHttpInfo(configurationIdentifier: string, updateConnectionConfigurationRequest: UpdateConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Updates a connection configuration object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit the name or description of the configuration * Edit the configuration properties * Edit the `policy_type` * Edit the type of authentication * Enable or disable a configuration #### Parameterized Connection Support For 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. **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`. * @param configurationIdentifier Unique ID or name of the configuration. * @param updateConnectionConfigurationRequest */ updateConnectionConfiguration(configurationIdentifier: string, updateConnectionConfigurationRequest: UpdateConnectionConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.6.0.cl or later Activates or deactivates a connection. A deactivated connection cannot be used for queries or operations until it is activated again. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [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. Only the connection owner or an administrator can perform this operation. #### Usage guidelines To update the status of a connection, specify the connection GUID or name in the `connection_identifier` path parameter and the desired `status` in the request body. - **ACTIVATED**: Enables the connection. Queries and operations can resume on an activated connection. - **DEACTIVATED**: Disables the connection. It does not remove the connection metadata, but only makes the connection unavailable for queries and operations. You can reactivate a deactivated connection by setting \"status\": \"ACTIVATED\". * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionStatusRequest */ updateConnectionStatusWithHttpInfo(connectionIdentifier: string, updateConnectionStatusRequest: UpdateConnectionStatusRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.6.0.cl or later Activates or deactivates a connection. A deactivated connection cannot be used for queries or operations until it is activated again. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [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. Only the connection owner or an administrator can perform this operation. #### Usage guidelines To update the status of a connection, specify the connection GUID or name in the `connection_identifier` path parameter and the desired `status` in the request body. - **ACTIVATED**: Enables the connection. Queries and operations can resume on an activated connection. - **DEACTIVATED**: Disables the connection. It does not remove the connection metadata, but only makes the connection unavailable for queries and operations. You can reactivate a deactivated connection by setting \"status\": \"ACTIVATED\". * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionStatusRequest */ updateConnectionStatus(connectionIdentifier: string, updateConnectionStatusRequest: UpdateConnectionStatusRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.4.0.cl or later Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: * This is an example of updating a single table in a empty connection: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"DEMORENAME\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"Col1\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col2\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col3\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col312\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col4\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` * This is an example of updating a single table in an existing connection with tables: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"CUSTOMER\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [], \"relationships\": [] }, { \"name\": \"tpch5k_falcon_default_schema_users\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"user_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"product_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"user_cost\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a Snowflake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"databases\":[\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionV2Request */ updateConnectionV2WithHttpInfo(connectionIdentifier: string, updateConnectionV2Request: UpdateConnectionV2Request, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.4.0.cl or later Updates a connection object. Requires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [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. To update a connection object, pass these parameters in your API request: 1. GUID of the connection object. 2. If you are updating tables or database schema of a connection object: a. Add the updated JSON map of metadata with database, schema, and tables in `data_warehouse_config`. b. Set `validate` to `true`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes, database details, and table properties in `data_warehouse_config` as shown in the following example: * This is an example of updating a single table in a empty connection: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"DEMORENAME\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"Col1\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col2\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col3\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col312\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"Col4\", \"type\": \"VARCHAR\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` * This is an example of updating a single table in an existing connection with tables: ``` { \"authenticationType\": \"SERVICE_ACCOUNT\", \"databases\": [\"DB2\", \"DB3\", \"DEVELOPMENT\"], \"externalDatabases\": [ { \"name\": \"DEVELOPMENT\", \"isAutoCreated\": false, \"schemas\": [ { \"name\": \"TS_dataset\", \"tables\": [ { \"name\": \"CUSTOMER\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [], \"relationships\": [] }, { \"name\": \"tpch5k_falcon_default_schema_users\", \"type\": \"TABLE\", \"description\": \"\", \"selected\": true, \"linked\": true, \"gid\": 0, \"datasetId\": \"-1\", \"subType\": \"\", \"reportId\": \"\", \"viewId\": \"\", \"columns\": [ { \"name\": \"user_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"product_id\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false }, { \"name\": \"user_cost\", \"type\": \"INT64\", \"canImport\": true, \"selected\": true, \"description\": \"\", \"isLinkedActive\": true, \"isAggregate\": false } ], \"relationships\": [] } ] } ] } ], \"configuration\": { \"password\": \"\", \"database\": \"DEVELOPMENT\", \"role\": \"DEV\", \"accountName\": \"thoughtspot_partner\", \"warehouse\": \"DEMO_WH\", \"user\": \"DEV_USER\" } } ``` 3. If you are updating a configuration attribute, connection name, or description, you can set `validate` to `false`. **NOTE:** If the `authentication_type` is anything other than SERVICE_ACCOUNT, you must explicitly provide the authenticationType property in the payload. If you do not specify authenticationType, the API will default to SERVICE_ACCOUNT as the authentication type. * A JSON map of configuration attributes in `data_warehouse_config`. The following example shows the configuration attributes for a Snowflake connection: ``` { \"configuration\":{ \"accountName\":\"thoughtspot_partner\", \"user\":\"tsadmin\", \"password\":\"TestConn123\", \"role\":\"sysadmin\", \"warehouse\":\"MEDIUM_WH\" }, \"databases\":[\"DB1\", \"DB2\"], \"externalDatabases\":[ ] } ``` The optional `databases` property in `data_warehouse_config` accepts a list of database names. When specified, ThoughtSpot persists this list on the connection and uses it to scope metadata fetching to only the specified databases in subsequent table add and remove operations. If omitted, all databases in the data warehouse are accessible for metadata operations. The `databases` and `externalDatabases` serve different purposes. `databases` is a flat list of database names that controls which databases are scanned during metadata operations. `externalDatabases` defines the full table hierarchy and determines which tables are linked into ThoughtSpot. * @param connectionIdentifier Unique ID or name of the connection. * @param updateConnectionV2Request */ updateConnectionV2(connectionIdentifier: string, updateConnectionV2Request: UpdateConnectionV2Request, _options?: PromiseConfigurationOptions): Promise; /** * Updates attributes of an existing agent conversation. Supports updating the display title and the pinned state; additional conversation attributes may be supported in future versions. At least one updatable attribute must be provided in the request body. Each attribute is applied independently, so omitted attributes are left unchanged. Version: 26.7.0.cl or later Updates attributes of an existing saved agent conversation. Supports updating the conversation\'s display `title` and its `is_pinned` state; additional updatable attributes may be supported in future versions. At least one updatable attribute must be supplied in the request body. Use this endpoint to rename a conversation, or to pin a conversation so that it is surfaced first in the conversation list for quick access. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being updated. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to update, as returned by `createAgentConversation` or `getConversationList` - At least one updatable attribute in the request body: - `title` *(optional)*: the new display name for the conversation. An empty or whitespace-only value is replaced with a default title rather than rejected. - `is_pinned` *(optional)*: `true` to pin the conversation, `false` to unpin it. Available from version 26.10.0.cl. Each attribute is applied independently: omitted attributes are left unchanged, so you can update the title and the pinned state in a single request or in separate requests. Updating `is_pinned` is idempotent — pinning an already-pinned conversation, or unpinning an already-unpinned one, succeeds with no side effects. A successful request returns an empty `204 No Content` response. Updated attributes are reflected immediately in subsequent calls to `getConversationList`. #### Example request Rename a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\" } ``` Pin a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"is_pinned\": true } ``` Update both attributes in a single request: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\", \"is_pinned\": true } ``` #### Error responses | Code | Description | |------|-------------| | 400 | Bad Request — the request body supplies neither `title` nor `is_pinned`, or `is_pinned` is not a boolean. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | | 422 | Unprocessable Entity — the request body is malformed or contains an invalid field value. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` can be updated. Unsaved conversations are not persisted and do not have a retrievable identifier. > - There is no limit on the number of conversations a user can pin. > - Available from version 26.7.0.cl and later. The `is_pinned` attribute is available from version 26.10.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to update. * @param updateConversationRequest */ updateConversationWithHttpInfo(conversationIdentifier: string, updateConversationRequest: UpdateConversationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Updates attributes of an existing agent conversation. Supports updating the display title and the pinned state; additional conversation attributes may be supported in future versions. At least one updatable attribute must be provided in the request body. Each attribute is applied independently, so omitted attributes are left unchanged. Version: 26.7.0.cl or later Updates attributes of an existing saved agent conversation. Supports updating the conversation\'s display `title` and its `is_pinned` state; additional updatable attributes may be supported in future versions. At least one updatable attribute must be supplied in the request body. Use this endpoint to rename a conversation, or to pin a conversation so that it is surfaced first in the conversation list for quick access. Requires `CAN_USE_SPOTTER` privilege and ownership of the conversation being updated. #### Usage guidelines The request must include: - `conversation_identifier` *(path parameter)*: the unique ID of the conversation to update, as returned by `createAgentConversation` or `getConversationList` - At least one updatable attribute in the request body: - `title` *(optional)*: the new display name for the conversation. An empty or whitespace-only value is replaced with a default title rather than rejected. - `is_pinned` *(optional)*: `true` to pin the conversation, `false` to unpin it. Available from version 26.10.0.cl. Each attribute is applied independently: omitted attributes are left unchanged, so you can update the title and the pinned state in a single request or in separate requests. Updating `is_pinned` is idempotent — pinning an already-pinned conversation, or unpinning an already-unpinned one, succeeds with no side effects. A successful request returns an empty `204 No Content` response. Updated attributes are reflected immediately in subsequent calls to `getConversationList`. #### Example request Rename a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\" } ``` Pin a conversation: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"is_pinned\": true } ``` Update both attributes in a single request: ```bash POST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update Content-Type: application/json { \"title\": \"Revenue Breakdown by Product Line\", \"is_pinned\": true } ``` #### Error responses | Code | Description | |------|-------------| | 400 | Bad Request — the request body supplies neither `title` nor `is_pinned`, or `is_pinned` is not a boolean. | | 401 | Unauthorized — authentication token is missing, expired, or invalid. | | 403 | Forbidden — the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. | | 404 | Not Found — no conversation exists with the given `conversation_identifier` for the authenticated user. | | 422 | Unprocessable Entity — the request body is malformed or contains an invalid field value. | > ###### Note: > > - Only conversations created with `enable_save_chat: true` can be updated. Unsaved conversations are not persisted and do not have a retrievable identifier. > - There is no limit on the number of conversations a user can pin. > - Available from version 26.7.0.cl and later. The `is_pinned` attribute is available from version 26.10.0.cl and later. > - This endpoint requires Spotter — please contact ThoughtSpot Support to enable Spotter on your cluster. * @param conversationIdentifier Unique identifier of the conversation to update. * @param updateConversationRequest */ updateConversation(conversationIdentifier: string, updateConversationRequest: UpdateConversationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Updates a custom action. 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. #### Usage Guidelines The API allows you to modify the following properties: * Name of the custom action * Action availability to groups * Association to metadata objects * Authentication settings for a URL-based action For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param customActionIdentifier Unique ID or name of the custom action. * @param updateCustomActionRequest */ updateCustomActionWithHttpInfo(customActionIdentifier: string, updateCustomActionRequest: UpdateCustomActionRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.6.0.cl or later **Note:** This API endpoint is deprecated from 26.12.0.cl and will be removed from ThoughtSpot in 27.6.0.cl. Use [code-based custom actions](https://developers.thoughtspot.com/docs/code-based-custom-action) in the Visual Embed SDK instead. Updates a custom action. 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. #### Usage Guidelines The API allows you to modify the following properties: * Name of the custom action * Action availability to groups * Association to metadata objects * Authentication settings for a URL-based action For more information, see [Custom actions](https://developers.thoughtspot.com/docs/custom-action-intro). * @param customActionIdentifier Unique ID or name of the custom action. * @param updateCustomActionRequest */ updateCustomAction(customActionIdentifier: string, updateCustomActionRequest: UpdateCustomActionRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.9.0.cl or later Updates a DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About update DBT connection You can modify DBT connection object properties such as embrace connection name, embrace database name, import type, account identifier, access token, project identifier and environment (or) embrace connection, embrace database name, import type, file_content settings. * @param dbtConnectionIdentifier Unique ID of the DBT Connection. * @param [connectionName] Name of the connection. * @param [databaseName] Name of the Database. * @param [importType] Mention type of Import * @param [accessToken] Access token is mandatory when Import_Type is DBT_CLOUD. * @param [dbtUrl] DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param [accountId] Account ID is mandatory when Import_Type is DBT_CLOUD * @param [projectId] Project ID is mandatory when Import_Type is DBT_CLOUD * @param [dbtEnvId] DBT Environment ID\\\" * @param [projectName] Name of the project * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ updateDbtConnectionWithHttpInfo(dbtConnectionIdentifier: string, connectionName?: string, databaseName?: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.9.0.cl or later Updates a DBT connection object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege or `DATAMANAGEMENT` (**Can manage data ThoughtSpot**) privilege, along with an existing DBT connection. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the following data control privileges may be required: - `CAN_MANAGE_CUSTOM_CALENDAR`(**Can manage custom calendars**) - `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) - `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) #### About update DBT connection You can modify DBT connection object properties such as embrace connection name, embrace database name, import type, account identifier, access token, project identifier and environment (or) embrace connection, embrace database name, import type, file_content settings. * @param dbtConnectionIdentifier Unique ID of the DBT Connection. * @param [connectionName] Name of the connection. * @param [databaseName] Name of the Database. * @param [importType] Mention type of Import * @param [accessToken] Access token is mandatory when Import_Type is DBT_CLOUD. * @param [dbtUrl] DBT URL is mandatory when Import_Type is DBT_CLOUD. * @param [accountId] Account ID is mandatory when Import_Type is DBT_CLOUD * @param [projectId] Project ID is mandatory when Import_Type is DBT_CLOUD * @param [dbtEnvId] DBT Environment ID\\\" * @param [projectName] Name of the project * @param [fileContent] Upload DBT Manifest and Catalog artifact files as a ZIP file. This field is Mandatory when Import Type is \\\'ZIP_FILE\\\' */ updateDbtConnection(dbtConnectionIdentifier: string, connectionName?: string, databaseName?: string, importType?: string, accessToken?: string, dbtUrl?: string, accountId?: string, projectId?: string, dbtEnvId?: string, projectName?: string, fileContent?: HttpFile, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.12.0.cl or later Updates a customization configuration for the notification email. #### 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 To update a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param updateEmailCustomizationRequest */ updateEmailCustomizationWithHttpInfo(updateEmailCustomizationRequest: UpdateEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.12.0.cl or later Updates a customization configuration for the notification email. #### 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 To update a custom configuration pass these parameters in your API request: - A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration: ``` { { \"cta_button_bg_color\": \"#444DEA\", \"cta_text_font_color\": \"#FFFFFF\", \"primary_bg_color\": \"#D3DEF0\", \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\", \"font_family\": \"\", \"product_name\": \"ThoughtSpot\", \"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\", \"footer_phone\": \"(800) 508-7008\", \"replacement_value_for_liveboard\": \"Dashboard\", \"replacement_value_for_answer\": \"Chart\", \"replacement_value_for_spot_iq\": \"AI Insights\", \"hide_footer_phone\": false, \"hide_footer_address\": false, \"hide_product_name\": false, \"hide_manage_notification\": false, \"hide_mobile_app_nudge\": false, \"hide_privacy_policy\": false, \"hide_ts_vocabulary_definitions\": false, \"hide_error_message\": false, \"hide_unsubscribe_link\": false, \"hide_notification_status\": false, \"hide_modify_alert\": false, \"company_website_url\": \"https://your-website.com/\", \"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\", \"contact_support_url\": \"https://link-to-contact-support.com/\", \"hide_contact_support_url\": false, \"hide_logo_url\" : false } } ``` * @param updateEmailCustomizationRequest */ updateEmailCustomization(updateEmailCustomizationRequest: UpdateEmailCustomizationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.10.0.cl or later Updates the Org assignments for a feature. Available to cluster admins only. #### Pre-requisites Requires the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege in the cluster-admin (All-Org / default-org) context. This endpoint manages Org assignments across the cluster, so it must be called by a cluster admin; org-scoped admins cannot call it. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To update the Org assignments for a feature, pass these parameters in your API request: - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature to update. - `org_identifiers` — Numeric IDs of the Orgs to assign. Send an empty array with `operation` set to `REPLACE` to clear all Org assignments for this feature. - `operation` — Type of update to apply. `ADD` assigns the given Orgs in addition to the existing ones; `REMOVE` unassigns the given Orgs; `REPLACE` sets the assignment to exactly the given Orgs. Defaults to `REPLACE`. The following example assigns Orgs `1` and `2` to a feature, in addition to any Orgs already assigned: ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [1, 2], \"operation\": \"ADD\" } ``` Clear all Org assignments for a feature by sending an empty array with `operation` set to `REPLACE` (this is the only way to unassign every Org at once): ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [], \"operation\": \"REPLACE\" } ``` * @param updateFeatureAssignmentsRequest */ updateFeatureAssignmentsWithHttpInfo(updateFeatureAssignmentsRequest: UpdateFeatureAssignmentsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Updates the Org assignments for a feature. Available to cluster admins only. #### Pre-requisites Requires the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege in the cluster-admin (All-Org / default-org) context. This endpoint manages Org assignments across the cluster, so it must be called by a cluster admin; org-scoped admins cannot call it. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To update the Org assignments for a feature, pass these parameters in your API request: - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature to update. - `org_identifiers` — Numeric IDs of the Orgs to assign. Send an empty array with `operation` set to `REPLACE` to clear all Org assignments for this feature. - `operation` — Type of update to apply. `ADD` assigns the given Orgs in addition to the existing ones; `REMOVE` unassigns the given Orgs; `REPLACE` sets the assignment to exactly the given Orgs. Defaults to `REPLACE`. The following example assigns Orgs `1` and `2` to a feature, in addition to any Orgs already assigned: ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [1, 2], \"operation\": \"ADD\" } ``` Clear all Org assignments for a feature by sending an empty array with `operation` set to `REPLACE` (this is the only way to unassign every Org at once): ``` { \"feature_identifier\": \"index_columns\", \"org_identifiers\": [], \"operation\": \"REPLACE\" } ``` * @param updateFeatureAssignmentsRequest */ updateFeatureAssignments(updateFeatureAssignmentsRequest: UpdateFeatureAssignmentsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.10.0.cl or later Sets the value of a feature at the cluster or Org scope. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To set a feature value, pass these parameters in your API request: - `scope` — Determines the scope at which the value is set. Use `CLUSTER` to set the cluster-level value; use `ORG` to set a per-Org value override. - `org_identifier` — Numeric ID of the Org for which to set the value. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature whose value should be set. - `feature_value` — New value to set for the feature. - `reset_org_overrides` — Applicable only when `scope` is `CLUSTER`. When `true`, any existing per-Org value overrides for this feature are also removed so that all Orgs inherit the new cluster-level value. Required when `scope` is `CLUSTER` for an org-aware feature. Must be omitted when `scope` is `ORG`; passing it at `ORG` scope returns a 400 error. The following example sets a per-Org value override for Org `1`: ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\" } ``` Set the cluster-level value and clear all per-Org overrides so every Org inherits the new value (CLUSTER scope). `reset_org_overrides: true` is destructive — it strips existing per-Org overrides cluster-wide: ``` { \"scope\": \"CLUSTER\", \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\", \"reset_org_overrides\": true } ``` * @param updateFeatureValueRequest */ updateFeatureValueWithHttpInfo(updateFeatureValueRequest: UpdateFeatureValueRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.10.0.cl or later Sets the value of a feature at the cluster or Org scope. #### Pre-requisites Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege is required. #### Usage guidelines To set a feature value, pass these parameters in your API request: - `scope` — Determines the scope at which the value is set. Use `CLUSTER` to set the cluster-level value; use `ORG` to set a per-Org value override. - `org_identifier` — Numeric ID of the Org for which to set the value. Required when `scope` is `ORG`; ignored when `scope` is `CLUSTER`. - `feature_identifier` — User-friendly feature name (`feature_name`) or the underlying feature ID (`feature_id`) of the feature whose value should be set. - `feature_value` — New value to set for the feature. - `reset_org_overrides` — Applicable only when `scope` is `CLUSTER`. When `true`, any existing per-Org value overrides for this feature are also removed so that all Orgs inherit the new cluster-level value. Required when `scope` is `CLUSTER` for an org-aware feature. Must be omitted when `scope` is `ORG`; passing it at `ORG` scope returns a 400 error. The following example sets a per-Org value override for Org `1`: ``` { \"scope\": \"ORG\", \"org_identifier\": 1, \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\" } ``` Set the cluster-level value and clear all per-Org overrides so every Org inherits the new value (CLUSTER scope). `reset_org_overrides: true` is destructive — it strips existing per-Org overrides cluster-wide: ``` { \"scope\": \"CLUSTER\", \"feature_identifier\": \"index_columns\", \"feature_value\": \"true\", \"reset_org_overrides\": true } ``` * @param updateFeatureValueRequest */ updateFeatureValue(updateFeatureValueRequest: UpdateFeatureValueRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update header attributes for a given list of header objects. Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **headers_update** - **Description:** List of header objects with their attributes to be updated. Each object contains a list of attributes to be updated in the header. - **Usage:** - You must provide either `identifier` or `obj_identifier`, but not both. Both fields cannot be empty. - When `org_identifier` is set to `-1`, only the `identifier` value is accepted; `obj_identifier` is not allowed. 2. **org_identifier** - **Description:** GUID (Globally Unique Identifier) or name of the organization. - **Usage:** - Leaving this field empty assumes that the changes should be applied to the current organization - Provide `org_guid` or `org_name` to uniquely identify the organization where changes need to be applied. . - Provide `-1` if changes have to be applied across all the org. --- ## Note Currently, this API is enabled only for updating the `obj_identifier` attribute. Only `text` will be allowed in attribute\'s value. ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the update process --- ## Examples ### Only `identifier` is given ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"obj_identifier\": \"\", \"type\": \"LOGICAL_COLUMN\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgGuid\" } ``` ### Only `obj_identifier` is given ```json { \"headers_update\": [ { \"obj_identifier\": \"custom_object_id\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgName\" } ``` ### Executing update for all org `-1` ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` ### Optional `type` is not provided ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` * @param updateMetadataHeaderRequest */ updateMetadataHeaderWithHttpInfo(updateMetadataHeaderRequest: UpdateMetadataHeaderRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update header attributes for a given list of header objects. Version: 10.6.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **headers_update** - **Description:** List of header objects with their attributes to be updated. Each object contains a list of attributes to be updated in the header. - **Usage:** - You must provide either `identifier` or `obj_identifier`, but not both. Both fields cannot be empty. - When `org_identifier` is set to `-1`, only the `identifier` value is accepted; `obj_identifier` is not allowed. 2. **org_identifier** - **Description:** GUID (Globally Unique Identifier) or name of the organization. - **Usage:** - Leaving this field empty assumes that the changes should be applied to the current organization - Provide `org_guid` or `org_name` to uniquely identify the organization where changes need to be applied. . - Provide `-1` if changes have to be applied across all the org. --- ## Note Currently, this API is enabled only for updating the `obj_identifier` attribute. Only `text` will be allowed in attribute\'s value. ## Best Practices 1. **Backup Before Conversion:** Always export metadata as a backup before initiating the update process --- ## Examples ### Only `identifier` is given ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"obj_identifier\": \"\", \"type\": \"LOGICAL_COLUMN\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgGuid\" } ``` ### Only `obj_identifier` is given ```json { \"headers_update\": [ { \"obj_identifier\": \"custom_object_id\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": \"orgName\" } ``` ### Executing update for all org `-1` ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"type\": \"ANSWER\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` ### Optional `type` is not provided ```json { \"headers_update\": [ { \"identifier\": \"guid_1\", \"attributes\": [ { \"name\": \"obj_id\", \"value\": \"custom_object_id\" } ] } ], \"org_identifier\": -1 } ``` * @param updateMetadataHeaderRequest */ updateMetadataHeader(updateMetadataHeaderRequest: UpdateMetadataHeaderRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update object IDs for given metadata objects. Version: 10.8.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **metadata** - **Description:** List of metadata objects to update their object IDs. - **Usage:** - Use either `current_obj_id` alone OR use `metadata_identifier` with `type` (when needed). - When using `metadata_identifier`, the `type` field is required if using a name instead of a GUID. - The `new_obj_id` field is always required. --- ## Note This API is specifically designed for updating object IDs of metadata objects. It internally uses the header update mechanism to perform the changes. ## Best Practices 1. **Backup Before Update:** Always export metadata as a backup before initiating the update process. 2. **Validation:** - When using `current_obj_id`, ensure it matches the existing object ID exactly. - When using `metadata_identifier` with a name, ensure the `type` is specified correctly. - Verify that the `new_obj_id` follows your naming conventions and is unique within your system. --- ## Examples ### Using current_obj_id ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with GUID ```json { \"metadata\": [ { \"metadata_identifier\": \"01234567-89ab-cdef-0123-456789abcdef\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with name and type ```json { \"metadata\": [ { \"metadata_identifier\": \"My Answer\", \"type\": \"ANSWER\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Multiple objects update ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id_1\", \"new_obj_id\": \"new_object_id_1\" }, { \"metadata_identifier\": \"My Worksheet\", \"type\": \"LOGICAL_TABLE\", \"new_obj_id\": \"new_object_id_2\" } ] } ``` * @param updateMetadataObjIdRequest */ updateMetadataObjIdWithHttpInfo(updateMetadataObjIdRequest: UpdateMetadataObjIdRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update object IDs for given metadata objects. Version: 10.8.0.cl or later ## Prerequisites - **Privileges Required:** - `DATAMANAGEMENT` (Can manage data) or `ADMINISTRATION` (Can administer ThoughtSpot). - **Additional Privileges (if RBAC is enabled):** - `ORG_ADMINISTRATION` (Can manage orgs). --- ## Usage Guidelines ### Parameters 1. **metadata** - **Description:** List of metadata objects to update their object IDs. - **Usage:** - Use either `current_obj_id` alone OR use `metadata_identifier` with `type` (when needed). - When using `metadata_identifier`, the `type` field is required if using a name instead of a GUID. - The `new_obj_id` field is always required. --- ## Note This API is specifically designed for updating object IDs of metadata objects. It internally uses the header update mechanism to perform the changes. ## Best Practices 1. **Backup Before Update:** Always export metadata as a backup before initiating the update process. 2. **Validation:** - When using `current_obj_id`, ensure it matches the existing object ID exactly. - When using `metadata_identifier` with a name, ensure the `type` is specified correctly. - Verify that the `new_obj_id` follows your naming conventions and is unique within your system. --- ## Examples ### Using current_obj_id ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with GUID ```json { \"metadata\": [ { \"metadata_identifier\": \"01234567-89ab-cdef-0123-456789abcdef\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Using metadata_identifier with name and type ```json { \"metadata\": [ { \"metadata_identifier\": \"My Answer\", \"type\": \"ANSWER\", \"new_obj_id\": \"new_object_id\" } ] } ``` ### Multiple objects update ```json { \"metadata\": [ { \"current_obj_id\": \"existing_object_id_1\", \"new_obj_id\": \"new_object_id_1\" }, { \"metadata_identifier\": \"My Worksheet\", \"type\": \"LOGICAL_TABLE\", \"new_obj_id\": \"new_object_id_2\" } ] } ``` * @param updateMetadataObjIdRequest */ updateMetadataObjId(updateMetadataObjIdRequest: UpdateMetadataObjIdRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Updates an Org object. You can modify Org properties such as name, description, and user associations. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param orgIdentifier ID or name of the Org * @param updateOrgRequest */ updateOrgWithHttpInfo(orgIdentifier: string, updateOrgRequest: UpdateOrgRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates an Org object. You can modify Org properties such as name, description, and user associations. Requires cluster administration (**Can administer Org**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `ORG_ADMINISTRATION` (**Can manage Orgs**) privilege is required. * @param orgIdentifier ID or name of the Org * @param updateOrgRequest */ updateOrg(orgIdentifier: string, updateOrgRequest: UpdateOrgRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.5.0.cl or later Updates the properties of a Role object. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To update a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. * @param updateRoleRequest */ updateRoleWithHttpInfo(roleIdentifier: string, updateRoleRequest: UpdateRoleRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.5.0.cl or later Updates the properties of a Role object. Available only if [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance. To update a Role, the `ROLE_ADMINISTRATION` (**Can manage roles**) privilege is required. * @param roleIdentifier Unique ID or name of the Role. * @param updateRoleRequest */ updateRole(roleIdentifier: string, updateRoleRequest: UpdateRoleRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update schedule. Version: 9.4.0.cl or later Updates a scheduled Liveboard job. Requires at least edit access to Liveboards. To update a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, changing a schedule\'s `file_format` also requires the download privilege that corresponds to the selected format: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. The API endpoint allows you to pause a scheduled job, change the status of a paused job. You can also edit the recipients list, frequency of the job, format of the file to send to the recipients in email notifications, PDF options, and time zone setting. * @param scheduleIdentifier Unique ID or name of the schedule. * @param updateScheduleRequest */ updateScheduleWithHttpInfo(scheduleIdentifier: string, updateScheduleRequest: UpdateScheduleRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update schedule. Version: 9.4.0.cl or later Updates a scheduled Liveboard job. Requires at least edit access to Liveboards. To update a schedule on behalf of another user, you need `ADMINISTRATION` (**Can administer Org**) or `JOBSCHEDULING` (**Can schedule for others**) privilege and edit access to the Liveboard. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `JOBSCHEDULING` (**Can schedule for others**) privilege is required. If RBAC is enabled, changing a schedule\'s `file_format` also requires the download privilege that corresponds to the selected format: `CSV` and `XLSX` require the `CAN_DOWNLOAD_DETAILED_DATA` (**Can download detailed data**) privilege, and `PDF` requires the `CAN_DOWNLOAD_VISUALS` (**Can download visuals**) privilege. The API endpoint allows you to pause a scheduled job, change the status of a paused job. You can also edit the recipients list, frequency of the job, format of the file to send to the recipients in email notifications, PDF options, and time zone setting. * @param scheduleIdentifier Unique ID or name of the schedule. * @param updateScheduleRequest */ updateSchedule(scheduleIdentifier: string, updateScheduleRequest: UpdateScheduleRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Updates style preferences at cluster level or for the authenticated user\'s org, including navigation panel color, chart color palette, embedded footer text, logo, and font assignments per visualization area. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Resetting an Org-level preference falls back to Cluster-level preference, which on reset falls back to system defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines Two operations are supported via the `operation` field: - **REPLACE** (default): Applies the fields provided in the request. Omitted fields remain unchanged. - **RESET**: Reverts specific fields to defaults. Specify which fields to reset using `reset_options.style` (for style fields) and `reset_options.visualization_areas` (for font assignments). Fields not listed in `reset_options` are not affected. #### Logo upload Logo files are uploaded as binary fields using `multipart/form-data`: - `default_logo`: Square app icon and favicon. Recommended size: 140×140 px. Accepted formats: PNG, JPG. - `wide_logo`: Horizontal top nav bar logo. Recommended size: 230×45 px. Accepted formats: PNG, JPG. To reset a logo to the default, use `operation: RESET` with `reset_options.style` set to `DEFAULT_LOGO` or `WIDE_LOGO`. #### Navigation panel color Set `navigation_panel.theme` to one of: - `DARK`: Default dark theme. - `TWO_TONE`: Dual-tone panel style. - `CUSTOM`: User-defined color. Provide `navigation_panel.base_color` as a 6-digit hex string (e.g. `#2359B6`). #### App color theme `app_color_theme` (_available from 26.10.0.cl_) sets the same underlying color as `navigation_panel`, expressed as a brand color plus how it is applied. Provide exactly one of `navigation_panel` or `app_color_theme` per request; providing both returns an error. `app_color_theme` is supported only when the app color theme is enabled on the cluster; using it otherwise returns an error. - `brand_color`: Brand color as a 6-digit hex string (e.g. `#2359B6`). Omit to leave the stored color unchanged. To clear it, use `operation: RESET` with `reset_options.style` set to `APP_COLOR_THEME`. - `apply_as_top_nav_color`: Whether the brand color is painted on the top navigation bar literally, instead of the surface shade generated from it. Omit to leave the stored choice unchanged. `brand_color` and `apply_as_top_nav_color` may be set independently in the same request. #### Chart color palette Provide exactly 8 color entries in `chart_color_palette.colors`. Each entry requires a `primary` hex color. If `secondary` shades are omitted, the server auto-generates 4 shades from the primary color. #### Font assignments Specify `visualization_fonts.chart_visualization_fonts`, `visualization_fonts.table_visualization_fonts`, and `visualization_fonts.advanced_chart_visualization_fonts` to assign custom fonts to specific visualization areas. Only provide the areas you want to update; omitted areas remain unchanged. * @param scope Scope at which to apply the preferences. CLUSTER sets cluster-level defaults for all orgs. ORG applies to the authenticated user\\\'s org. * @param [operation] Operation to perform. REPLACE (default) applies the provided fields and leaves omitted fields unchanged. RESET reverts fields listed in reset_options to defaults. * @param [resetOptions] Fields to reset when operation is RESET. Specify style fields and visualization areas to revert to defaults. * @param [navigationPanel] Navigation panel color. Provide theme and, when theme is CUSTOM, also provide base_color. * @param [chartColorPalette] Chart color palette. When provided with operation REPLACE, exactly 8 color entries must be specified in colors. * @param [embeddedFooterText] Custom footer text for the embedded application. An empty string clears the footer. * @param [visualizationFonts] Font assignments per visualization area. Provide only the areas to update; omitted areas remain unchanged. * @param [defaultLogo] Binary image for the DEFAULT logo slot (square app icon and favicon; recommended 140x140 px). Accepted formats: PNG, JPG. * @param [wideLogo] Binary image for the WIDE logo slot (horizontal top nav bar logo; recommended 230x45 px). Accepted formats: PNG, JPG. */ updateStyleCustomizationWithHttpInfo(scope: string, operation?: string, resetOptions?: StyleResetOptionsInput, navigationPanel?: NavigationPanelInput, chartColorPalette?: StyleColorPaletteInput, embeddedFooterText?: string, visualizationFonts?: VisualizationFontsInput, defaultLogo?: HttpFile, wideLogo?: HttpFile, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Updates style preferences at cluster level or for the authenticated user\'s org, including navigation panel color, chart color palette, embedded footer text, logo, and font assignments per visualization area. Cluster-level preferences serve as defaults for all orgs. Org-level preferences override cluster defaults. Resetting an Org-level preference falls back to Cluster-level preference, which on reset falls back to system defaults. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines Two operations are supported via the `operation` field: - **REPLACE** (default): Applies the fields provided in the request. Omitted fields remain unchanged. - **RESET**: Reverts specific fields to defaults. Specify which fields to reset using `reset_options.style` (for style fields) and `reset_options.visualization_areas` (for font assignments). Fields not listed in `reset_options` are not affected. #### Logo upload Logo files are uploaded as binary fields using `multipart/form-data`: - `default_logo`: Square app icon and favicon. Recommended size: 140×140 px. Accepted formats: PNG, JPG. - `wide_logo`: Horizontal top nav bar logo. Recommended size: 230×45 px. Accepted formats: PNG, JPG. To reset a logo to the default, use `operation: RESET` with `reset_options.style` set to `DEFAULT_LOGO` or `WIDE_LOGO`. #### Navigation panel color Set `navigation_panel.theme` to one of: - `DARK`: Default dark theme. - `TWO_TONE`: Dual-tone panel style. - `CUSTOM`: User-defined color. Provide `navigation_panel.base_color` as a 6-digit hex string (e.g. `#2359B6`). #### App color theme `app_color_theme` (_available from 26.10.0.cl_) sets the same underlying color as `navigation_panel`, expressed as a brand color plus how it is applied. Provide exactly one of `navigation_panel` or `app_color_theme` per request; providing both returns an error. `app_color_theme` is supported only when the app color theme is enabled on the cluster; using it otherwise returns an error. - `brand_color`: Brand color as a 6-digit hex string (e.g. `#2359B6`). Omit to leave the stored color unchanged. To clear it, use `operation: RESET` with `reset_options.style` set to `APP_COLOR_THEME`. - `apply_as_top_nav_color`: Whether the brand color is painted on the top navigation bar literally, instead of the surface shade generated from it. Omit to leave the stored choice unchanged. `brand_color` and `apply_as_top_nav_color` may be set independently in the same request. #### Chart color palette Provide exactly 8 color entries in `chart_color_palette.colors`. Each entry requires a `primary` hex color. If `secondary` shades are omitted, the server auto-generates 4 shades from the primary color. #### Font assignments Specify `visualization_fonts.chart_visualization_fonts`, `visualization_fonts.table_visualization_fonts`, and `visualization_fonts.advanced_chart_visualization_fonts` to assign custom fonts to specific visualization areas. Only provide the areas you want to update; omitted areas remain unchanged. * @param scope Scope at which to apply the preferences. CLUSTER sets cluster-level defaults for all orgs. ORG applies to the authenticated user\\\'s org. * @param [operation] Operation to perform. REPLACE (default) applies the provided fields and leaves omitted fields unchanged. RESET reverts fields listed in reset_options to defaults. * @param [resetOptions] Fields to reset when operation is RESET. Specify style fields and visualization areas to revert to defaults. * @param [navigationPanel] Navigation panel color. Provide theme and, when theme is CUSTOM, also provide base_color. * @param [chartColorPalette] Chart color palette. When provided with operation REPLACE, exactly 8 color entries must be specified in colors. * @param [embeddedFooterText] Custom footer text for the embedded application. An empty string clears the footer. * @param [visualizationFonts] Font assignments per visualization area. Provide only the areas to update; omitted areas remain unchanged. * @param [defaultLogo] Binary image for the DEFAULT logo slot (square app icon and favicon; recommended 140x140 px). Accepted formats: PNG, JPG. * @param [wideLogo] Binary image for the WIDE logo slot (horizontal top nav bar logo; recommended 230x45 px). Accepted formats: PNG, JPG. */ updateStyleCustomization(scope: string, operation?: string, resetOptions?: StyleResetOptionsInput, navigationPanel?: NavigationPanelInput, chartColorPalette?: StyleColorPaletteInput, embeddedFooterText?: string, visualizationFonts?: VisualizationFontsInput, defaultLogo?: HttpFile, wideLogo?: HttpFile, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Updates the metadata of an existing custom font in the cluster-level or org-level font library. Only the fields provided in the request are modified; omitted fields remain unchanged. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Identify the font using `font_identifier` (UUID or name). - Set `scope` to `CLUSTER` to target the cluster-level library. Set `scope` to `ORG` (default) to target the authenticated user\'s org library. - To replace the font file itself (WOFF/WOFF2 binary), delete the existing font and re-upload using `uploadStyleFont`. - `color` must be a valid 6-digit hex string (e.g. `#333333`) if provided. * @param fontIdentifier UUID or name of the font to update. * @param updateStyleFontRequest */ updateStyleFontWithHttpInfo(fontIdentifier: string, updateStyleFontRequest: UpdateStyleFontRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Updates the metadata of an existing custom font in the cluster-level or org-level font library. Only the fields provided in the request are modified; omitted fields remain unchanged. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Identify the font using `font_identifier` (UUID or name). - Set `scope` to `CLUSTER` to target the cluster-level library. Set `scope` to `ORG` (default) to target the authenticated user\'s org library. - To replace the font file itself (WOFF/WOFF2 binary), delete the existing font and re-upload using `uploadStyleFont`. - `color` must be a valid 6-digit hex string (e.g. `#333333`) if provided. * @param fontIdentifier UUID or name of the font to update. * @param updateStyleFontRequest */ updateStyleFont(fontIdentifier: string, updateStyleFontRequest: UpdateStyleFontRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Updates the current configuration of the cluster. You must send the configuration data in JSON format. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. * @param updateSystemConfigRequest */ updateSystemConfigWithHttpInfo(updateSystemConfigRequest: UpdateSystemConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Updates the current configuration of the cluster. You must send the configuration data in JSON format. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege is required. * @param updateSystemConfigRequest */ updateSystemConfig(updateSystemConfigRequest: UpdateSystemConfigRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Updates a tag object. You can modify the `name` and `color` properties of a tag object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Name or Id of the tag. * @param updateTagRequest */ updateTagWithHttpInfo(tagIdentifier: string, updateTagRequest: UpdateTagRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates a tag object. You can modify the `name` and `color` properties of a tag object. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `TAGMANAGEMENT` (**Can manage tags**) privilege is required to create, edit, and delete tags. * @param tagIdentifier Name or Id of the tag. * @param updateTagRequest */ updateTag(tagIdentifier: string, updateTagRequest: UpdateTagRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Updates the properties of a user object. You can modify user properties such as username, email, and share notification settings. You can also assign new groups and Orgs, remove the user from a group or Org, reset password, and modify user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user * @param updateUserRequest */ updateUserWithHttpInfo(userIdentifier: string, updateUserRequest: UpdateUserRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates the properties of a user object. You can modify user properties such as username, email, and share notification settings. You can also assign new groups and Orgs, remove the user from a group or Org, reset password, and modify user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user * @param updateUserRequest */ updateUser(userIdentifier: string, updateUserRequest: UpdateUserRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Updates the properties of a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit [privileges](https://developers.thoughtspot.com/docs/?pageid=api-user-management#group-privileges) * Add or remove users * Change sharing visibility settings * Add or remove sub-groups * Assign a default Liveboard or update the existing settings * @param groupIdentifier GUID or name of the group. * @param updateUserGroupRequest */ updateUserGroupWithHttpInfo(groupIdentifier: string, updateUserGroupRequest: UpdateUserGroupRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates the properties of a group object in ThoughtSpot. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required. #### Supported operations This API endpoint lets you perform the following operations in a single API request: * Edit [privileges](https://developers.thoughtspot.com/docs/?pageid=api-user-management#group-privileges) * Add or remove users * Change sharing visibility settings * Add or remove sub-groups * Assign a default Liveboard or update the existing settings * @param groupIdentifier GUID or name of the group. * @param updateUserGroupRequest */ updateUserGroup(groupIdentifier: string, updateUserGroupRequest: UpdateUserGroupRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update a variable\'s name Version: 26.4.0.cl or later Allows updating a variable\'s name in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows updating: * The variable name * @param identifier Unique id, name, or object id of the variable to update. * @param updateVariableRequest */ updateVariableWithHttpInfo(identifier: string, updateVariableRequest: UpdateVariableRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update a variable\'s name Version: 26.4.0.cl or later Allows updating a variable\'s name in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows updating: * The variable name * @param identifier Unique id, name, or object id of the variable to update. * @param updateVariableRequest */ updateVariable(identifier: string, updateVariableRequest: UpdateVariableRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update values for multiple variables Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/{identifier}/update-values](/api/rest/2.0/template/variables/%7Bidentifier%7D/update-values) instead. Allows updating values for multiple variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to variables * Replacing existing values * Deleting values from variables When updating variable values, you need to specify: * The variable identifiers * The values to add/replace/remove for each variable * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constrains for a given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param updateVariableValuesRequest */ updateVariableValuesWithHttpInfo(updateVariableValuesRequest: UpdateVariableValuesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update values for multiple variables Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/{identifier}/update-values](/api/rest/2.0/template/variables/%7Bidentifier%7D/update-values) instead. Allows updating values for multiple variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to variables * Replacing existing values * Deleting values from variables When updating variable values, you need to specify: * The variable identifiers * The values to add/replace/remove for each variable * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constrains for a given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param updateVariableValuesRequest */ updateVariableValues(updateVariableValuesRequest: UpdateVariableValuesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.14.0.cl or later Updates an existing webhook configuration by its unique id or name. With the default `REPLACE` operation, only the provided fields are updated. Use the `RESET` operation with `reset_options` to clear an optional configuration section, such as authentication or the storage destination. A `RESET` request cannot carry any other field. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param webhookIdentifier Unique ID or name of the webhook configuration. * @param updateWebhookConfigurationRequest */ updateWebhookConfigurationWithHttpInfo(webhookIdentifier: string, updateWebhookConfigurationRequest: UpdateWebhookConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Updates an existing webhook configuration by its unique id or name. With the default `REPLACE` operation, only the provided fields are updated. Use the `RESET` operation with `reset_options` to clear an optional configuration section, such as authentication or the storage destination. A `RESET` request cannot carry any other field. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param webhookIdentifier Unique ID or name of the webhook configuration. * @param updateWebhookConfigurationRequest */ updateWebhookConfiguration(webhookIdentifier: string, updateWebhookConfigurationRequest: UpdateWebhookConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Uploads a custom font to the cluster-level or org-level font library. Cluster-level fonts are available as defaults for all orgs. Org-level fonts are only available within that org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Only **WOFF** and **WOFF2** font formats are accepted. TTF and OTF files are rejected with an error. - Set `scope` to `CLUSTER` to upload to the cluster-level library. Set `scope` to `ORG` (default) to upload to the authenticated user\'s org library. - `weight` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `LIGHT`, `BOLD`. - `style` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `ITALIC`, `OBLIQUE`. - `color` defaults to `#000000` (black) if omitted. Provide as a 6-digit hex string (e.g. `#333333`). - The uploaded font can be assigned to visualization areas using the `updateStyleCustomization` endpoint. * @param name Display name for the font (e.g. \\\"Acme Sans\\\"). * @param fileContent Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats are accepted; TTF and OTF are rejected. The file is validated on upload. * @param [scope] Scope of the font library to upload to. CLUSTER uploads to the cluster-level library, making the font available as a default for all orgs. ORG uploads to the authenticated user\\\'s org library. Defaults to ORG if omitted. * @param [weight] Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to NORMAL if omitted. * @param [style] Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults to NORMAL if omitted. * @param [color] Color of the font as a 6-digit hex string (e.g. \\\"#333333\\\"). Defaults to #000000 (black) if omitted. Returns an error if the value is malformed. */ uploadStyleFontWithHttpInfo(name: string, fileContent: HttpFile, scope?: string, weight?: string, style?: string, color?: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.7.0.cl or later Uploads a custom font to the cluster-level or org-level font library. Cluster-level fonts are available as defaults for all orgs. Org-level fonts are only available within that org. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. #### Usage guidelines - Only **WOFF** and **WOFF2** font formats are accepted. TTF and OTF files are rejected with an error. - Set `scope` to `CLUSTER` to upload to the cluster-level library. Set `scope` to `ORG` (default) to upload to the authenticated user\'s org library. - `weight` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `LIGHT`, `BOLD`. - `style` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `ITALIC`, `OBLIQUE`. - `color` defaults to `#000000` (black) if omitted. Provide as a 6-digit hex string (e.g. `#333333`). - The uploaded font can be assigned to visualization areas using the `updateStyleCustomization` endpoint. * @param name Display name for the font (e.g. \\\"Acme Sans\\\"). * @param fileContent Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats are accepted; TTF and OTF are rejected. The file is validated on upload. * @param [scope] Scope of the font library to upload to. CLUSTER uploads to the cluster-level library, making the font available as a default for all orgs. ORG uploads to the authenticated user\\\'s org library. Defaults to ORG if omitted. * @param [weight] Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to NORMAL if omitted. * @param [style] Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults to NORMAL if omitted. * @param [color] Color of the font as a 6-digit hex string (e.g. \\\"#333333\\\"). Defaults to #000000 (black) if omitted. Returns an error if the value is malformed. */ uploadStyleFont(name: string, fileContent: HttpFile, scope?: string, weight?: string, style?: string, color?: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.4.0.cl or later Validates a communication channel configuration to ensure it is properly set up and can receive events. - Use `channel_type` to specify the type of communication channel to validate (e.g., WEBHOOK). - Use `channel_identifier` to provide the unique identifier or name for the communication channel. - Use `event_type` to specify the event type to validate for this channel. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. For webhook channels, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param validateCommunicationChannelRequest */ validateCommunicationChannelWithHttpInfo(validateCommunicationChannelRequest: ValidateCommunicationChannelRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 26.4.0.cl or later Validates a communication channel configuration to ensure it is properly set up and can receive events. - Use `channel_type` to specify the type of communication channel to validate (e.g., WEBHOOK). - Use `channel_identifier` to provide the unique identifier or name for the communication channel. - Use `event_type` to specify the event type to validate for this channel. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. For webhook channels, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param validateCommunicationChannelRequest */ validateCommunicationChannel(validateCommunicationChannelRequest: ValidateCommunicationChannelRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.10.0.cl or later Validates the email customization configuration if any set for the ThoughtSpot system. #### 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. */ validateEmailCustomizationWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.10.0.cl or later Validates the email customization configuration if any set for the ThoughtSpot system. #### 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. */ validateEmailCustomization(_options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Validates the content of your source branch against the objects in your destination environment. Before merging content from your source branch to the destination branch, run this API operation from your destination environment and ensure that the changes from the source branch function in the destination environment. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param validateMergeRequest */ validateMergeWithHttpInfo(validateMergeRequest: ValidateMergeRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Validates the content of your source branch against the objects in your destination environment. Before merging content from your source branch to the destination branch, run this API operation from your destination environment and ensure that the changes from the source branch function in the destination environment. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param validateMergeRequest */ validateMerge(validateMergeRequest: ValidateMergeRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.12.0.cl or later Validates the authentication token specified in the API request. If your token is not valid, [Get a new token](#/http/api-endpoints/authentication/get-full-access-token). * @param validateTokenRequest */ validateTokenWithHttpInfo(validateTokenRequest: ValidateTokenRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.12.0.cl or later Validates the authentication token specified in the API request. If your token is not valid, [Get a new token](#/http/api-endpoints/authentication/get-full-access-token). * @param validateTokenRequest */ validateToken(validateTokenRequest: ValidateTokenRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseUsersApi { private api; constructor(configuration: Configuration, requestFactory?: UsersApiRequestFactory, responseProcessor?: UsersApiResponseProcessor); /** * Version: 9.7.0.cl or later Activates a deactivated user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To activate an inactive user account, the API request body must include the following information: - Username or the GUID of the user account. - Auth token generated for the deactivated user. The auth token is sent in the API response when a user is deactivated. - Password for the user account. * @param activateUserRequest */ activateUserWithHttpInfo(activateUserRequest: ActivateUserRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.7.0.cl or later Activates a deactivated user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To activate an inactive user account, the API request body must include the following information: - Username or the GUID of the user account. - Auth token generated for the deactivated user. The auth token is sent in the API response when a user is deactivated. - Password for the user account. * @param activateUserRequest */ activateUser(activateUserRequest: ActivateUserRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Updates the current password of the user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param changeUserPasswordRequest */ changeUserPasswordWithHttpInfo(changeUserPasswordRequest: ChangeUserPasswordRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates the current password of the user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param changeUserPasswordRequest */ changeUserPassword(changeUserPasswordRequest: ChangeUserPasswordRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Creates a user in ThoughtSpot. The API endpoint allows you to configure several user properties such as email address, account status, share notification preferences, and sharing visibility. You can provision the user to [groups](https://docs.thoughtspot.com/cloud/latest/groups-privileges) and [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview). You can also add Liveboard, Answer, and Worksheet objects to the user’s favorites list, assign a default Liveboard for the user, and set user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param createUserRequest */ createUserWithHttpInfo(createUserRequest: CreateUserRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Creates a user in ThoughtSpot. The API endpoint allows you to configure several user properties such as email address, account status, share notification preferences, and sharing visibility. You can provision the user to [groups](https://docs.thoughtspot.com/cloud/latest/groups-privileges) and [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview). You can also add Liveboard, Answer, and Worksheet objects to the user’s favorites list, assign a default Liveboard for the user, and set user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param createUserRequest */ createUser(createUserRequest: CreateUserRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.7.0.cl or later Deactivates a user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To deactivate a user account, the API request body must include the following information: - Username or the GUID of the user account - Base URL of the ThoughtSpot instance If the API request is successful, ThoughtSpot returns the activation URL in the response. The activation URL is valid for 14 days and can be used to re-activate the account and reset the password of the deactivated account. * @param deactivateUserRequest */ deactivateUserWithHttpInfo(deactivateUserRequest: DeactivateUserRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.7.0.cl or later Deactivates a user account. Requires `ADMINISTRATION` (**Can administer Thoughtspot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. To deactivate a user account, the API request body must include the following information: - Username or the GUID of the user account - Base URL of the ThoughtSpot instance If the API request is successful, ThoughtSpot returns the activation URL in the response. The activation URL is valid for 14 days and can be used to re-activate the account and reset the password of the deactivated account. * @param deactivateUserRequest */ deactivateUser(deactivateUserRequest: DeactivateUserRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Deletes a user from the ThoughtSpot system. If you want to remove a user from a specific Org but not from ThoughtSpot, update the group and Org mapping properties of the user object via a POST API call to the [/api/rest/2.0/users/{user_identifier}/update](#/http/api-endpoints/users/update-user) endpoint. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user */ deleteUserWithHttpInfo(userIdentifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Deletes a user from the ThoughtSpot system. If you want to remove a user from a specific Org but not from ThoughtSpot, update the group and Org mapping properties of the user object via a POST API call to the [/api/rest/2.0/users/{user_identifier}/update](#/http/api-endpoints/users/update-user) endpoint. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user */ deleteUser(userIdentifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Enforces logout on current user sessions. Use this API with caution as it may invalidate active user sessions and force users to re-login. Make sure you specify the usernames or GUIDs. If you pass null values in the API call, all user sessions on your cluster become invalid, and the users are forced to re-login. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param forceLogoutUsersRequest */ forceLogoutUsersWithHttpInfo(forceLogoutUsersRequest: ForceLogoutUsersRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Enforces logout on current user sessions. Use this API with caution as it may invalidate active user sessions and force users to re-login. Make sure you specify the usernames or GUIDs. If you pass null values in the API call, all user sessions on your cluster become invalid, and the users are forced to re-login. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param forceLogoutUsersRequest */ forceLogoutUsers(forceLogoutUsersRequest: ForceLogoutUsersRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Imports user data from external databases into ThoughtSpot. During the user import operation: * If the specified users are not available in ThoughtSpot, the users are created and assigned a default password. Defining a `default_password` in the API request is optional. * If `delete_unspecified_users` is set to `true`, the users not specified in the API request, excluding the `tsadmin`, `guest`, `system` and `su` users, are deleted. * If the specified user objects are already available in ThoughtSpot, the object properties are updated and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param importUsersRequest */ importUsersWithHttpInfo(importUsersRequest: ImportUsersRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Imports user data from external databases into ThoughtSpot. During the user import operation: * If the specified users are not available in ThoughtSpot, the users are created and assigned a default password. Defining a `default_password` in the API request is optional. * If `delete_unspecified_users` is set to `true`, the users not specified in the API request, excluding the `tsadmin`, `guest`, `system` and `su` users, are deleted. * If the specified user objects are already available in ThoughtSpot, the object properties are updated and synchronized as per the input data in the API request. A successful API call returns the object that represents the changes made in the ThoughtSpot system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param importUsersRequest */ importUsers(importUsersRequest: ImportUsersRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Resets the password of a user account. Administrators can reset password on behalf of a user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param resetUserPasswordRequest */ resetUserPasswordWithHttpInfo(resetUserPasswordRequest: ResetUserPasswordRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Resets the password of a user account. Administrators can reset password on behalf of a user. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param resetUserPasswordRequest */ resetUserPassword(resetUserPasswordRequest: ResetUserPasswordRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.0.0.cl or later Gets a list of users available on the ThoughtSpot system. To get details of a specific user, specify the user GUID or name. You can also filter the API response based on groups, Org ID, user visibility, account status, user type, and user preference settings and favorites. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUsersRequest */ searchUsersWithHttpInfo(searchUsersRequest: SearchUsersRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.0.0.cl or later Gets a list of users available on the ThoughtSpot system. To get details of a specific user, specify the user GUID or name. You can also filter the API response based on groups, Org ID, user visibility, account status, user type, and user preference settings and favorites. Available to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchUsersRequest */ searchUsers(searchUsersRequest: SearchUsersRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates the properties of a user object. You can modify user properties such as username, email, and share notification settings. You can also assign new groups and Orgs, remove the user from a group or Org, reset password, and modify user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user * @param updateUserRequest */ updateUserWithHttpInfo(userIdentifier: string, updateUserRequest: UpdateUserRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.0.0.cl or later Updates the properties of a user object. You can modify user properties such as username, email, and share notification settings. You can also assign new groups and Orgs, remove the user from a group or Org, reset password, and modify user preferences. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `USER_ADMINISTRATION` (**Can manage users**) privilege is required. * @param userIdentifier GUID / name of the user * @param updateUserRequest */ updateUser(userIdentifier: string, updateUserRequest: UpdateUserRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseVariableApi { private api; constructor(configuration: Configuration, requestFactory?: VariableApiRequestFactory, responseProcessor?: VariableApiResponseProcessor); /** * Create a variable which can be used for parameterizing metadata objects Version: 26.4.0.cl or later Allows creating a variable which can be used for parameterizing metadata objects in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports the following types of variables: * CONNECTION_PROPERTY - For connection properties * TABLE_MAPPING - For table mappings * CONNECTION_PROPERTY_PER_PRINCIPAL - For connection properties per principal. In order to use this please contact support to enable this. * FORMULA_VARIABLE - For Formula variables, introduced in 10.15.0.cl When creating a variable, you need to specify: * The variable type * A unique name for the variable * Whether the variable contains sensitive values (defaults to false) * The data type of the variable, only specify for formula variables (defaults to null) The operation will fail if: * The user lacks required permissions * The variable name already exists * The variable type is invalid * @param createVariableRequest */ createVariableWithHttpInfo(createVariableRequest: CreateVariableRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Create a variable which can be used for parameterizing metadata objects Version: 26.4.0.cl or later Allows creating a variable which can be used for parameterizing metadata objects in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports the following types of variables: * CONNECTION_PROPERTY - For connection properties * TABLE_MAPPING - For table mappings * CONNECTION_PROPERTY_PER_PRINCIPAL - For connection properties per principal. In order to use this please contact support to enable this. * FORMULA_VARIABLE - For Formula variables, introduced in 10.15.0.cl When creating a variable, you need to specify: * The variable type * A unique name for the variable * Whether the variable contains sensitive values (defaults to false) * The data type of the variable, only specify for formula variables (defaults to null) The operation will fail if: * The user lacks required permissions * The variable name already exists * The variable type is invalid * @param createVariableRequest */ createVariable(createVariableRequest: CreateVariableRequest, _options?: PromiseConfigurationOptions): Promise; /** * Delete a variable Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/delete](/api/rest/2.0/template/variables/delete) instead. Allows deleting a variable from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifier (ID or name) The operation will fail if: * The user lacks required permissions * The variable doesn\'t exist * The variable is being used by other objects * @param identifier Unique id, name, or object id of the variable */ deleteVariableWithHttpInfo(identifier: string, _options?: PromiseConfigurationOptions): Promise>; /** * Delete a variable Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/delete](/api/rest/2.0/template/variables/delete) instead. Allows deleting a variable from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifier (ID or name) The operation will fail if: * The user lacks required permissions * The variable doesn\'t exist * The variable is being used by other objects * @param identifier Unique id, name, or object id of the variable */ deleteVariable(identifier: string, _options?: PromiseConfigurationOptions): Promise; /** * Delete variable(s) Version: 26.4.0.cl or later Allows deleting multiple variables from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifiers (IDs or names) The operation will fail if: * The user lacks required permissions * Any of the variables don\'t exist * Any of the variables are being used by other objects * @param deleteVariablesRequest */ deleteVariablesWithHttpInfo(deleteVariablesRequest: DeleteVariablesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Delete variable(s) Version: 26.4.0.cl or later Allows deleting multiple variables from ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint requires: * The variable identifiers (IDs or names) The operation will fail if: * The user lacks required permissions * Any of the variables don\'t exist * Any of the variables are being used by other objects * @param deleteVariablesRequest */ deleteVariables(deleteVariablesRequest: DeleteVariablesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update values for a variable Version: 26.4.0.cl or later Allows updating values for a specific variable in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to the variable * Replacing existing values * Deleting values from the variable * Resetting all values When updating variable values, you need to specify: * The variable identifier (ID or name) * The values to add/replace/remove * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constraints for the given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param identifier Unique ID or name of the variable * @param putVariableValuesRequest */ putVariableValuesWithHttpInfo(identifier: string, putVariableValuesRequest: PutVariableValuesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update values for a variable Version: 26.4.0.cl or later Allows updating values for a specific variable in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to the variable * Replacing existing values * Deleting values from the variable * Resetting all values When updating variable values, you need to specify: * The variable identifier (ID or name) * The values to add/replace/remove * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constraints for the given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param identifier Unique ID or name of the variable * @param putVariableValuesRequest */ putVariableValues(identifier: string, putVariableValuesRequest: PutVariableValuesRequest, _options?: PromiseConfigurationOptions): Promise; /** * Search variables Version: 26.4.0.cl or later Allows searching for variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports searching variables by: * Variable identifier (ID or name) * Variable type * Name pattern (case-insensitive, supports % for wildcard) The search results can be formatted in three ways: * METADATA - Returns only variable metadata (default) * METADATA_AND_VALUES - Returns variable metadata and values The values can be filtered by scope: * org_identifier * principal_identifier * model_identifier **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchVariablesRequest */ searchVariablesWithHttpInfo(searchVariablesRequest: SearchVariablesRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Search variables Version: 26.4.0.cl or later Allows searching for variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint supports searching variables by: * Variable identifier (ID or name) * Variable type * Name pattern (case-insensitive, supports % for wildcard) The search results can be formatted in three ways: * METADATA - Returns only variable metadata (default) * METADATA_AND_VALUES - Returns variable metadata and values The values can be filtered by scope: * org_identifier * principal_identifier * model_identifier **Warning**: Do not set `record_size` to `-1`. On ThoughtSpot instances with a large number of objects or users, this can lead to slow responses, excessive logging, and out-of-memory failures. Specify an explicit `record_size` and iterate through pages programmatically. * @param searchVariablesRequest */ searchVariables(searchVariablesRequest: SearchVariablesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update a variable\'s name Version: 26.4.0.cl or later Allows updating a variable\'s name in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows updating: * The variable name * @param identifier Unique id, name, or object id of the variable to update. * @param updateVariableRequest */ updateVariableWithHttpInfo(identifier: string, updateVariableRequest: UpdateVariableRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update a variable\'s name Version: 26.4.0.cl or later Allows updating a variable\'s name in ThoughtSpot. Requires ADMINISTRATION role and TENANT scope. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows updating: * The variable name * @param identifier Unique id, name, or object id of the variable to update. * @param updateVariableRequest */ updateVariable(identifier: string, updateVariableRequest: UpdateVariableRequest, _options?: PromiseConfigurationOptions): Promise; /** * Update values for multiple variables Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/{identifier}/update-values](/api/rest/2.0/template/variables/%7Bidentifier%7D/update-values) instead. Allows updating values for multiple variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to variables * Replacing existing values * Deleting values from variables When updating variable values, you need to specify: * The variable identifiers * The values to add/replace/remove for each variable * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constrains for a given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param updateVariableValuesRequest */ updateVariableValuesWithHttpInfo(updateVariableValuesRequest: UpdateVariableValuesRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Update values for multiple variables Version: 10.14.0.cl or later **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/{identifier}/update-values](/api/rest/2.0/template/variables/%7Bidentifier%7D/update-values) instead. Allows updating values for multiple variables in ThoughtSpot. Requires ADMINISTRATION role. The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope. The API endpoint allows: * Adding new values to variables * Replacing existing values * Deleting values from variables When updating variable values, you need to specify: * The variable identifiers * The values to add/replace/remove for each variable * The operation to perform (ADD, REPLACE, REMOVE, RESET) Behaviour based on operation type: * ADD - Adds values to the variable if this is a list type variable, else same as replace. * REPLACE - Replaces all values of a given set of constraints with the current set of values. * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value. * RESET - Removes all constrains for a given variable, scope is ignored Re-sending values that already match the stored values for the targeted scope is a no-op: the request succeeds without modifying any data. This does not apply to the RESET operation or to sensitive variables, which are always written. * @param updateVariableValuesRequest */ updateVariableValues(updateVariableValuesRequest: UpdateVariableValuesRequest, _options?: PromiseConfigurationOptions): Promise; } declare class PromiseVersionControlApi { private api; constructor(configuration: Configuration, requestFactory?: VersionControlApiRequestFactory, responseProcessor?: VersionControlApiResponseProcessor); /** * Version: 9.2.0.cl or later Commits TML files of metadata objects to the Git branch configured on your instance. Requires at least edit access to objects used in the commit operation. Before using this endpoint to push your commits: * Enable Git integration on your instance. * Make sure the Git repository and branch details are configured on your instance. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitBranchRequest */ commitBranchWithHttpInfo(commitBranchRequest: CommitBranchRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Commits TML files of metadata objects to the Git branch configured on your instance. Requires at least edit access to objects used in the commit operation. Before using this endpoint to push your commits: * Enable Git integration on your instance. * Make sure the Git repository and branch details are configured on your instance. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitBranchRequest */ commitBranch(commitBranchRequest: CommitBranchRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Allows you to connect a ThoughtSpot instance to a Git repository. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. You can use this API endpoint to connect your ThoughtSpot development and production environments to the development and production branches of a Git repository. Before using this endpoint to connect your ThoughtSpot instance to a Git repository, check the following prerequisites: * You have a Git repository. If you are using GitHub, make sure you have a valid account and an access token to connect ThoughtSpot to GitHub. For information about generating a token, see [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens). * Your access token has `repo` scope that grants full access to public and private repositories. * Your Git repository has a branch that can be configured as a default branch in ThoughtSpot. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/?pageid=git-integration). **Note**: ThoughtSpot supports only GitHub / itHub Enterprise for CI/CD. * @param createConfigRequest */ createConfigWithHttpInfo(createConfigRequest: CreateConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Allows you to connect a ThoughtSpot instance to a Git repository. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. You can use this API endpoint to connect your ThoughtSpot development and production environments to the development and production branches of a Git repository. Before using this endpoint to connect your ThoughtSpot instance to a Git repository, check the following prerequisites: * You have a Git repository. If you are using GitHub, make sure you have a valid account and an access token to connect ThoughtSpot to GitHub. For information about generating a token, see [GitHub Documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens). * Your access token has `repo` scope that grants full access to public and private repositories. * Your Git repository has a branch that can be configured as a default branch in ThoughtSpot. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/?pageid=git-integration). **Note**: ThoughtSpot supports only GitHub / itHub Enterprise for CI/CD. * @param createConfigRequest */ createConfig(createConfigRequest: CreateConfigRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Deletes Git repository configuration from your ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param deleteConfigRequest */ deleteConfigWithHttpInfo(deleteConfigRequest: DeleteConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Deletes Git repository configuration from your ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param deleteConfigRequest */ deleteConfig(deleteConfigRequest: DeleteConfigRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Allows you to deploy a commit and publish TML content to your ThoughtSpot instance. Requires at least edit access to the objects used in the deploy operation. The API deploys the head of the branch unless a `commit_id` is specified in the API request. If the branch name is not defined in the request, the default branch is considered for deploying commits. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param deployCommitRequest */ deployCommitWithHttpInfo(deployCommitRequest: DeployCommitRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Allows you to deploy a commit and publish TML content to your ThoughtSpot instance. Requires at least edit access to the objects used in the deploy operation. The API deploys the head of the branch unless a `commit_id` is specified in the API request. If the branch name is not defined in the request, the default branch is considered for deploying commits. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param deployCommitRequest */ deployCommit(deployCommitRequest: DeployCommitRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Reverts TML objects to a previous commit specified in the API request. Requires at least edit access to objects. In the API request, specify the `commit_id`. If the branch name is not specified in the request, the API will consider the default branch configured on your instance. By default, the API reverts all objects. If the revert operation fails for one of the objects provided in the commit, the API returns an error and does not revert any object. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitId Commit id to which the object should be reverted * @param revertCommitRequest */ revertCommitWithHttpInfo(commitId: string, revertCommitRequest: RevertCommitRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Reverts TML objects to a previous commit specified in the API request. Requires at least edit access to objects. In the API request, specify the `commit_id`. If the branch name is not specified in the request, the API will consider the default branch configured on your instance. By default, the API reverts all objects. If the revert operation fails for one of the objects provided in the commit, the API returns an error and does not revert any object. For more information, see [Git integration documentation](https://developers.thoughtspot.com/docs/git-integration). * @param commitId Commit id to which the object should be reverted * @param revertCommitRequest */ revertCommit(commitId: string, revertCommitRequest: RevertCommitRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Gets a list of commits for a given metadata object. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param searchCommitsRequest */ searchCommitsWithHttpInfo(searchCommitsRequest: SearchCommitsRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Gets a list of commits for a given metadata object. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param searchCommitsRequest */ searchCommits(searchCommitsRequest: SearchCommitsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Gets Git repository connections configured on the ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param searchConfigRequest */ searchConfigWithHttpInfo(searchConfigRequest: SearchConfigRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Gets Git repository connections configured on the ThoughtSpot instance. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param searchConfigRequest */ searchConfig(searchConfigRequest: SearchConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Updates Git repository configuration settings. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param updateConfigRequest */ updateConfigWithHttpInfo(updateConfigRequest: UpdateConfigRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 9.2.0.cl or later Updates Git repository configuration settings. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_SETUP_VERSION_CONTROL` (**Can set up version control**) privilege. * @param updateConfigRequest */ updateConfig(updateConfigRequest: UpdateConfigRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 9.2.0.cl or later Validates the content of your source branch against the objects in your destination environment. Before merging content from your source branch to the destination branch, run this API operation from your destination environment and ensure that the changes from the source branch function in the destination environment. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param validateMergeRequest */ validateMergeWithHttpInfo(validateMergeRequest: ValidateMergeRequest, _options?: PromiseConfigurationOptions): Promise>>; /** * Version: 9.2.0.cl or later Validates the content of your source branch against the objects in your destination environment. Before merging content from your source branch to the destination branch, run this API operation from your destination environment and ensure that the changes from the source branch function in the destination environment. Requires `DATAMANAGEMENT` (**Can manage data**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance on your instance, the `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` (**Can manage data models**) privilege and edit access to the metadata objects. * @param validateMergeRequest */ validateMerge(validateMergeRequest: ValidateMergeRequest, _options?: PromiseConfigurationOptions): Promise>; } declare class PromiseWebhooksApi { private api; constructor(configuration: Configuration, requestFactory?: WebhooksApiRequestFactory, responseProcessor?: WebhooksApiResponseProcessor); /** * Version: 10.14.0.cl or later Creates a new webhook configuration to receive notifications for specified events. The webhook will be triggered when the configured events occur in the system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param createWebhookConfigurationRequest */ createWebhookConfigurationWithHttpInfo(createWebhookConfigurationRequest: CreateWebhookConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Creates a new webhook configuration to receive notifications for specified events. The webhook will be triggered when the configured events occur in the system. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param createWebhookConfigurationRequest */ createWebhookConfiguration(createWebhookConfigurationRequest: CreateWebhookConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.14.0.cl or later Deletes one or more webhook configurations by their unique id or name. Returns status of each deletion operation, including successfully deleted webhooks and any failures with error details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param deleteWebhookConfigurationsRequest */ deleteWebhookConfigurationsWithHttpInfo(deleteWebhookConfigurationsRequest: DeleteWebhookConfigurationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Deletes one or more webhook configurations by their unique id or name. Returns status of each deletion operation, including successfully deleted webhooks and any failures with error details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param deleteWebhookConfigurationsRequest */ deleteWebhookConfigurations(deleteWebhookConfigurationsRequest: DeleteWebhookConfigurationsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 26.7.0.cl or later Returns cluster-level storage setup information for configuring customer-managed storage. Use this endpoint to obtain the IAM identity details required before configuring a webhook storage destination. For S3 destinations, returns the platform AWS account ID and IAM trust policy template. For GCS destinations, returns the platform GCP service account email and the IAM role to grant for service account impersonation. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. */ getWebhookStorageConfigWithHttpInfo(_options?: PromiseConfigurationOptions): Promise>>; /** * Version: 26.7.0.cl or later Returns cluster-level storage setup information for configuring customer-managed storage. Use this endpoint to obtain the IAM identity details required before configuring a webhook storage destination. For S3 destinations, returns the platform AWS account ID and IAM trust policy template. For GCS destinations, returns the platform GCP service account email and the IAM role to grant for service account impersonation. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. */ getWebhookStorageConfig(_options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Searches for webhook configurations based on various criteria such as Org, webhook identifier, event type, with support for pagination and sorting. Returns matching webhook configurations with their complete details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param searchWebhookConfigurationsRequest */ searchWebhookConfigurationsWithHttpInfo(searchWebhookConfigurationsRequest: SearchWebhookConfigurationsRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Searches for webhook configurations based on various criteria such as Org, webhook identifier, event type, with support for pagination and sorting. Returns matching webhook configurations with their complete details. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param searchWebhookConfigurationsRequest */ searchWebhookConfigurations(searchWebhookConfigurationsRequest: SearchWebhookConfigurationsRequest, _options?: PromiseConfigurationOptions): Promise; /** * Version: 10.14.0.cl or later Updates an existing webhook configuration by its unique id or name. With the default `REPLACE` operation, only the provided fields are updated. Use the `RESET` operation with `reset_options` to clear an optional configuration section, such as authentication or the storage destination. A `RESET` request cannot carry any other field. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param webhookIdentifier Unique ID or name of the webhook configuration. * @param updateWebhookConfigurationRequest */ updateWebhookConfigurationWithHttpInfo(webhookIdentifier: string, updateWebhookConfigurationRequest: UpdateWebhookConfigurationRequest, _options?: PromiseConfigurationOptions): Promise>; /** * Version: 10.14.0.cl or later Updates an existing webhook configuration by its unique id or name. With the default `REPLACE` operation, only the provided fields are updated. Use the `RESET` operation with `reset_options` to clear an optional configuration section, such as authentication or the storage destination. A `RESET` request cannot carry any other field. Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `CAN_MANAGE_WEBHOOKS` (**Can manage webhooks**) privilege are also authorized to perform this action. * @param webhookIdentifier Unique ID or name of the webhook configuration. * @param updateWebhookConfigurationRequest */ updateWebhookConfiguration(webhookIdentifier: string, updateWebhookConfigurationRequest: UpdateWebhookConfigurationRequest, _options?: PromiseConfigurationOptions): Promise; } /** * Options for additional configuration settings */ interface ConfigurationOptions { /** * Additional headers to be included in every request * @example * ```typescript * { * additionalHeaders: { * "Accept-Language": "en-US", * } * } * ``` */ additionalHeaders?: Record; } /** * creates a bearer authentication configuration using params or a token provider * @param thoughtSpotHost thoughtSpotHost URL * @param paramOrTokenProvider either a GetFullAccessTokenRequest or a TokenProvider , * Pass a GetFullAccessTokenRequest which contains the object body required to get a full access token , or * function which returns a promise of a string which is the full access token * @param options - Optional configuration for custom headers and other settings * @returns Configuration object ready for authenticated API calls * @example * ```typescript * const configWithTokenProvider = createBearerAuthenticationConfig( * "CLUSTER_SERVER_URL", * YOUR_TOKEN_PROVIDER, * { * additionalHeaders: { * "Accept-Language": "en-US", * } * } * ); */ declare const createBearerAuthenticationConfig: (thoughtSpotHost: string, paramOrTokenProvider: GetFullAccessTokenRequest | (() => Promise), options?: ConfigurationOptions) => Configuration; /** * creates a basic configuration using params which does not require authentication * @param thoughtSpotHost : the base url of the server * @param options - Optional configuration for additional headers and other settings * @returns Basic client configuration for unauthenticated API calls */ declare const createBasicConfig: (thoughtSpotHost: string, options?: ConfigurationOptions) => Configuration; type ConfigureAuthSettingsRequestClusterPreferences = AuthClusterPreferencesInput; type ConfigureSecuritySettingsRequestClusterPreferences = SecuritySettingsClusterPreferencesInput; type CreateAgentConversationRequestConversationSettings = ConversationSettingsInput; type CreateAgentConversationRequestMetadataContext = ContextPayloadV2Input; type CreateCalendarRequestTableReference = ExternalTableInput; type CreateConnectionConfigurationRequestPolicyProcessOptions = PolicyProcessOptionsInput; type CreateScheduleRequestFrequency = FrequencyInput; type CreateScheduleRequestLiveboardOptions = LiveboardOptionsInput; type CreateScheduleRequestPdfOptions = SchedulesPdfOptionsInput; type CreateScheduleRequestRecipientDetails = RecipientDetailsInput; type CreateWebhookConfigurationRequestAuthentication = WebhookAuthenticationInput; type CreateWebhookConfigurationRequestSignatureVerification = WebhookSignatureVerificationInput; type CreateWebhookConfigurationRequestStorageDestination = StorageDestinationInput; type ExportAnswerReportRequestPngOptions = AnswerPngOptionsInput; type ExportAnswerReportRequestRegionalSettings = RegionalSettingsInput; type ExportLiveboardReportRequestPdfOptions = PdfOptionsInput; type ExportLiveboardReportRequestPngOptions = PngOptionsInput; type ExportLiveboardReportRequestRegionalSettings = RegionalSettingsInput; type GetCustomAccessTokenRequestScope = TokenScopeInput; type GetFullAccessTokenRequestScope = TokenScopeInput; type GetObjectAccessTokenRequestScope = TokenScopeInput; type GetRelevantQuestionsRequestAiContext = AIContext; type GetRelevantQuestionsRequestMetadataContext = MetadataContext; type SearchCalendarsRequestSortOptions = SortOption; type SearchCollectionsRequestSortOptions = SortOptions; type SearchConnectionRequestSortOptions = SortOptionInput; type SearchMetadataRequestFavoriteObjectOptions = FavoriteObjectOptionsInput; type SearchMetadataRequestLiveboardDetails = LiveboardDetailsInput; type SearchMetadataRequestSortOptions = MetadataSearchSortOptions; type SearchSchedulesRequestHistoryRunsOptions = ScheduleHistoryRunsOptionsInput; type SearchSchedulesRequestSortOptions = SortingOptions; type SearchSemanticIntegrationsRequestSortOptions = SemanticIntegrationSortOptions; type SearchUserGroupsRequestSortOptions = SortOptions; type SearchUsersRequestSortOptions = SortOptions; type SearchWebhookConfigurationsRequestSortOptions = WebhookSortOptionsInput; type UpdateCalendarRequestTableReference = ExternalTableInput; type UpdateConnectionConfigurationRequestPolicyProcessOptions = PolicyProcessOptionsInput; type UpdateScheduleRequestFrequency = FrequencyInput; type UpdateScheduleRequestLiveboardOptions = LiveboardOptionsInput; type UpdateScheduleRequestPdfOptions = SchedulesPdfOptionsInput; type UpdateScheduleRequestRecipientDetails = RecipientDetailsInput; type UpdateWebhookConfigurationRequestAuthentication = WebhookAuthenticationInput; type UpdateWebhookConfigurationRequestSignatureVerification = WebhookSignatureVerificationInput; type UpdateWebhookConfigurationRequestStorageDestination = StorageDestinationInput; export { ACState, PromiseAIApi as AIApi, AIContext, APIKey, APIKeyInput, AccessToken, AccessTokenScope, AccessTokenScopeOrgScopeEnum, ActionConfig, ActionConfigInput, ActionConfigInputCreate, ActionConfigInputCreatePositionEnum, ActionConfigInputPositionEnum, ActionDetails, ActionDetailsInput, ActionDetailsInputCreate, ActivateUserRequest, AdvancedChartFontAssignmentInput, AdvancedChartFontAssignmentInputVisualizationAreaEnum, AdvancedChartVisualizationFontRecord, AdvancedChartVisualizationFontRecordVisualizationAreaEnum, AgentConversation, AgentConversationHistoryResponse, AgentConversationList, AgentInstructions, Analyst, AnalystDeleteResponse, AnalystItem, AnalystItemSource, AnalystItemSourceTypeEnum, AnalystItemStarterPrompt, AnalystMcpConnector, AnalystSearchResponse, AnalystSource, AnalystSourceInput, AnalystSourceInputTypeEnum, AnalystSourceTypeEnum, AnalystStarterPrompt, AnalystUser, AnswerContent, AnswerDataResponse, AnswerDetails, AnswerDetailsVisualizationTypeEnum, AnswerPngOptionsInput, AnswerResponseItem, ApiException, ApiKeyConfiguration, AssignChangeAuthorRequest, AssignTagRequest, AssociateMetadataInput, AssociateMetadataInputCreate, AssociateMetadataInputCreateTypeEnum, AssociateMetadataInputTypeEnum, AuthClusterPreferences, AuthClusterPreferencesAuthStatusEnum, AuthClusterPreferencesInput, AuthClusterPreferencesInputAuthStatusEnum, AuthMethods, AuthMethodsConfiguration, AuthOrgInfo, AuthOrgPreference, AuthOrgPreferenceAuthStatusEnum, AuthOrgPreferenceInput, AuthOrgPreferenceInputAuthStatusEnum, AuthSettingsAccessToken, Authentication, PromiseAuthenticationApi as AuthenticationApi, AuthenticationInput, Author, AuthorMetadataTypeInput, AuthorMetadataTypeInputTypeEnum, AuthorType, AwsS3Config, AwsS3ConfigInput, BaseServerConfiguration, BasicAuth, BasicAuthInput, BearerAuthAuthentication, CALLBACK, CALLBACKInput, CALLBACKInputMandatory, CalendarResponse, ChangeUserPasswordRequest, ChannelHistoryEventInfo, ChannelHistoryEventInfoTypeEnum, ChannelHistoryEventInput, ChannelHistoryEventInputTypeEnum, ChannelHistoryJob, ChannelHistoryJobStatusEnum, ChannelValidationAwsS3Info, ChannelValidationDetail, ChannelValidationDetailStatusEnum, ChannelValidationDetailValidationStepEnum, ChannelValidationGcpGcsInfo, ChartFontAssignmentInput, ChartFontAssignmentInputVisualizationAreaEnum, ChartVisualizationFontRecord, ChartVisualizationFontRecordVisualizationAreaEnum, ClusterNonEmbedAccess, ClusterNonEmbedAccessInput, CodeExecutionFileMetadata, Collection, CollectionDeleteResponse, CollectionDeleteTypeIdentifiers, CollectionEntityIdentifier, CollectionMetadataInput, CollectionMetadataInputTypeEnum, CollectionMetadataItem, CollectionSearchResponse, PromiseCollectionsApi as CollectionsApi, Column, ColumnSecurityRule, ColumnSecurityRuleColumn, ColumnSecurityRuleGroup, ColumnSecurityRuleGroupOperation, ColumnSecurityRuleGroupOperationOperationEnum, ColumnSecurityRuleResponse, ColumnSecurityRuleSourceTable, ColumnSecurityRuleTableInput, ColumnSecurityRuleUpdate, CommitBranchRequest, CommitFileType, CommitHistoryResponse, CommitResponse, CommiterType, CommunicationChannelPreferencesResponse, CommunicationChannelValidateResponse, CommunicationChannelValidateResponseChannelTypeEnum, CommunicationChannelValidateResponseEventTypeEnum, CommunicationChannelValidateResponseResultCodeEnum, Configuration, ConfigureAuthSettingsRequest, ConfigureAuthSettingsRequestAuthTypeEnum, ConfigureAuthSettingsRequestClusterPreferences, ConfigureCommunicationChannelPreferencesRequest, ConfigureSecuritySettingsRequest, ConfigureSecuritySettingsRequestClusterPreferences, ConnectionConfigurationResponse, ConnectionConfigurationResponseDataWarehouseTypeEnum, ConnectionConfigurationResponsePolicyProcessesEnum, ConnectionConfigurationResponsePolicyTypeEnum, ConnectionConfigurationSearchRequest, ConnectionConfigurationSearchRequestPolicyTypeEnum, PromiseConnectionConfigurationsApi as ConnectionConfigurationsApi, ConnectionInput, PromiseConnectionsApi as ConnectionsApi, ContextPayloadV2Input, ContextPayloadV2InputTypeEnum, Conversation, ConversationMessage, ConversationMessageResponse, ConversationPrincipalInfo, ConversationPrincipalInfoPermissionEnum, ConversationPrincipalInfoTypeEnum, ConversationSettingsInput, ConversationShareStatusResponse, ConvertWorksheetToModelRequest, CopyObjectRequest, CopyObjectRequestTypeEnum, CreateAgentConversationRequest, CreateAgentConversationRequestConversationSettings, CreateAgentConversationRequestMetadataContext, CreateAnalystRequest, CreateCalendarRequest, CreateCalendarRequestCalendarTypeEnum, CreateCalendarRequestCreationMethodEnum, CreateCalendarRequestMonthOffsetEnum, CreateCalendarRequestStartDayOfWeekEnum, CreateCalendarRequestTableReference, CreateCollectionRequest, CreateConfigRequest, CreateConnectionConfigurationRequest, CreateConnectionConfigurationRequestAuthenticationTypeEnum, CreateConnectionConfigurationRequestPolicyProcessOptions, CreateConnectionConfigurationRequestPolicyProcessesEnum, CreateConnectionConfigurationRequestPolicyTypeEnum, CreateConnectionRequest, CreateConnectionRequestDataWarehouseTypeEnum, CreateConnectionResponse, CreateConnectionResponseDataWarehouseTypeEnum, CreateConversationRequest, CreateCustomActionRequest, CreateEmailCustomizationRequest, CreateEmailCustomizationResponse, CreateOrgRequest, CreateRoleRequest, CreateRoleRequestPrivilegesEnum, CreateScheduleRequest, CreateScheduleRequestFileFormatEnum, CreateScheduleRequestFrequency, CreateScheduleRequestLiveboardOptions, CreateScheduleRequestMetadataTypeEnum, CreateScheduleRequestPdfOptions, CreateScheduleRequestRecipientDetails, CreateScheduleRequestTimeZoneEnum, CreateSemanticIntegrationRequest, CreateSemanticIntegrationRequestTypeEnum, CreateTagRequest, CreateUserGroupRequest, CreateUserGroupRequestPrivilegesEnum, CreateUserGroupRequestTypeEnum, CreateUserGroupRequestVisibilityEnum, CreateUserRequest, CreateUserRequestAccountStatusEnum, CreateUserRequestAccountTypeEnum, CreateUserRequestPreferredLocaleEnum, CreateUserRequestVisibilityEnum, CreateVariableRequest, CreateVariableRequestDataTypeEnum, CreateVariableRequestTypeEnum, CreateWebhookConfigurationRequest, CreateWebhookConfigurationRequestAuthentication, CreateWebhookConfigurationRequestEventsEnum, CreateWebhookConfigurationRequestSignatureVerification, CreateWebhookConfigurationRequestStatusEnum, CreateWebhookConfigurationRequestStorageDestination, CronExpression, CronExpressionInput, CspSettings, CspSettingsInput, PromiseCustomActionApi as CustomActionApi, CustomActionMetadataTypeInput, CustomActionMetadataTypeInputTypeEnum, PromiseCustomCalendarsApi as CustomCalendarsApi, PromiseDBTApi as DBTApi, PromiseDataApi as DataApi, DataSource, DataSourceContextInput, DataSourceEntry, DataSourceHeader, DataSourceInfo, DataSourcePopularity, DataSourceUserUsage, DataWarehouseObjectInput, DataWarehouseObjects, Database, DbtSearchResponse, DeactivateUserRequest, DefaultActionConfig, DefaultActionConfigInput, DefaultActionConfigInputCreate, DefaultActionConfigSearchInput, DeleteCollectionRequest, DeleteConfigRequest, DeleteConnectionConfigurationRequest, DeleteConnectionRequest, DeleteManualTranslationsRequest, DeleteManualTranslationsRequestScopeEnum, DeleteMetadataRequest, DeleteMetadataTypeInput, DeleteMetadataTypeInputTypeEnum, DeleteOrgEmailCustomizationRequest, DeleteStyleFontsRequest, DeleteStyleFontsRequestScopeEnum, DeleteVariablesRequest, DeleteWebhookConfigurationsRequest, DeployCommitRequest, DeployCommitRequestDeployPolicyEnum, DeployCommitRequestDeployTypeEnum, DeployResponse, PromiseEmailCustomizationApi as EmailCustomizationApi, EntityHeader, ErrorResponse, EurekaDataSourceSuggestionResponse, EurekaDecomposeQueryResponse, EurekaGetNLInstructionsResponse, EurekaGetRelevantQuestionsResponse, EurekaLLMDecomposeQueryResponse, EurekaLLMSuggestedQuery, EurekaRelevantQuestion, EurekaSetNLInstructionsResponse, EventChannelConfig, EventChannelConfigChannelsEnum, EventChannelConfigEventTypeEnum, EventChannelConfigInput, EventChannelConfigInputChannelsEnum, EventChannelConfigInputEventTypeEnum, ExcludeMetadataListItemInput, ExcludeMetadataListItemInputTypeEnum, ExportAnswerReportRequest, ExportAnswerReportRequestFileFormatEnum, ExportAnswerReportRequestPngOptions, ExportAnswerReportRequestRegionalSettings, ExportAnswerReportRequestTypeEnum, ExportLiveboardReportRequest, ExportLiveboardReportRequestFileFormatEnum, ExportLiveboardReportRequestPdfOptions, ExportLiveboardReportRequestPngOptions, ExportLiveboardReportRequestRegionalSettings, ExportManualTranslationsRequest, ExportManualTranslationsRequestScopeEnum, ExportMemoryRequest, ExportMemoryResponse, ExportMetadataTMLBatchedRequest, ExportMetadataTMLBatchedRequestEdocFormatEnum, ExportMetadataTMLBatchedRequestMetadataTypeEnum, ExportMetadataTMLRequest, ExportMetadataTMLRequestEdocFormatEnum, ExportMetadataTMLRequestExportSchemaVersionEnum, ExportMetadataTypeInput, ExportMetadataTypeInputTypeEnum, ExportOptions, ExportStyleLogosRequest, ExportStyleLogosRequestScopeEnum, ExternalTableInput, FavoriteMetadataInput, FavoriteMetadataInputTypeEnum, FavoriteMetadataItem, FavoriteMetadataItemTypeEnum, FavoriteObjectOptionsInput, FeatureAssignmentResponse, FeatureDetail, FeatureGroup, PromiseFeatureManagementApi as FeatureManagementApi, FeatureOrgInfo, FeatureValueResponse, FetchAnswerDataRequest, FetchAnswerDataRequestDataFormatEnum, FetchAnswerSqlQueryRequest, FetchAsyncImportTaskStatusRequest, FetchAsyncImportTaskStatusRequestTaskStatusEnum, FetchColumnSecurityRulesRequest, FetchConnectionDiffStatusResponse, FetchLiveboardDataRequest, FetchLiveboardDataRequestDataFormatEnum, FetchLiveboardSqlQueryRequest, FetchLogsRequest, FetchLogsRequestLogTypeEnum, FetchObjectPrivilegesRequest, FetchPermissionsOfPrincipalsRequest, FetchPermissionsOfPrincipalsRequestDefaultMetadataTypeEnum, FetchPermissionsOnMetadataRequest, FileReference, FileResponseItem, FilterRules, FilterRulesOperatorEnum, ForceLogoutUsersRequest, Frequency, FrequencyInput, GcpGcsConfig, GcpGcsConfigInput, GenerateCSVRequest, GenerateCSVRequestCalendarTypeEnum, GenerateCSVRequestMonthOffsetEnum, GenerateCSVRequestStartDayOfWeekEnum, GenericInfo, GetAsyncImportStatusResponse, GetCustomAccessTokenRequest, GetCustomAccessTokenRequestPersistOptionEnum, GetCustomAccessTokenRequestScope, GetDataSourceSuggestionsRequest, GetFullAccessTokenRequest, GetFullAccessTokenRequestScope, GetNLInstructionsRequest, GetObjectAccessTokenRequest, GetObjectAccessTokenRequestScope, GetRelevantQuestionsRequest, GetRelevantQuestionsRequestAiContext, GetRelevantQuestionsRequestMetadataContext, GetTokenResponse, GroupInfo, GroupObject, PromiseGroupsApi as GroupsApi, GroupsImportListInput, GroupsImportListInputPrivilegesEnum, GroupsImportListInputTypeEnum, GroupsImportListInputVisibilityEnum, HeaderAttributeInput, HeaderUpdateInput, HeaderUpdateInputTypeEnum, HttpBasicConfiguration, HttpBearerConfiguration, HttpException, HttpFile, HttpInfo, HttpLibrary, HttpMethod, HttpSignatureConfiguration, ImportDiagnostic, ImportDiagnosticSubStatusEnum, ImportEPackAsyncTaskStatus, ImportEPackAsyncTaskStatusImportPolicyEnum, ImportEPackAsyncTaskStatusTaskStatusEnum, ImportFailure, ImportFailureReasonEnum, ImportMemoryRequest, ImportMemoryResponse, ImportMemoryResponseStatusEnum, ImportMetadataTMLAsyncRequest, ImportMetadataTMLAsyncRequestImportPolicyEnum, ImportMetadataTMLRequest, ImportMetadataTMLRequestImportPolicyEnum, ImportSummary, ImportSummaryMemoryTypeEnum, ImportTargetSource, ImportTargetSourceTypeEnum, ImportUser, ImportUserAccountStatusEnum, ImportUserAccountTypeEnum, ImportUserGroupsRequest, ImportUserGroupsResponse, ImportUserPreferredLocaleEnum, ImportUserType, ImportUserVisibilityEnum, ImportUsersRequest, ImportUsersResponse, InputColumnSchemaInput, InputColumnSchemaInputTypeEnum, InputEurekaNLSRequest, InputTableDefinitionInput, InputTableResponse, InputTableUpdateResponse, IsomorphicFetchHttpLibrary, JWTMetadataObject, JWTMetadataObjectTypeEnum, JWTParameter, JWTUserOptions, JWTUserOptionsFull, JobRecipient, JobRecipientTypeEnum, PromiseJobsApi as JobsApi, LiveboardContent, LiveboardDataResponse, LiveboardDetailsInput, LiveboardOptions, LiveboardOptionsInput, LoadAnswerResponse, PromiseLogApi as LogApi, LogResponse, LoginRequest, ManageObjectPrivilegeRequest, ManageObjectPrivilegeRequestMetadataTypeEnum, ManageObjectPrivilegeRequestObjectPrivilegeTypesEnum, ManageObjectPrivilegeRequestOperationEnum, PromiseManualTranslationApi as ManualTranslationApi, MemorySources, MemorySourcesTypeEnum, PromiseMetadataApi as MetadataApi, MetadataAssociationItem, MetadataContext, MetadataInput, MetadataInputTypeEnum, MetadataListItemInput, MetadataListItemInputSubtypesEnum, MetadataListItemInputTypeEnum, MetadataObject, MetadataObjectTypeEnum, MetadataResponse, MetadataResponseTypeEnum, MetadataSearchResponse, MetadataSearchResponseMetadataTypeEnum, MetadataSearchSortOptions, MetadataSearchSortOptionsFieldNameEnum, MetadataSearchSortOptionsOrderEnum, PromiseMiddleware as Middleware, ModelTableList, NLInstructionsInfo, NLInstructionsInfoInput, NLInstructionsInfoInputScopeEnum, NLInstructionsInfoScopeEnum, NavigationPanelInput, NavigationPanelInputThemeEnum, OAuth2Configuration, ObjectIDAndName, ObjectPrivilegesMetadataInput, ObjectPrivilegesMetadataInputTypeEnum, ObjectPrivilegesOfMetadataResponse, Org, OrgChannelConfigInput, OrgChannelConfigInputOperationEnum, OrgChannelConfigInputResetEventsEnum, OrgChannelConfigResponse, OrgDetails, OrgInfo, OrgNonEmbedAccess, OrgNonEmbedAccessInput, OrgPreferenceSearchCriteriaInput, OrgPreferenceSearchCriteriaInputEventTypesEnum, OrgResponse, OrgResponseStatusEnum, OrgResponseVisibilityEnum, OrgType, PromiseOrgsApi as OrgsApi, ParameterValues, ParameterizeMetadataFieldsRequest, ParameterizeMetadataFieldsRequestFieldTypeEnum, ParameterizeMetadataFieldsRequestMetadataTypeEnum, ParameterizeMetadataRequest, ParameterizeMetadataRequestFieldTypeEnum, ParameterizeMetadataRequestMetadataTypeEnum, ParametersListItem, ParametersListItemInput, PdfOptions, PdfOptionsInput, PdfOptionsInputPageOrientationEnum, PdfOptionsInputPageSizeEnum, PdfOptionsPageSizeEnum, PermissionInput, PermissionInputShareModeEnum, PermissionOfMetadataResponse, PermissionOfPrincipalsResponse, PermissionsMetadataTypeInput, PermissionsMetadataTypeInputTypeEnum, PngOptionsInput, PolicyProcessOptions, PolicyProcessOptionsInput, PrincipalRefInput, PrincipalRefInputPrincipalTypeEnum, PrincipalsInput, PrincipalsInputTypeEnum, PrincipalsListItem, PrincipalsListItemInput, PromiseHttpLibrary, PublicFileInfo, PublishMetadataListItem, PublishMetadataListItemTypeEnum, PublishMetadataRequest, PutVariableValuesRequest, PutVariableValuesRequestOperationEnum, QueryGetDecomposedQueryRequest, RecipientDetails, RecipientDetailsInput, RegionalSettingsInput, RegionalSettingsInputCurrencyFormatEnum, RegionalSettingsInputDateFormatLocaleEnum, RegionalSettingsInputNumberFormatLocaleEnum, RegionalSettingsInputUserLocaleEnum, RepoConfigObject, PromiseReportsApi as ReportsApi, RequestBody, RequestContext, RequiredError, ResetUserPasswordRequest, ResourceResponseItem, ResourceResponseItemTransportTypeEnum, ResponseActivationURL, ResponseBody, ResponseContext, ResponseCopyObject, ResponseCustomAction, ResponseFailedEntities, ResponseFailedEntity, ResponseIncompleteEntities, ResponseIncompleteEntity, ResponseMessage, ResponseMessageMessageTypeEnum, ResponseMessageVisualizationTypeEnum, ResponsePostUpgradeFailedEntities, ResponsePostUpgradeFailedEntity, ResponseSchedule, ResponseScheduleRun, ResponseSuccessfulEntities, ResponseSuccessfulEntity, ResponseWorksheetToModelConversion, RevertCommitRequest, RevertCommitRequestRevertPolicyEnum, RevertResponse, RevertedMetadata, RevokeRefreshTokensRequest, RevokeRefreshTokensResponse, RevokeTokenRequest, RiseGQLArgWrapper, RiseSetter, Role, RoleResponse, RoleResponsePermissionEnum, RoleResponsePrivilegesEnum, PromiseRolesApi as RolesApi, RuntimeFilter, RuntimeFilters, RuntimeFiltersOperatorEnum, RuntimeParamOverride, RuntimeParameters, RuntimeSort, RuntimeSorts, RuntimeSortsOrderEnum, ScheduleHistoryRunsOptionsInput, PromiseSchedulesApi as SchedulesApi, SchedulesPdfOptionsInput, SchedulesPdfOptionsInputPageSizeEnum, SchemaObject, Scope, ScopeOrgScopeEnum, ScriptSrcUrls, ScriptSrcUrlsInput, SearchAnalystsRequest, SearchAnalystsRequestTypeEnum, SearchAuthSettingsRequest, SearchAuthSettingsRequestAuthTypeEnum, SearchAuthSettingsRequestScopeEnum, SearchAuthSettingsResponse, SearchAuthSettingsResponseAuthTypeEnum, SearchCalendarsRequest, SearchCalendarsRequestSortOptions, SearchChannelHistoryRequest, SearchChannelHistoryRequestChannelStatusEnum, SearchChannelHistoryRequestChannelTypeEnum, SearchChannelHistoryResponse, SearchCollectionsRequest, SearchCollectionsRequestSortOptions, SearchCommitsRequest, SearchCommitsRequestMetadataTypeEnum, SearchCommunicationChannelPreferencesRequest, SearchCommunicationChannelPreferencesRequestClusterPreferencesEnum, SearchConfigRequest, SearchConnectionRequest, SearchConnectionRequestAuthenticationTypeEnum, SearchConnectionRequestDataWarehouseObjectTypeEnum, SearchConnectionRequestDataWarehouseTypesEnum, SearchConnectionRequestSortOptions, SearchConnectionResponse, SearchConnectionResponseDataWarehouseTypeEnum, SearchCustomActionsRequest, SearchCustomActionsRequestTypeEnum, SearchDataRequest, SearchDataRequestDataFormatEnum, SearchDataResponse, SearchDatasetsResponseItem, SearchEmailCustomizationRequest, SearchFeaturesRequest, SearchFeaturesRequestCategoryEnum, SearchFeaturesRequestScopeEnum, SearchMetadataRequest, SearchMetadataRequestDependentObjectVersionEnum, SearchMetadataRequestFavoriteObjectOptions, SearchMetadataRequestLiveboardDetails, SearchMetadataRequestLiveboardResponseVersionEnum, SearchMetadataRequestSortOptions, SearchOrgsRequest, SearchOrgsRequestStatusEnum, SearchOrgsRequestVisibilityEnum, SearchRoleResponse, SearchRoleResponsePermissionEnum, SearchRoleResponsePrivilegesEnum, SearchRolesRequest, SearchRolesRequestPermissionsEnum, SearchRolesRequestPrivilegesEnum, SearchSchedulesRequest, SearchSchedulesRequestHistoryRunsOptions, SearchSchedulesRequestSortOptions, SearchSecuritySettingsRequest, SearchSecuritySettingsRequestScopeEnum, SearchSemanticIntegrationsRequest, SearchSemanticIntegrationsRequestSortOptions, SearchStyleCustomizationsRequest, SearchStyleCustomizationsRequestScopeEnum, SearchStyleFontsRequest, SearchStyleFontsRequestScopeEnum, SearchTagsRequest, SearchUserGroupsRequest, SearchUserGroupsRequestPrivilegesEnum, SearchUserGroupsRequestSortOptions, SearchUserGroupsRequestTypeEnum, SearchUserGroupsRequestVisibilityEnum, SearchUsersRequest, SearchUsersRequestAccountStatusEnum, SearchUsersRequestAccountTypeEnum, SearchUsersRequestPrivilegesEnum, SearchUsersRequestSortOptions, SearchUsersRequestVisibilityEnum, SearchVariablesRequest, SearchVariablesRequestResponseContentEnum, SearchWebhookConfigurationsRequest, SearchWebhookConfigurationsRequestEventTypeEnum, SearchWebhookConfigurationsRequestSortOptions, SearchWebhookConfigurationsRequestStatusEnum, PromiseSecurityApi as SecurityApi, SecurityAuthentication, SecuritySettingsClusterPreferences, SecuritySettingsClusterPreferencesInput, SecuritySettingsClusterPreferencesTrustedAuthStatusEnum, SecuritySettingsOrgDetails, SecuritySettingsOrgPreferences, SecuritySettingsOrgPreferencesInput, SecuritySettingsOrgPreferencesTrustedAuthStatusEnum, SecuritySettingsResponse, SelfDecodingBody, SemanticIntegrationFormulaReport, SemanticIntegrationFormulaReportChangeStatusEnum, SemanticIntegrationFormulaReportImportStatusEnum, SemanticIntegrationReport, SemanticIntegrationReportSummary, SemanticIntegrationResponse, SemanticIntegrationSearchResponse, SemanticIntegrationSearchResponseImportTypeEnum, SemanticIntegrationSearchResponseTypeEnum, SemanticIntegrationSortOptions, SemanticIntegrationSortOptionsFieldNameEnum, SemanticIntegrationSortOptionsOrderEnum, SemanticIntegrationTagReference, PromiseSemanticIntegrationsApi as SemanticIntegrationsApi, SendAgentConversationMessageRequest, SendAgentConversationMessageStreamingRequest, SendAgentMessageRequest, SendAgentMessageResponse, SendAgentMessageStreamingRequest, SendMessageRequest, ServerConfiguration, SetAgentInstructionsRequest, SetNLInstructionsRequest, ShareAnalystRequest, ShareConversationRequest, ShareMetadataRequest, ShareMetadataRequestMetadataTypeEnum, ShareMetadataTypeInput, ShareMetadataTypeInputTypeEnum, SharePermissionsInput, SharePermissionsInputContentShareModeEnum, SharePermissionsInputShareModeEnum, SharedConversationResponse, SingleAnswerRequest, SortOption, SortOptionFieldNameEnum, SortOptionInput, SortOptionInputFieldNameEnum, SortOptionInputOrderEnum, SortOptionOrderEnum, SortOptions, SortOptionsFieldNameEnum, SortOptionsOrderEnum, SortingOptions, SqlQuery, SqlQueryResponse, SqlQueryResponseMetadataTypeEnum, StorageConfig, StorageConfigInput, StorageDestination, StorageDestinationInput, StorageDestinationInputStorageTypeEnum, StorageDestinationStorageTypeEnum, StyleChartColorPalette, StyleColorEntry, StyleColorEntryInput, StyleColorPaletteInput, PromiseStyleCustomizationApi as StyleCustomizationApi, StyleEmbeddedFooterText, StyleFontAssignment, StyleFontAssignmentVisualizationAreasEnum, StyleFontDeleteAffectedAssignment, StyleFontDeleteAffectedAssignmentVisualizationAreasEnum, StyleFontDeleteData, StyleFontRecord, StyleFontRecordScopeEnum, StyleFontRecordStyleEnum, StyleFontRecordWeightEnum, StyleFontUploadData, StyleLogoSlot, StyleLogoStatus, StyleNavigationPanel, StyleNavigationPanelThemeEnum, StyleOrgInfo, StylePreference, StylePreferenceScopeEnum, StyleResetOptionsInput, StyleResetOptionsInputStyleEnum, StyleResetOptionsInputVisualizationAreasEnum, StyleVisualizationFonts, SyncMetadataRequest, SyncMetadataRequestSyncAttributesEnum, SyncMetadataResponse, SyncMetadataResponseStatusEnum, PromiseSystemApi as SystemApi, SystemConfig, SystemInfo, SystemOverrideInfo, Table, TableFontAssignmentInput, TableFontAssignmentInputVisualizationAreaEnum, TableVisualizationFontRecord, TableVisualizationFontRecordVisualizationAreaEnum, Tag, TagMetadataTypeInput, TagMetadataTypeInputTypeEnum, PromiseTagsApi as TagsApi, TemplatePropertiesInputCreate, TextResponseItem, TextResponseItemContentTypeEnum, PromiseThoughtSpotRestApi as ThoughtSpotRestApi, Token, TokenAccessScopeObject, TokenAccessScopeObjectTypeEnum, TokenProvider, TokenScopeInput, TokenScopeInputOrgScopeEnum, TokenValidationResponse, ToolCallResponseItem, ToolResultResponseItem, ToolResultResponseItemContentTypeEnum, URL, URLInput, URLInputMandatory, UnassignTagRequest, UnparameterizeMetadataRequest, UnparameterizeMetadataRequestFieldTypeEnum, UnparameterizeMetadataRequestMetadataTypeEnum, UnpublishMetadataRequest, UpdateAnalystRequest, UpdateCalendarRequest, UpdateCalendarRequestCalendarTypeEnum, UpdateCalendarRequestMonthOffsetEnum, UpdateCalendarRequestStartDayOfWeekEnum, UpdateCalendarRequestTableReference, UpdateCalendarRequestUpdateMethodEnum, UpdateCollectionRequest, UpdateCollectionRequestOperationEnum, UpdateColumnSecurityRulesRequest, UpdateConfigRequest, UpdateConnectionConfigurationRequest, UpdateConnectionConfigurationRequestAuthenticationTypeEnum, UpdateConnectionConfigurationRequestPolicyProcessOptions, UpdateConnectionConfigurationRequestPolicyProcessesEnum, UpdateConnectionConfigurationRequestPolicyTypeEnum, UpdateConnectionRequest, UpdateConnectionStatusRequest, UpdateConnectionStatusRequestStatusEnum, UpdateConnectionV2Request, UpdateConversationRequest, UpdateCustomActionRequest, UpdateCustomActionRequestOperationEnum, UpdateEmailCustomizationRequest, UpdateFeatureAssignmentsRequest, UpdateFeatureAssignmentsRequestOperationEnum, UpdateFeatureValueRequest, UpdateFeatureValueRequestScopeEnum, UpdateMetadataHeaderRequest, UpdateMetadataObjIdRequest, UpdateObjIdInput, UpdateObjIdInputTypeEnum, UpdateOrgRequest, UpdateOrgRequestOperationEnum, UpdateRoleRequest, UpdateRoleRequestPrivilegesEnum, UpdateScheduleRequest, UpdateScheduleRequestFileFormatEnum, UpdateScheduleRequestFrequency, UpdateScheduleRequestLiveboardOptions, UpdateScheduleRequestMetadataTypeEnum, UpdateScheduleRequestPdfOptions, UpdateScheduleRequestRecipientDetails, UpdateScheduleRequestStatusEnum, UpdateScheduleRequestTimeZoneEnum, UpdateStyleFontRequest, UpdateStyleFontRequestScopeEnum, UpdateStyleFontRequestStyleEnum, UpdateStyleFontRequestWeightEnum, UpdateSystemConfigRequest, UpdateTagRequest, UpdateUserGroupRequest, UpdateUserGroupRequestOperationEnum, UpdateUserGroupRequestPrivilegesEnum, UpdateUserGroupRequestTypeEnum, UpdateUserGroupRequestVisibilityEnum, UpdateUserRequest, UpdateUserRequestAccountStatusEnum, UpdateUserRequestAccountTypeEnum, UpdateUserRequestOperationEnum, UpdateUserRequestPreferredLocaleEnum, UpdateUserRequestVisibilityEnum, UpdateVariableRequest, UpdateVariableValuesRequest, UpdateWebhookConfigurationRequest, UpdateWebhookConfigurationRequestAuthentication, UpdateWebhookConfigurationRequestEventsEnum, UpdateWebhookConfigurationRequestResetOptionsEnum, UpdateWebhookConfigurationRequestSignatureVerification, UpdateWebhookConfigurationRequestStatusEnum, UpdateWebhookConfigurationRequestStorageDestination, User, UserAccountStatusEnum, UserAccountTypeEnum, UserGroup, UserGroupResponse, UserGroupResponseParentTypeEnum, UserGroupResponseTypeEnum, UserGroupResponseVisibilityEnum, UserInfo, UserMessage, UserObject, UserObjectTypeEnum, UserParameterOptions, UserParentTypeEnum, UserPrincipal, UserPrompt, UserVisibilityEnum, PromiseUsersApi as UsersApi, ValidateCommunicationChannelRequest, ValidateCommunicationChannelRequestChannelTypeEnum, ValidateCommunicationChannelRequestEventTypeEnum, ValidateMergeRequest, ValidateTokenRequest, ValueScopeInput, ValueScopeInputPrincipalTypeEnum, Variable, PromiseVariableApi as VariableApi, VariableDetailInput, VariableDetailInputTypeEnum, VariableOrgInfo, VariablePutAssignmentInput, VariablePutAssignmentInputPrincipalTypeEnum, VariableUpdateAssignmentInput, VariableUpdateAssignmentInputOperationEnum, VariableUpdateScopeInput, VariableUpdateScopeInputPrincipalTypeEnum, VariableValue, VariableValuePrincipalTypeEnum, VariableValues, VariableVariableTypeEnum, PromiseVersionControlApi as VersionControlApi, VisualizationFontsInput, WebhookAuthApiKey, WebhookAuthApiKeyInput, WebhookAuthBasicAuth, WebhookAuthBasicAuthInput, WebhookAuthOAuth2, WebhookAuthOAuth2Input, WebhookAuthentication, WebhookAuthenticationInput, WebhookDeleteFailure, WebhookDeleteResponse, WebhookKeyValuePair, WebhookKeyValuePairInput, WebhookOrg, WebhookPagination, WebhookResponse, WebhookResponseEventsEnum, WebhookResponseStatusEnum, WebhookSearchResponse, WebhookSignatureVerification, WebhookSignatureVerificationAlgorithmEnum, WebhookSignatureVerificationInput, WebhookSignatureVerificationInputAlgorithmEnum, WebhookSignatureVerificationInputTypeEnum, WebhookSignatureVerificationTypeEnum, WebhookSortOptionsInput, WebhookSortOptionsInputFieldNameEnum, WebhookSortOptionsInputOrderEnum, WebhookStorageConfigInfo, WebhookStorageConfigInfoProviderEnum, WebhookStorageConfigInfoStorageTypeEnum, WebhookStorageSetupConfig, WebhookStorageSetupConfigConfigTypeEnum, WebhookUser, PromiseWebhooksApi as WebhooksApi, configureAuthMethods, createBasicConfig, createBearerAuthenticationConfig, createConfiguration, server1, servers, wrapHttpLibrary };