{ "info": { "_postman_id": "5caf1cfe-a281-4a58-86c5-181e117f9627", "name": "ThoughtSpot Public REST 10.1.0.cl 26.7.0.cl API", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "lastUpdatedBy": "35240", "uid": "35240-5caf1cfe-a281-4a58-86c5-181e117f9627" }, "item": [ { "name": "api", "item": [ { "name": "rest", "item": [ { "name": "2.0", "item": [ { "name": "ai", "item": [ { "name": "agent", "item": [ { "name": "conversations", "item": [ { "name": "{conversation_identifier}", "item": [ { "name": "delete", "item": [ { "name": "delete Conversation", "id": "11531202-feed-4350-8432-ca587cec7837", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "DELETE", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "delete" ], "variable": [ { "id": "6d2102b0-e74b-492e-82a5-6ed74cd6ae73", "key": "conversation_identifier", "value": "", "description": "(Required) Unique identifier of the conversation to delete." } ] }, "description": "\nDeletes an existing agent conversation.
Version: 26.7.0.cl or later\n\nPermanently deletes an existing saved agent conversation and all its associated messages. This operation is irreversible \u2014 deleted conversations cannot be recovered.\n\nRequires `CAN_USE_SPOTTER` privilege and ownership of the conversation being deleted.\n\n#### Usage guidelines\n\nThe request must include:\n\n- `conversation_identifier` *(path parameter)*: the unique ID of the conversation to delete, as returned by `createAgentConversation` or `getConversationList`\n\nA successful request returns an empty `204 No Content` response. The deleted conversation no longer appears in `getConversationList`.\n\n#### Example request\n\n```bash\nDELETE /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/delete\n```\n\n#### Error responses\n\n| Code | Description |\n|------|-------------|\n| 401 | Unauthorized \u2014 authentication token is missing, expired, or invalid. |\n| 403 | Forbidden \u2014 the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. |\n| 404 | Not Found \u2014 no conversation exists with the given `conversation_identifier` for the authenticated user. |\n\n> ###### Note:\n>\n> - Deletion is permanent and cannot be undone. Ensure the correct `conversation_identifier` is used before calling this endpoint.\n> - Only conversations created with `enable_save_chat: true` are persisted and can be deleted via this endpoint.\n> - Available from version 26.7.0.cl and later.\n> - This endpoint requires Spotter \u2014 please contact ThoughtSpot Support to enable Spotter on your cluster.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "0e8939db-dea5-4378-b1b6-cd45cf54161f", "name": "Successfully deleted the agent conversation.", "originalRequest": { "method": "DELETE", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "delete" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "No Content", "code": 204, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-0e8939db-dea5-4378-b1b6-cd45cf54161f" }, { "id": "a1034668-1880-44ae-ba10-5195c44ae883", "name": "Operation failed", "originalRequest": { "method": "DELETE", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "delete" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-a1034668-1880-44ae-ba10-5195c44ae883" }, { "id": "488b9159-30ed-40ef-9711-7aeb671a953d", "name": "Unauthorized access.", "originalRequest": { "method": "DELETE", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "delete" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-488b9159-30ed-40ef-9711-7aeb671a953d" }, { "id": "3c1cf823-25b5-4161-80bd-aeb41708d142", "name": "Forbidden access.", "originalRequest": { "method": "DELETE", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "delete" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-3c1cf823-25b5-4161-80bd-aeb41708d142" }, { "id": "33a89359-92da-455c-85ca-b54ca01d4694", "name": "Operation failed", "originalRequest": { "method": "DELETE", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "delete" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-33a89359-92da-455c-85ca-b54ca01d4694" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-11531202-feed-4350-8432-ca587cec7837" } ], "id": "038dbf9c-28df-4102-b970-ec9b19c0c863", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-038dbf9c-28df-4102-b970-ec9b19c0c863" }, { "name": "messages", "item": [ { "name": "get Conversation", "id": "d82fb369-5fd8-4dca-99ca-b2b92c6a5245", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/messages", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "messages" ], "variable": [ { "id": "90822116-ea11-4fe8-837b-c7cebde43aad", "key": "conversation_identifier", "value": "", "description": "(Required) Unique identifier of the conversation to load." } ] }, "description": "\nRetrieves the full public-safe content of a saved agent conversation: ordered\nturns (user messages and agent response items) and sanitized code-execution\nfile metadata. Internal graph or branch state, Azure file identifiers, and\nmessages with a `SYSTEM` source are omitted. The full answer payload is not\nembedded; fetch it separately via `loadAnswer` using the `answer_id` on each\n`answer` response item.\nRequires `CAN_USE_SPOTTER` privilege and access to the specified conversation.
Version: 26.7.0.cl or later\n\nRetrieves the full public-safe content of a saved agent conversation. Returns ordered conversation messages \u2014 each carrying an optional user prompt (the user's message and any attachments) and the agent response items produced for that turn \u2014 plus sanitized metadata for any files generated by the code-execution tool. \n\nUse 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 \u2014 fetch it separately via `loadAnswer` using the `answer_id` on each `answer` response item.\n\nRequires `CAN_USE_SPOTTER` privilege and access to the specified conversation.\n\n#### Usage guidelines\n\nThe request must include:\n\n- `conversation_identifier` _(path parameter)_: the unique ID of the conversation, as returned by `createAgentConversation` or `getConversationList`.\n\nIf the request is successful, the response contains two top-level fields:\n\n| Field | Type | Description |\n| ---------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `messages` | `ConversationMessage[]` | Ordered oldest to newest. Empty array when the conversation has no messages. |\n| `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. |\n\nNo other top-level fields are returned.\n\n#### ConversationMessage fields\n\n| Field | Type | Description |\n| --------------------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------- |\n| `message_id` | `String` | Stable identifier for the turn. For liveboard-started synthetic first turns, this is the root node identifier. |\n| `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch for the turn. |\n| `user_prompt` | `UserPrompt` | User-authored prompt that started the turn (message and attachments). `null` for liveboard-started synthetic first turns. |\n| `response_items` | `ConversationResponseItem[]` | Agent-side output produced in response to this turn. Empty array for in-progress turns. |\n\n#### UserPrompt fields\n\n| Field | Type | Description |\n| ------------- | ---------------------- | ---------------------------------------------------------------------------------------------------- |\n| `message` | `UserMessage` | User query that started the turn. `null` for liveboard-started synthetic first turns. |\n| `attachments` | `UserAttachmentItem[]` | Files or connector resources attached to the user message. Empty array when there are no attachments. |\n\n#### UserMessage fields\n\n| Field | Type | Description |\n| ------------ | -------- | --------------------------------------------- |\n| `message_id` | `String` | Unique identifier of the user-source message. |\n| `content` | `String` | Text body of the user query. |\n\n#### UserAttachmentItem fields\n\nDiscriminated 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 \u2014 `UserAttachmentItem` uses the same fields.\n\n#### ConversationResponseItem fields\n\nEvery item carries a `type` discriminator and these shared fields:\n\n| Field | Type | Description |\n| --------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ |\n| `type` | `String` | Discriminator. One of `\"text\"`, `\"tool_call\"`, `\"tool_result\"`, `\"answer\"`, `\"file\"`, `\"resource\"`, `\"search_datasets\"`. |\n| `timestamp_in_millis` | `Long` | Milliseconds since Unix epoch when this item was produced. |\n| `is_thinking` | `Boolean` | `true` when the item represents internal agent reasoning rather than user-facing output. Consumers may hide or collapse these. |\n| `step_title` | `String` | Human-readable label for the agent step producing this item (e.g. `\"Searching\"`, `\"Visualising\"`). |\n\nVariant-specific fields:\n\n- **`text`** \u2014 agent text output: `content` (String), `content_type` (`ContentMimeType` enum), `file_reference` (FileReference).\n- **`tool_call`** \u2014 agent invoked a tool: `tool_call_id` (String), `tool_name` (String), `arguments` (JSON object).\n- **`tool_result`** \u2014 result returned from a tool invocation: `tool_call_id`, `tool_name`, `content`, `content_type` (`ContentMimeType` enum), `success` (Boolean).\n- **`answer`** \u2014 slim reference to a saved answer: `answer_id` (String), `tool_call_id`, `tool_name`.\n- **`file`** \u2014 uploaded or generated files: `files` (`PublicFileInfo[]`).\n- **`resource`** \u2014 MCP connector resource: `title`, `uri`, `name`, `mime_type`, `description`, `size` (Int), `connector_id`, `connector_name`, `connector_slug`, `transport_type` (`TransportType` enum).\n- **`search_datasets`** \u2014 dataset discovery result: `text` (String), `data_sources` (`DataSourceInfo[]`).\n\nClients should switch on `type` and ignore unknown variants for forward-compatibility.\n\n#### content_type values\n\n`content_type` is the `ContentMimeType` enum. The following values are defined:\n\n| Value | Wire MIME | Meaning |\n| --------------------------- | --------------------------- | ---------------------------------------------------- |\n| `TEXT_PLAIN` | `text/plain` | Plain text. Default for `tool_result`. |\n| `TEXT_MARKDOWN` | `text/markdown` | Markdown. Default for `text`. |\n| `TEXT_X_MARKDOWN_WITH_CODE` | `text/x-markdown-with-code` | Markdown whose body starts with a fenced code block. |\n| `TEXT_HTML` | `text/html` | Raw HTML. |\n\n#### transport_type values\n\n`transport_type` is the `TransportType` enum used on the `resource` variant.\n\n| Value | Meaning |\n| ------------------ | --------------------------------------------- |\n| `STREAMABLE_HTTP` | Streamable HTTP transport (default for MCP). |\n| `SSE` | Server-sent events transport. |\n\n#### FileReference fields\n\n| Field | Type | Description |\n| ------------------------ | -------- | ------------------------------------------------------------ |\n| `file_id` | `String` | Unique identifier of the code-execution-generated file. |\n| `display_name` | `String` | Human-readable file name. |\n| `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. |\n\nCross-reference `file_id` against `code_execution_files` to retrieve full metadata including the `expired` flag before attempting a download.\n\n#### PublicFileInfo fields\n\n| Field | Type | Description |\n| ------------------------ | -------- | -------------------------------------------------------- |\n| `file_id` | `String` | Unique identifier of the file. |\n| `display_name` | `String` | Human-readable file name. |\n| `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. |\n| `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. |\n| `size_bytes` | `Int` | File size in bytes. |\n\n#### CodeExecutionFileMetadata fields\n\nEach entry in the `code_execution_files` array contains:\n\n| Field | Type | Description |\n| ------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- |\n| `file_id` | `String` | Unique identifier of the file. |\n| `display_name` | `String` | Human-readable file name. |\n| `file_type` | `String` | File type such as `csv`, `pdf`, or `png`. |\n| `created_time_in_millis` | `Long` | Milliseconds since Unix epoch when the file was created. |\n| `expired` | `Boolean` | When `true`, the underlying file is no longer retrievable from code-execution storage; UIs should disable download and preview. |\n\n#### Loading answer payloads\n\nEach `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.\n\n#### Example request\n\n```bash\nGET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/messages\n```\n\n#### Example response\n\n```json\n{\n \"messages\": [\n {\n \"message_id\": \"node_u_01\",\n \"timestamp_in_millis\": 1744000000000,\n \"user_prompt\": {\n \"message\": {\n \"message_id\": \"msg_u_01\",\n \"content\": \"Show me revenue by region as a chart.\"\n },\n \"attachments\": []\n },\n \"response_items\": [\n {\n \"type\": \"tool_call\",\n \"tool_call_id\": \"toolu_01ABC\",\n \"tool_name\": \"search_datasets\",\n \"step_title\": \"Searching datasets\",\n \"arguments\": { \"query\": \"revenue\" },\n \"timestamp_in_millis\": 1744000001000,\n \"is_thinking\": false\n },\n {\n \"type\": \"answer\",\n \"answer_id\": \"ans_01XYZ\",\n \"tool_call_id\": \"toolu_02DEF\",\n \"tool_name\": \"fetch_and_visualize\",\n \"step_title\": \"Visualising\",\n \"timestamp_in_millis\": 1744000004000,\n \"is_thinking\": false\n },\n {\n \"type\": \"text\",\n \"content\": \"Revenue is highest in APAC.\",\n \"content_type\": \"TEXT_MARKDOWN\",\n \"timestamp_in_millis\": 1744000005000,\n \"is_thinking\": false,\n \"step_title\": null,\n \"file_reference\": {\n \"file_id\": \"revenue_by_region.csv\",\n \"display_name\": \"revenue_by_region.csv\",\n \"created_time_in_millis\": 1744027200000\n }\n }\n ]\n }\n ],\n \"code_execution_files\": [\n {\n \"file_id\": \"revenue_by_region.csv\",\n \"display_name\": \"revenue_by_region.csv\",\n \"file_type\": \"csv\",\n \"created_time_in_millis\": 1744027200000,\n \"expired\": false\n }\n ]\n}\n```\n\n#### Example: liveboard-started conversation\n\nWhen 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.\n\n```json\n{\n \"messages\": [\n {\n \"message_id\": \"ROOT_NODE\",\n \"timestamp_in_millis\": 1743999000000,\n \"user_prompt\": null,\n \"response_items\": [\n {\n \"type\": \"answer\",\n \"answer_id\": \"lb_seed_01\",\n \"tool_call_id\": null,\n \"tool_name\": null,\n \"step_title\": null,\n \"timestamp_in_millis\": 1743999000000,\n \"is_thinking\": false\n }\n ]\n }\n ],\n \"code_execution_files\": []\n}\n```\n\nSubsequent turns follow the normal user-to-agent pattern.\n\n#### Error responses\n\n| Code | Description |\n| ---- | --------------------------------------------------------------------------------------------------------------------------- |\n| 401 | Unauthorized \u2014 authentication token is missing, expired, or invalid. |\n| 403 | Forbidden \u2014 the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. |\n| 404 | Not Found \u2014 no conversation exists with the given identifier for the authenticated user. |\n\n> ###### Note:\n>\n> - Messages with an internal `SYSTEM` source are always dropped from the response.\n> - In-progress turns are still returned with an empty `response_items` array so clients can render the user message immediately.\n> - Do not assume every `tool_call` has a paired `tool_result` or `answer` \u2014 an interrupted conversation can leave a dangling call.\n> - Available from version 26.7.0.cl and later.\n> - This endpoint requires Spotter \u2014 please contact ThoughtSpot Support to enable Spotter on your cluster.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "bd390948-3de9-4330-a490-92772630d05b", "name": "Common successful response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/messages", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "messages" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"messages\": [\n {\n \"message_id\": \"\",\n \"timestamp_in_millis\": {},\n \"user_prompt\": {\n \"message\": {\n \"message_id\": \"\",\n \"content\": \"\"\n }\n }\n },\n {\n \"message_id\": \"\",\n \"timestamp_in_millis\": {},\n \"user_prompt\": {\n \"message\": {\n \"message_id\": \"\",\n \"content\": \"\"\n }\n }\n }\n ],\n \"code_execution_files\": [\n {\n \"file_id\": \"\",\n \"expired\": \"\",\n \"display_name\": \"\",\n \"file_type\": \"\",\n \"created_time_in_millis\": {}\n },\n {\n \"file_id\": \"\",\n \"expired\": \"\",\n \"display_name\": \"\",\n \"file_type\": \"\",\n \"created_time_in_millis\": {}\n }\n ]\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-bd390948-3de9-4330-a490-92772630d05b" }, { "id": "07aca945-e4b6-4c9f-a815-8eb010bb0998", "name": "Common error response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/messages", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "messages" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Created", "code": 201, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"messages\": [\n {\n \"message_id\": \"\",\n \"timestamp_in_millis\": {},\n \"user_prompt\": {\n \"message\": {\n \"message_id\": \"\",\n \"content\": \"\"\n }\n }\n },\n {\n \"message_id\": \"\",\n \"timestamp_in_millis\": {},\n \"user_prompt\": {\n \"message\": {\n \"message_id\": \"\",\n \"content\": \"\"\n }\n }\n }\n ],\n \"code_execution_files\": [\n {\n \"file_id\": \"\",\n \"expired\": \"\",\n \"display_name\": \"\",\n \"file_type\": \"\",\n \"created_time_in_millis\": {}\n },\n {\n \"file_id\": \"\",\n \"expired\": \"\",\n \"display_name\": \"\",\n \"file_type\": \"\",\n \"created_time_in_millis\": {}\n }\n ]\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-07aca945-e4b6-4c9f-a815-8eb010bb0998" }, { "id": "8c47f06a-9a66-4abe-9734-47baba1a9785", "name": "Operation failed", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/messages", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "messages" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-8c47f06a-9a66-4abe-9734-47baba1a9785" }, { "id": "dad4591e-df07-4928-9ea9-9f955dacc932", "name": "Unauthorized access.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/messages", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "messages" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-dad4591e-df07-4928-9ea9-9f955dacc932" }, { "id": "15a401b5-bfb0-4178-bb58-b1e6ae5c4de9", "name": "Forbidden access.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/messages", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "messages" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-15a401b5-bfb0-4178-bb58-b1e6ae5c4de9" }, { "id": "76447705-0abe-4774-9a38-5532accc0e39", "name": "Operation failed", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/messages", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "messages" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-76447705-0abe-4774-9a38-5532accc0e39" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-d82fb369-5fd8-4dca-99ca-b2b92c6a5245" } ], "id": "697eb982-abfe-4802-9728-6024d4f64699", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-697eb982-abfe-4802-9728-6024d4f64699" }, { "name": "answers", "item": [ { "name": "{answer_identifier}", "item": [ { "name": "details", "item": [ { "name": "load Answer", "id": "da6bcd42-c028-4b27-bf88-9cda4eab4ceb", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/answers/:answer_identifier/details", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "answers", ":answer_identifier", "details" ], "variable": [ { "id": "fab83242-b734-40dd-b6b5-70947d80ffdf", "key": "conversation_identifier", "value": "", "description": "(Required) Unique identifier of the conversation." }, { "id": "46d0f9a8-19e7-4758-9c2f-17e1aa835218", "key": "answer_identifier", "value": "", "description": "(Required) Unique identifier of the answer to load. Use the `answer_id` field from an\n`AnswerResponseItem` returned by `getConversation`." } ] }, "description": "\nLoads the full answer payload for a specific answer item in an agent\nconversation. Returns structured answer data including the TML query, token\nbreakdown, visualization metadata, and agent context state.\nPass the `answer_id` from an `AnswerResponseItem` in the `getConversation`\nresponse as the `answer_identifier` parameter.\nRequires `CAN_USE_SPOTTER` privilege and access to the specified conversation.
Version: 26.7.0.cl or later\n\nLoads 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 \u2014 for example, to re-render a chart, export a query, or inspect the generated TML.\n\nRequires `CAN_USE_SPOTTER` privilege and access to the specified conversation.\n\n#### Usage guidelines\n\nThe request must include:\n\n- `conversation_identifier` *(path parameter)*: the unique ID of the conversation, as returned by `createAgentConversation`\n- `answer_identifier` *(path parameter)*: the `answer_id` field from an `AnswerResponseItem` in the `getConversation` response\n\nIf the request is successful, the response contains an `answer` object with the following fields:\n\n| Field | Type | Description |\n|-------|------|-------------|\n| `title` | `String` | Display title of the generated answer (e.g., `\"sales by month\"`). |\n| `description` | `String` | Optional description of the answer. |\n| `session_identifier` | `String` | Unique identifier of the session in which this answer was generated. |\n| `generation_number` | `Int` | Generation sequence number of this answer within the session. |\n| `tokens` | `[String]` | Ordered list of TML token strings that make up the answer query (e.g., `[\"[sales]\", \"[date].'monthly'\"]`). |\n| `visualization_type` | `VizType` | Suggested visualization type: `Chart`, `Table`, or `Undefined`. `null` if no suggestion is available. |\n| `formulas` | `[String]` | List of formula names referenced in the answer. Empty if none are used. |\n| `parameters` | `[String]` | List of parameter names applied to the answer. Empty if none are used. |\n| `sub_queries` | `[JSON]` | List of sub-query objects used in the answer. Empty if none are present. |\n| `ac_state` | `ACState` | Agent context state, including `transaction_identifier` and `generation_number`, used to correlate this answer with a specific agent turn. |\n\n#### ACState fields\n\n| Field | Type | Description |\n|-------|------|-------------|\n| `transaction_identifier` | `String` | Unique identifier of the agent transaction that produced this answer. |\n| `generation_number` | `Int` | Generation number within the transaction. |\n\n#### Example request\n\n```bash\nGET /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/answers/{answer_identifier}/details\n```\n\n#### Example response\n\n```json\n{\n \"answer\": {\n \"title\": \"sales by month\",\n \"description\": \"\",\n \"session_identifier\": \"7b00b801-73f4-4639-af5e-e775584ceba6\",\n \"generation_number\": 1,\n \"tokens\": [\"[sales]\", \"[date].'monthly'\"],\n \"visualization_type\": null,\n \"formulas\": [],\n \"parameters\": [],\n \"sub_queries\": [],\n \"ac_state\": {\n \"transaction_identifier\": \"7f6c9948-b4c7-4098-bb1f-6c67bc0e5699\",\n \"generation_number\": 1\n }\n }\n}\n```\n\n#### Typical usage scenario\n\n1. Call `getConversation` to retrieve the full conversation history.\n2. Locate an `AnswerResponseItem` in `response_items` \u2014 note its `answer_id` field.\n3. Call `loadAnswer` with the `conversation_identifier` and `answer_id` as `answer_identifier`.\n4. The returned `tokens` array can be used to open the answer in the ThoughtSpot search interface or rendered as pill chips in the UI.\n\n#### Error responses\n\n| Code | Description |\n|------|-------------|\n| 401 | Unauthorized \u2014 authentication token is missing, expired, or invalid. |\n| 403 | Forbidden \u2014 the authenticated user does not have `CAN_USE_SPOTTER` privilege or lacks access to the specified conversation. |\n| 404 | Not Found \u2014 no conversation or message exists with the given identifiers for the authenticated user. |\n| 422 | Unprocessable Entity \u2014 the message does not contain an answer of the expected type. |\n\n> ###### Note:\n>\n> - This endpoint only loads answer-type messages. Other message types are not supported.\n> - `visualization_type` may be `null` if the agent did not produce a visualization suggestion for this answer.\n> - `formulas`, `parameters`, and `sub_queries` are returned as empty arrays when not applicable \u2014 they are never `null`.\n> - Available from version 26.7.0.cl and later.\n> - This endpoint requires Spotter \u2014 please contact ThoughtSpot Support to enable Spotter on your cluster.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "4d7aadcc-3033-4f7d-98fb-87c62a32972e", "name": "Common successful response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/answers/:answer_identifier/details", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "answers", ":answer_identifier", "details" ], "variable": [ { "key": "conversation_identifier" }, { "key": "answer_identifier" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"answer\": {\n \"title\": \"\",\n \"description\": \"\",\n \"session_identifier\": \"\",\n \"generation_number\": \"\",\n \"tokens\": [\n \"\",\n \"\"\n ],\n \"visualization_type\": \"Undefined\",\n \"formulas\": [\n \"\",\n \"\"\n ],\n \"parameters\": [\n \"\",\n \"\"\n ],\n \"ac_state\": {\n \"transaction_identifier\": \"\",\n \"generation_number\": \"\"\n }\n }\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-4d7aadcc-3033-4f7d-98fb-87c62a32972e" }, { "id": "35e725d4-398e-4488-9523-ebfa52488934", "name": "Common error response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/answers/:answer_identifier/details", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "answers", ":answer_identifier", "details" ], "variable": [ { "key": "conversation_identifier" }, { "key": "answer_identifier" } ] } }, "status": "Created", "code": 201, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"answer\": {\n \"title\": \"\",\n \"description\": \"\",\n \"session_identifier\": \"\",\n \"generation_number\": \"\",\n \"tokens\": [\n \"\",\n \"\"\n ],\n \"visualization_type\": \"Undefined\",\n \"formulas\": [\n \"\",\n \"\"\n ],\n \"parameters\": [\n \"\",\n \"\"\n ],\n \"ac_state\": {\n \"transaction_identifier\": \"\",\n \"generation_number\": \"\"\n }\n }\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-35e725d4-398e-4488-9523-ebfa52488934" }, { "id": "d9472e52-43a1-4d3f-8076-9147e0222830", "name": "Operation failed", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/answers/:answer_identifier/details", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "answers", ":answer_identifier", "details" ], "variable": [ { "key": "conversation_identifier" }, { "key": "answer_identifier" } ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-d9472e52-43a1-4d3f-8076-9147e0222830" }, { "id": "43569498-8ee1-404a-b94b-fd231c2da9d9", "name": "Unauthorized access.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/answers/:answer_identifier/details", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "answers", ":answer_identifier", "details" ], "variable": [ { "key": "conversation_identifier" }, { "key": "answer_identifier" } ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-43569498-8ee1-404a-b94b-fd231c2da9d9" }, { "id": "ff2bdb8b-7a8c-4b56-8ad9-9c6defafd8b4", "name": "Forbidden access.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/answers/:answer_identifier/details", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "answers", ":answer_identifier", "details" ], "variable": [ { "key": "conversation_identifier" }, { "key": "answer_identifier" } ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-ff2bdb8b-7a8c-4b56-8ad9-9c6defafd8b4" }, { "id": "dc5686e0-8465-4765-8959-abff0e1eb3ec", "name": "Operation failed", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/answers/:answer_identifier/details", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "answers", ":answer_identifier", "details" ], "variable": [ { "key": "conversation_identifier" }, { "key": "answer_identifier" } ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-dc5686e0-8465-4765-8959-abff0e1eb3ec" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-da6bcd42-c028-4b27-bf88-9cda4eab4ceb" } ], "id": "458380cb-ff59-4160-b414-1ecaab887937", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-458380cb-ff59-4160-b414-1ecaab887937" } ], "id": "36f2ed6a-b19a-47d7-bb1f-b5662ab35138", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-36f2ed6a-b19a-47d7-bb1f-b5662ab35138" } ], "id": "d57ef20e-b570-407d-97a2-b0ecaa4b37ed", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-d57ef20e-b570-407d-97a2-b0ecaa4b37ed" }, { "name": "update", "item": [ { "name": "update Conversation", "id": "f99ad395-dd8a-416f-a955-8e05af5baa5a", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"title\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "update" ], "variable": [ { "id": "0b8292e4-ab83-4c39-86d1-8e0b1cae2a1d", "key": "conversation_identifier", "value": "", "description": "(Required) Unique identifier of the conversation to update." } ] }, "description": "\nUpdates attributes of an existing agent conversation. Currently only the\ndisplay title can be updated; additional conversation attributes may be\nsupported in future versions. At least one updatable attribute must be\nprovided in the request body.
Version: 26.7.0.cl or later\n\nUpdates attributes of an existing saved agent conversation. Currently only the conversation's display `title` can be updated; additional updatable attributes may be supported in future versions. At least one updatable attribute must be supplied in the request body.\n\nRequires `CAN_USE_SPOTTER` privilege and ownership of the conversation being updated.\n\n#### Usage guidelines\n\nThe request must include:\n\n- `conversation_identifier` *(path parameter)*: the unique ID of the conversation to update, as returned by `createAgentConversation` or `getConversationList`\n- At least one updatable attribute in the request body:\n - `title` *(optional)*: the new display name for the conversation. When provided, must be a non-empty string.\n\nA successful request returns an empty `204 No Content` response. Updated attributes are reflected immediately in subsequent calls to `getConversationList`.\n\n#### Example request\n\n```bash\nPOST /api/rest/2.0/ai/agent/conversations/{conversation_identifier}/update\nContent-Type: application/json\n\n{\n \"title\": \"Revenue Breakdown by Product Line\"\n}\n```\n\n#### Error responses\n\n| Code | Description |\n|------|-------------|\n| 400 | Bad Request \u2014 the request body is empty or `title` is provided as an empty string. |\n| 401 | Unauthorized \u2014 authentication token is missing, expired, or invalid. |\n| 403 | Forbidden \u2014 the authenticated user does not have `CAN_USE_SPOTTER` privilege or does not own the specified conversation. |\n| 404 | Not Found \u2014 no conversation exists with the given `conversation_identifier` for the authenticated user. |\n| 422 | Unprocessable Entity \u2014 the request body is malformed or contains an invalid field value. |\n\n> ###### Note:\n>\n> - Only conversations created with `enable_save_chat: true` can be updated. Unsaved conversations are not persisted and do not have a retrievable identifier.\n> - Available from version 26.7.0.cl and later.\n> - This endpoint requires Spotter \u2014 please contact ThoughtSpot Support to enable Spotter on your cluster.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "5727970b-7f75-4ac7-a055-a5fab04a925b", "name": "Successfully updated the agent conversation.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"title\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "update" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "No Content", "code": 204, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-5727970b-7f75-4ac7-a055-a5fab04a925b" }, { "id": "3b462b5a-7236-4101-88c6-5f89e68375fb", "name": "Operation failed", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"title\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "update" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-3b462b5a-7236-4101-88c6-5f89e68375fb" }, { "id": "e99e377f-f663-4973-af29-37b49dc49032", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"title\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "update" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-e99e377f-f663-4973-af29-37b49dc49032" }, { "id": "4be1bf19-81d4-4c90-90f1-ae78e0fe5f1f", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"title\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "update" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-4be1bf19-81d4-4c90-90f1-ae78e0fe5f1f" }, { "id": "8eeca82c-518c-4d63-bbe6-f170b20049bf", "name": "Operation failed", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"title\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations/:conversation_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations", ":conversation_identifier", "update" ], "variable": [ { "key": "conversation_identifier" } ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-8eeca82c-518c-4d63-bbe6-f170b20049bf" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-f99ad395-dd8a-416f-a955-8e05af5baa5a" } ], "id": "95dc14fa-1b99-4669-8d97-c33177ba67f5", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-95dc14fa-1b99-4669-8d97-c33177ba67f5" } ], "id": "9b0d96f9-d1a3-45cd-ae13-bee994ab5b27", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-9b0d96f9-d1a3-45cd-ae13-bee994ab5b27" }, { "name": "get Conversation List", "id": "6c5a5ea4-fbd5-48ba-8874-6ccdae9e7069", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations?limit=30&offset=0&skip_empty=true", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations" ], "query": [ { "description": "Maximum number of conversations to return. Used for pagination.", "key": "limit", "value": "30" }, { "description": "Number of conversations to skip before returning results. Used for pagination.", "key": "offset", "value": "0" }, { "description": "When true, excludes conversations with no messages. Defaults to true.", "key": "skip_empty", "value": "true" } ] }, "description": "\nRetrieves the list of saved agent conversations for the currently authenticated user.\nOnly conversations created with `enable_save_chat: true` are returned.
Version: 26.7.0.cl or later\n\nRetrieves 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.\n\nRequires `CAN_USE_SPOTTER` privilege.\n\n#### Usage guidelines\n\nThe request supports the following optional query parameters:\n\n- `limit`: maximum number of conversations to return. Use this together with `offset` for pagination.\n- `offset`: number of conversations to skip before returning results. Defaults to `0`.\n- `skip_empty`: when `true` (default), conversations with no messages are excluded from the results. Set to `false` to include empty conversations.\n\nIf the request is successful, the response includes a `conversations` array. Each entry contains:\n\n- `conversation_identifier`: the unique ID of the conversation, used as input to `sendAgentConversationMessage`, `updateConversation`, `deleteConversation`, `stopConversation`, and `loadAnswer`\n- `conversation_title`: the display name of the conversation\n- `created_at`: ISO 8601 timestamp of when the conversation was created\n- `updated_at`: ISO 8601 timestamp of the most recent update to the conversation\n- `data_source_identifiers`: list of unique IDs of the data sources associated with the conversation\n- `data_source_names`: array of `{ id, name }` objects for the data sources associated with the conversation\n\n#### Pagination\n\nUse `limit` and `offset` to page through large result sets:\n\n```\nGET /api/rest/2.0/ai/agent/conversations?limit=20&offset=0 \u2192 first page\nGET /api/rest/2.0/ai/agent/conversations?limit=20&offset=20 \u2192 second page\n```\n\n#### Pagination and `has_more`\n\nThe response includes a `has_more: Boolean` field. When `true`, there are additional conversations beyond the current page \u2014 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.\n\n#### Example response\n\n```json\n{\n \"conversations\": [\n {\n \"conversation_identifier\": \"abc123\",\n \"conversation_title\": \"Sales by Region Q1\",\n \"created_at\": \"2026-03-01T10:00:00Z\",\n \"updated_at\": \"2026-03-05T14:23:00Z\",\n \"data_source_identifiers\": [\"ds-001\"],\n \"data_source_names\": [{ \"id\": \"ds-001\", \"name\": \"Retail Sales\" }]\n }\n ],\n \"has_more\": false\n}\n```\n\n#### Error responses\n\n| Code | Description |\n|------|-------------|\n| 401 | Unauthorized \u2014 authentication token is missing, expired, or invalid. |\n| 403 | Forbidden \u2014 the authenticated user does not have `CAN_USE_SPOTTER` privilege. |\n\n> ###### Note:\n>\n> - 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.\n> - Available from version 26.7.0.cl and later.\n> - This endpoint requires Spotter \u2014 please contact ThoughtSpot Support to enable Spotter on your cluster.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "21c587d3-b6cd-4427-b1b4-495d7647ea4a", "name": "Common successful response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations?limit=30&offset=0&skip_empty=true", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations" ], "query": [ { "description": "Maximum number of conversations to return. Used for pagination.", "key": "limit", "value": "30" }, { "description": "Number of conversations to skip before returning results. Used for pagination.", "key": "offset", "value": "0" }, { "description": "When true, excludes conversations with no messages. Defaults to true.", "key": "skip_empty", "value": "true" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"conversations\": [\n {\n \"conversation_identifier\": \"\",\n \"conversation_title\": \"\",\n \"created_at\": \"\",\n \"updated_at\": \"\",\n \"data_source_identifiers\": [\n \"\",\n \"\"\n ],\n \"data_source_names\": [\n {\n \"id\": \"\",\n \"name\": \"\"\n },\n {\n \"id\": \"\",\n \"name\": \"\"\n }\n ]\n },\n {\n \"conversation_identifier\": \"\",\n \"conversation_title\": \"\",\n \"created_at\": \"\",\n \"updated_at\": \"\",\n \"data_source_identifiers\": [\n \"\",\n \"\"\n ],\n \"data_source_names\": [\n {\n \"id\": \"\",\n \"name\": \"\"\n },\n {\n \"id\": \"\",\n \"name\": \"\"\n }\n ]\n }\n ],\n \"has_more\": \"\"\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-21c587d3-b6cd-4427-b1b4-495d7647ea4a" }, { "id": "08a27bd9-90ec-4499-8778-c05e45343277", "name": "Common error response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations?limit=30&offset=0&skip_empty=true", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations" ], "query": [ { "description": "Maximum number of conversations to return. Used for pagination.", "key": "limit", "value": "30" }, { "description": "Number of conversations to skip before returning results. Used for pagination.", "key": "offset", "value": "0" }, { "description": "When true, excludes conversations with no messages. Defaults to true.", "key": "skip_empty", "value": "true" } ] } }, "status": "Created", "code": 201, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"conversations\": [\n {\n \"conversation_identifier\": \"\",\n \"conversation_title\": \"\",\n \"created_at\": \"\",\n \"updated_at\": \"\",\n \"data_source_identifiers\": [\n \"\",\n \"\"\n ],\n \"data_source_names\": [\n {\n \"id\": \"\",\n \"name\": \"\"\n },\n {\n \"id\": \"\",\n \"name\": \"\"\n }\n ]\n },\n {\n \"conversation_identifier\": \"\",\n \"conversation_title\": \"\",\n \"created_at\": \"\",\n \"updated_at\": \"\",\n \"data_source_identifiers\": [\n \"\",\n \"\"\n ],\n \"data_source_names\": [\n {\n \"id\": \"\",\n \"name\": \"\"\n },\n {\n \"id\": \"\",\n \"name\": \"\"\n }\n ]\n }\n ],\n \"has_more\": \"\"\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-08a27bd9-90ec-4499-8778-c05e45343277" }, { "id": "b43c9e44-5d63-4ec8-b749-4b613f0972f4", "name": "Operation failed", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations?limit=30&offset=0&skip_empty=true", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations" ], "query": [ { "description": "Maximum number of conversations to return. Used for pagination.", "key": "limit", "value": "30" }, { "description": "Number of conversations to skip before returning results. Used for pagination.", "key": "offset", "value": "0" }, { "description": "When true, excludes conversations with no messages. Defaults to true.", "key": "skip_empty", "value": "true" } ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-b43c9e44-5d63-4ec8-b749-4b613f0972f4" }, { "id": "ea17c912-42ff-470d-a3be-d12671236509", "name": "Unauthorized access.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations?limit=30&offset=0&skip_empty=true", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations" ], "query": [ { "description": "Maximum number of conversations to return. Used for pagination.", "key": "limit", "value": "30" }, { "description": "Number of conversations to skip before returning results. Used for pagination.", "key": "offset", "value": "0" }, { "description": "When true, excludes conversations with no messages. Defaults to true.", "key": "skip_empty", "value": "true" } ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-ea17c912-42ff-470d-a3be-d12671236509" }, { "id": "e4e1efc7-f04b-48c9-b6f7-4353cadb8e9b", "name": "Forbidden access.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations?limit=30&offset=0&skip_empty=true", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations" ], "query": [ { "description": "Maximum number of conversations to return. Used for pagination.", "key": "limit", "value": "30" }, { "description": "Number of conversations to skip before returning results. Used for pagination.", "key": "offset", "value": "0" }, { "description": "When true, excludes conversations with no messages. Defaults to true.", "key": "skip_empty", "value": "true" } ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-e4e1efc7-f04b-48c9-b6f7-4353cadb8e9b" }, { "id": "3711362a-f3fa-42fd-b826-5df54c49133c", "name": "Operation failed", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/ai/agent/conversations?limit=30&offset=0&skip_empty=true", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "ai", "agent", "conversations" ], "query": [ { "description": "Maximum number of conversations to return. Used for pagination.", "key": "limit", "value": "30" }, { "description": "Number of conversations to skip before returning results. Used for pagination.", "key": "offset", "value": "0" }, { "description": "When true, excludes conversations with no messages. Defaults to true.", "key": "skip_empty", "value": "true" } ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-3711362a-f3fa-42fd-b826-5df54c49133c" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-6c5a5ea4-fbd5-48ba-8874-6ccdae9e7069" } ], "id": "02abfbf8-ee52-409c-8f8c-68881442f573", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-02abfbf8-ee52-409c-8f8c-68881442f573" } ], "id": "30f4b9e3-caed-4f5c-809f-ce99213a2262", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-30f4b9e3-caed-4f5c-809f-ce99213a2262" } ], "id": "69f13e5b-d19c-4a21-af18-460623cf030a", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-69f13e5b-d19c-4a21-af18-460623cf030a" }, { "name": "localizations", "item": [ { "name": "manual-translation", "item": [ { "name": "delete", "item": [ { "name": "delete Manual Translations", "id": "c483e19c-acf5-45a0-8630-002c30e0c31e", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "delete" ] }, "description": "\nDelete manual translations.
Version: 26.7.0.cl or later\n\nDeletes all manual translations for the org.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege.\n\n#### Usage guidelines\n\n- This deletes **all** translation entries for the targeted org. The operation cannot be undone.\n- Defaults to `ORG` scope if not specified.\n- Set `scope` to `CLUSTER` to delete translations uploaded in the All-Org context.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "bc9984df-fe29-4941-b576-3126892e2ef8", "name": "Successfully deleted manual translations.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "delete" ] } }, "status": "No Content", "code": 204, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-bc9984df-fe29-4941-b576-3126892e2ef8" }, { "id": "bbc45287-80df-4268-8059-c168c7a5a169", "name": "Operation failed", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "delete" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-bbc45287-80df-4268-8059-c168c7a5a169" }, { "id": "03c6264f-07d4-42f8-b786-6995313106f6", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "delete" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-03c6264f-07d4-42f8-b786-6995313106f6" }, { "id": "6c72cba4-2559-4c15-80ce-49ed88c996ce", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "delete" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-6c72cba4-2559-4c15-80ce-49ed88c996ce" }, { "id": "212432b5-f628-45ed-982c-da07c18e5860", "name": "Operation failed", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "delete" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-212432b5-f628-45ed-982c-da07c18e5860" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-c483e19c-acf5-45a0-8630-002c30e0c31e" } ], "id": "349b97ed-37b4-4df4-88d2-ec844d734ec2", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-349b97ed-37b4-4df4-88d2-ec844d734ec2" }, { "name": "export", "item": [ { "name": "export Manual Translations", "id": "bd04706d-c595-464c-90c5-44df051d61fa", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/octet-stream" } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "export" ] }, "description": "\nExport manual translations as a CSV file.
Version: 26.7.0.cl or later\n\nDownloads all manual translations for the org as a CSV file.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege.\n\n#### Usage guidelines\n\n- The response is a CSV file with columns: `content`, `locale`, `translated-content`.\n- Defaults to `ORG` scope if not specified.\n- Set `scope` to `CLUSTER` to export translations from the All-Org context.\n- Returns a `404` error if no translations exist for the targeted org or cluster scope.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "f10d12d5-1388-4457-9b39-8237577806c2", "name": "CSV file downloaded successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/octet-stream" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "export" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "text", "header": [ { "key": "Content-Type", "value": "application/octet-stream" } ], "cookie": [], "responseTime": null, "body": "", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-f10d12d5-1388-4457-9b39-8237577806c2" }, { "id": "2ce9a3f0-3e0a-48e7-86ed-450efa49d971", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "export" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-2ce9a3f0-3e0a-48e7-86ed-450efa49d971" }, { "id": "7a4d70ee-b9aa-4e75-97cf-f87dd081ad25", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "export" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-7a4d70ee-b9aa-4e75-97cf-f87dd081ad25" }, { "id": "9146520b-7368-493e-b985-403a541869ed", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "export" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-9146520b-7368-493e-b985-403a541869ed" }, { "id": "387d4404-b01c-4f18-a20b-82272b2c4485", "name": "No translations file found.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "export" ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-387d4404-b01c-4f18-a20b-82272b2c4485" }, { "id": "35142c1a-b3b7-444d-a0be-a237b015e20c", "name": "Unexpected error.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "export" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-35142c1a-b3b7-444d-a0be-a237b015e20c" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-bd04706d-c595-464c-90c5-44df051d61fa" } ], "id": "5bfd3c36-92a3-4365-998c-55f09b817eab", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-5bfd3c36-92a3-4365-998c-55f09b817eab" }, { "name": "locales", "item": [ { "name": "{locale}", "item": [ { "name": "export", "item": [ { "name": "get Manual Translation Bundle", "id": "d99d41a6-24a6-4471-9425-71e07ece6a84", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/locales/:locale/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "locales", ":locale", "export" ], "variable": [ { "id": "69774ff7-0f6a-4715-a261-e87dd694c676", "key": "locale", "value": "", "description": "(Required) Locale code for which to retrieve translations. For example, `fr-fr`, `de-de`, `JA-JP`." } ] }, "description": "\nGet translations bundle for a locale.
Version: 26.7.0.cl or later\n\nRetrieves all translations for a specific locale as a JSON map.\n\nAvailable to all authenticated users. No additional privileges are required.\n\n#### Usage guidelines\n\n- `locale` parameter must be a hyphenated locale code (for example, `fr-fr`, `de-de`, `JA-JP`).\n- Returns a JSON object with a `translations` map where each key is the original string and each value is the translated string.\n- If the org has no translations for the requested locale, the endpoint falls back to cluster-level translations.\n- Returns an empty `translations` map (not an error) if no entries exist at either level.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "89d3a981-4d17-4b69-a7bb-ab6be71c90ca", "name": "Translation bundle retrieved successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/locales/:locale/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "locales", ":locale", "export" ], "variable": [ { "key": "locale" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-89d3a981-4d17-4b69-a7bb-ab6be71c90ca" }, { "id": "4097225c-34f5-4f36-afce-f3567ed7bd51", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/locales/:locale/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "locales", ":locale", "export" ], "variable": [ { "key": "locale" } ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-4097225c-34f5-4f36-afce-f3567ed7bd51" }, { "id": "6d3b6a5d-b2f8-4078-9e36-194e3f4be46a", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/locales/:locale/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "locales", ":locale", "export" ], "variable": [ { "key": "locale" } ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-6d3b6a5d-b2f8-4078-9e36-194e3f4be46a" }, { "id": "23a37c3c-d1f0-4b87-99c6-0911f9a10f11", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/locales/:locale/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "locales", ":locale", "export" ], "variable": [ { "key": "locale" } ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-23a37c3c-d1f0-4b87-99c6-0911f9a10f11" }, { "id": "f6a42bb9-7210-45d7-a1d5-df4f584d7d76", "name": "No translations found for the requested locale.", "originalRequest": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/locales/:locale/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "locales", ":locale", "export" ], "variable": [ { "key": "locale" } ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-f6a42bb9-7210-45d7-a1d5-df4f584d7d76" }, { "id": "729dbe66-2dc5-4efa-b2f0-ab204b014dba", "name": "Unexpected error.", "originalRequest": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/locales/:locale/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "locales", ":locale", "export" ], "variable": [ { "key": "locale" } ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-729dbe66-2dc5-4efa-b2f0-ab204b014dba" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-d99d41a6-24a6-4471-9425-71e07ece6a84" } ], "id": "8fc385fb-2846-4021-b08c-c6c2617adc32", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-8fc385fb-2846-4021-b08c-c6c2617adc32" } ], "id": "df4c115b-9480-4d4c-986f-0938406c9060", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-df4c115b-9480-4d4c-986f-0938406c9060" } ], "id": "4e6d2121-5b34-44bb-8945-aa0384af0d0e", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-4e6d2121-5b34-44bb-8945-aa0384af0d0e" }, { "name": "import", "item": [ { "name": "import Manual Translations", "id": "e224de98-a899-4fe6-9d6c-95b5e5efb025", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) CSV file containing translations. The file must have three columns:\n`content`, `locale`, `translated-content`. Max file size: 30 MB.\nMax rows: 10,000.", "key": "translations_file", "type": "file", "value": null }, { "description": "Org scope for the import. `ORG` (default) targets the calling\nuser's current org. `CLUSTER` targets the All-Org context. (This can only be one of ORG,CLUSTER)", "key": "scope", "value": "ORG", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/import", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "import" ] }, "description": "\nImport manual translations from a CSV file.
Version: 26.7.0.cl or later\n\nUploads a CSV file containing manual translations and upserts them into the database.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**), `ORG_ADMINISTRATION` (**Can administer Org**), or `APPLICATION_ADMINISTRATION` (**Can administer application**) privilege.\n\n#### Usage guidelines\n\n- The CSV file must have exactly three columns in this order: `content`, `locale`, `translated-content`.\n- Maximum file size: **30 MB**. Maximum rows: **10,000**.\n- Only `.csv` files are accepted.\n- 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.\n- 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.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "ec5b8fe9-aa28-4883-ba47-72965d168d6d", "name": "Successfully imported manual translations.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) CSV file containing translations. The file must have three columns:\n`content`, `locale`, `translated-content`. Max file size: 30 MB.\nMax rows: 10,000.", "key": "translations_file", "type": "file" }, { "description": "Org scope for the import. `ORG` (default) targets the calling\nuser's current org. `CLUSTER` targets the All-Org context. (This can only be one of ORG,CLUSTER)", "key": "scope", "value": "ORG", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/import", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "import" ] } }, "status": "No Content", "code": 204, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-ec5b8fe9-aa28-4883-ba47-72965d168d6d" }, { "id": "b0327f3d-5455-4443-a11e-bcd9b298157a", "name": "Operation failed", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) CSV file containing translations. The file must have three columns:\n`content`, `locale`, `translated-content`. Max file size: 30 MB.\nMax rows: 10,000.", "key": "translations_file", "type": "file" }, { "description": "Org scope for the import. `ORG` (default) targets the calling\nuser's current org. `CLUSTER` targets the All-Org context. (This can only be one of ORG,CLUSTER)", "key": "scope", "value": "ORG", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/import", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "import" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-b0327f3d-5455-4443-a11e-bcd9b298157a" }, { "id": "725d5253-8b46-437d-bdc5-89923eb212dc", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) CSV file containing translations. The file must have three columns:\n`content`, `locale`, `translated-content`. Max file size: 30 MB.\nMax rows: 10,000.", "key": "translations_file", "type": "file" }, { "description": "Org scope for the import. `ORG` (default) targets the calling\nuser's current org. `CLUSTER` targets the All-Org context. (This can only be one of ORG,CLUSTER)", "key": "scope", "value": "ORG", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/import", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "import" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-725d5253-8b46-437d-bdc5-89923eb212dc" }, { "id": "fa73b274-55e0-46d1-9885-0806c598e2eb", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) CSV file containing translations. The file must have three columns:\n`content`, `locale`, `translated-content`. Max file size: 30 MB.\nMax rows: 10,000.", "key": "translations_file", "type": "file" }, { "description": "Org scope for the import. `ORG` (default) targets the calling\nuser's current org. `CLUSTER` targets the All-Org context. (This can only be one of ORG,CLUSTER)", "key": "scope", "value": "ORG", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/import", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "import" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-fa73b274-55e0-46d1-9885-0806c598e2eb" }, { "id": "a4052828-b96e-483c-93cc-212f8b2dd0ef", "name": "Operation failed", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) CSV file containing translations. The file must have three columns:\n`content`, `locale`, `translated-content`. Max file size: 30 MB.\nMax rows: 10,000.", "key": "translations_file", "type": "file" }, { "description": "Org scope for the import. `ORG` (default) targets the calling\nuser's current org. `CLUSTER` targets the All-Org context. (This can only be one of ORG,CLUSTER)", "key": "scope", "value": "ORG", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/localizations/manual-translation/import", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "localizations", "manual-translation", "import" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-a4052828-b96e-483c-93cc-212f8b2dd0ef" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-e224de98-a899-4fe6-9d6c-95b5e5efb025" } ], "id": "5be6c0f2-f399-4361-9d99-d5365c06f64c", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-5be6c0f2-f399-4361-9d99-d5365c06f64c" } ], "id": "7013a83a-f4bf-4867-ad88-e662c5e960ba", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-7013a83a-f4bf-4867-ad88-e662c5e960ba" } ], "id": "58363d92-b928-435f-bd2e-50d382a0f744", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-58363d92-b928-435f-bd2e-50d382a0f744" }, { "name": "customization", "item": [ { "name": "styles", "item": [ { "name": "fonts", "item": [ { "name": "delete", "item": [ { "name": "delete Style Fonts", "id": "cc70a748-8d7e-49b4-a832-69eccc9bd731", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"font_identifiers\": [\n \"\",\n \"\"\n ],\n \"scope\": \"ORG\",\n \"dry_run\": true\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "delete" ] }, "description": "\n Version: 26.7.0.cl or later\n\nDeletes 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.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege.\n\n#### Usage guidelines\n\n- Provide one or more font UUIDs or names in `font_identifiers`.\n- 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.\n- 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.\n- Deletions cannot be undone. Re-upload the font file using `uploadStyleFont` if needed.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "24907b32-5629-4c66-bd2d-d72890c1b58a", "name": "Font deleted successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"font_identifiers\": [\n \"\",\n \"\"\n ],\n \"scope\": \"ORG\",\n \"dry_run\": true\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "delete" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"affected_assignments\": [\n {\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"visualization_areas\": [\n \"CHART_BAR_DATA_LABELS\",\n \"CHART_Y_AXIS_TITLE\"\n ]\n },\n {\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"visualization_areas\": [\n \"CHART_TOOLTIP\",\n \"TABLE_VALUE_CELLS\"\n ]\n }\n ]\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-24907b32-5629-4c66-bd2d-d72890c1b58a" }, { "id": "05465d49-f906-4800-8e1e-ea8694e061bc", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"font_identifiers\": [\n \"\",\n \"\"\n ],\n \"scope\": \"ORG\",\n \"dry_run\": true\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "delete" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-05465d49-f906-4800-8e1e-ea8694e061bc" }, { "id": "786433a1-b4dc-4b06-882f-8ecf3f614e00", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"font_identifiers\": [\n \"\",\n \"\"\n ],\n \"scope\": \"ORG\",\n \"dry_run\": true\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "delete" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-786433a1-b4dc-4b06-882f-8ecf3f614e00" }, { "id": "45140e18-415d-484a-b1e4-f825f990f323", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"font_identifiers\": [\n \"\",\n \"\"\n ],\n \"scope\": \"ORG\",\n \"dry_run\": true\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "delete" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-45140e18-415d-484a-b1e4-f825f990f323" }, { "id": "5ff67496-7e06-4d8d-b94d-fdf2cad0248a", "name": "Unexpected error", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"font_identifiers\": [\n \"\",\n \"\"\n ],\n \"scope\": \"ORG\",\n \"dry_run\": true\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/delete", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "delete" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-5ff67496-7e06-4d8d-b94d-fdf2cad0248a" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-cc70a748-8d7e-49b4-a832-69eccc9bd731" } ], "id": "78c803ae-7e5b-4839-8ab1-71c0e1c3d8ab", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-78c803ae-7e5b-4839-8ab1-71c0e1c3d8ab" }, { "name": "search", "item": [ { "name": "search Style Fonts", "id": "17667267-1427-4022-9491-07b1c9824d8e", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\",\n \"font_identifier\": \"\",\n \"name_pattern\": \"\",\n \"include_font_assignments\": false\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "search" ] }, "description": "\n Version: 26.7.0.cl or later\n\nReturns custom fonts from the cluster-level or org-level font library. Omitting all filter fields returns all fonts in the target scope.\n\nWhen `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`.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege.\n\n#### Usage guidelines\n\n- Set `scope` to `CLUSTER` to search the cluster-level library. Set `scope` to `ORG` (default) to search the authenticated user's org library.\n- Use `font_identifier` to look up a specific font by UUID or name.\n- Use `name_pattern` for partial, case-insensitive name matching.\n- Set `include_font_assignments` to `true` to include visualization areas this font is currently assigned to. Defaults to `false`.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "c7f651d5-3534-4fcd-b943-07b1852c15b9", "name": "Custom fonts retrieved successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\",\n \"font_identifier\": \"\",\n \"name_pattern\": \"\",\n \"include_font_assignments\": false\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "search" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "[\n {\n \"id\": \"\",\n \"name\": \"\",\n \"scope\": \"CLUSTER\",\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"weight\": \"NORMAL\",\n \"style\": \"ITALIC\",\n \"color\": \"\",\n \"creation_time_in_millis\": \"\",\n \"assignments\": [\n {\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"visualization_areas\": [\n \"CHART_TOOLTIP\",\n \"ADVANCED_CHART_LABELS\"\n ]\n },\n {\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"visualization_areas\": [\n \"TABLE_VALUE_CELLS\",\n \"CHART_AREA_DATA_LABELS\"\n ]\n }\n ]\n },\n {\n \"id\": \"\",\n \"name\": \"\",\n \"scope\": \"CLUSTER\",\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"weight\": \"NORMAL\",\n \"style\": \"ITALIC\",\n \"color\": \"\",\n \"creation_time_in_millis\": \"\",\n \"assignments\": [\n {\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"visualization_areas\": [\n \"CHART_Y_AXIS_LABELS\",\n \"CHART_Y_AXIS_TITLE\"\n ]\n },\n {\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"visualization_areas\": [\n \"CHART_Y_AXIS_TITLE\",\n \"CHART_SCATTER_DATA_LABELS\"\n ]\n }\n ]\n }\n]", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-c7f651d5-3534-4fcd-b943-07b1852c15b9" }, { "id": "b9c311d9-cf99-4f58-a075-8d20a94eb677", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\",\n \"font_identifier\": \"\",\n \"name_pattern\": \"\",\n \"include_font_assignments\": false\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "search" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-b9c311d9-cf99-4f58-a075-8d20a94eb677" }, { "id": "249084c8-ec37-41a0-be6b-2fa8c5167992", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\",\n \"font_identifier\": \"\",\n \"name_pattern\": \"\",\n \"include_font_assignments\": false\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "search" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-249084c8-ec37-41a0-be6b-2fa8c5167992" }, { "id": "c06c2fc9-d6f1-4914-863b-ac81d08e5b13", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\",\n \"font_identifier\": \"\",\n \"name_pattern\": \"\",\n \"include_font_assignments\": false\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "search" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-c06c2fc9-d6f1-4914-863b-ac81d08e5b13" }, { "id": "9b44de31-77f4-4d17-97b9-ba0cde93db91", "name": "Unexpected error", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\",\n \"font_identifier\": \"\",\n \"name_pattern\": \"\",\n \"include_font_assignments\": false\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "search" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-9b44de31-77f4-4d17-97b9-ba0cde93db91" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-17667267-1427-4022-9491-07b1c9824d8e" } ], "id": "63761000-2b9b-42b4-8064-c128563b9e62", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-63761000-2b9b-42b4-8064-c128563b9e62" }, { "name": "{font_identifier}", "item": [ { "name": "update", "item": [ { "name": "update Style Font", "id": "5d297802-55b9-4909-ada0-00eee2ffc330", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\",\n \"name\": \"\",\n \"weight\": \"BOLD\",\n \"style\": \"OBLIQUE\",\n \"color\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/:font_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", ":font_identifier", "update" ], "variable": [ { "id": "7c33f5c2-733d-4850-a547-1eb0a1b6888d", "key": "font_identifier", "value": "", "description": "(Required) UUID or name of the font to update." } ] }, "description": "\n Version: 26.7.0.cl or later\n\nUpdates 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.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege.\n\n#### Usage guidelines\n\n- Identify the font using `font_identifier` (UUID or name).\n- Set `scope` to `CLUSTER` to target the cluster-level library. Set `scope` to `ORG` (default) to target the authenticated user's org library.\n- To replace the font file itself (WOFF/WOFF2 binary), delete the existing font and re-upload using `uploadStyleFont`.\n- `color` must be a valid 6-digit hex string (e.g. `#333333`) if provided.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "061adf11-9d34-472d-892d-109b3a562462", "name": "Font metadata updated successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\",\n \"name\": \"\",\n \"weight\": \"BOLD\",\n \"style\": \"OBLIQUE\",\n \"color\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/:font_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", ":font_identifier", "update" ], "variable": [ { "key": "font_identifier" } ] } }, "status": "No Content", "code": 204, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-061adf11-9d34-472d-892d-109b3a562462" }, { "id": "2355ccc9-37c0-41fd-b574-d1b21824d5f9", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\",\n \"name\": \"\",\n \"weight\": \"BOLD\",\n \"style\": \"OBLIQUE\",\n \"color\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/:font_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", ":font_identifier", "update" ], "variable": [ { "key": "font_identifier" } ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-2355ccc9-37c0-41fd-b574-d1b21824d5f9" }, { "id": "8e940242-7449-4ffb-a286-14a2f6cc68b6", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\",\n \"name\": \"\",\n \"weight\": \"BOLD\",\n \"style\": \"OBLIQUE\",\n \"color\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/:font_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", ":font_identifier", "update" ], "variable": [ { "key": "font_identifier" } ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-8e940242-7449-4ffb-a286-14a2f6cc68b6" }, { "id": "a61ae705-559e-48f7-91cf-4d946dcc18f5", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\",\n \"name\": \"\",\n \"weight\": \"BOLD\",\n \"style\": \"OBLIQUE\",\n \"color\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/:font_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", ":font_identifier", "update" ], "variable": [ { "key": "font_identifier" } ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-a61ae705-559e-48f7-91cf-4d946dcc18f5" }, { "id": "a7fec02b-6936-4c1c-af0b-da37a430f6ec", "name": "Unexpected error.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\",\n \"name\": \"\",\n \"weight\": \"BOLD\",\n \"style\": \"OBLIQUE\",\n \"color\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/:font_identifier/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", ":font_identifier", "update" ], "variable": [ { "key": "font_identifier" } ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-a7fec02b-6936-4c1c-af0b-da37a430f6ec" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-5d297802-55b9-4909-ada0-00eee2ffc330" } ], "id": "2cff3bc1-450c-4611-b813-89c2d0e0cf8b", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-2cff3bc1-450c-4611-b813-89c2d0e0cf8b" } ], "id": "c57301cd-33bc-4f79-a489-cf27a407b604", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-c57301cd-33bc-4f79-a489-cf27a407b604" }, { "name": "upload", "item": [ { "name": "upload Style Font", "id": "7c449913-a0ef-4fc4-954f-d4d2055d7e0a", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Display name for the font (e.g. \"Acme Sans\").", "key": "name", "value": "", "type": "text" }, { "description": "(Required) Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats\nare accepted; TTF and OTF are rejected. The file is validated on upload.", "key": "file_content", "type": "file", "value": null }, { "description": "Scope of the font library to upload to. CLUSTER uploads to the\ncluster-level library, making the font available as a default for all\norgs. ORG uploads to the authenticated user's org library. Defaults to\nORG if omitted. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to\nNORMAL if omitted. (This can only be one of NORMAL,LIGHT,BOLD)", "key": "weight", "value": "NORMAL", "type": "text" }, { "description": "Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults\nto NORMAL if omitted. (This can only be one of NORMAL,ITALIC,OBLIQUE)", "key": "style", "value": "NORMAL", "type": "text" }, { "description": "Color of the font as a 6-digit hex string (e.g. \"#333333\"). Defaults to\n#000000 (black) if omitted. Returns an error if the value is malformed.", "key": "color", "value": "", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/upload", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "upload" ] }, "description": "\n Version: 26.7.0.cl or later\n\nUploads 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.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege.\n\n#### Usage guidelines\n\n- Only **WOFF** and **WOFF2** font formats are accepted. TTF and OTF files are rejected with an error.\n- 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.\n- `weight` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `LIGHT`, `BOLD`.\n- `style` defaults to `NORMAL` if omitted. Supported values: `NORMAL`, `ITALIC`, `OBLIQUE`.\n- `color` defaults to `#000000` (black) if omitted. Provide as a 6-digit hex string (e.g. `#333333`).\n- The uploaded font can be assigned to visualization areas using the `updateStyleCustomization` endpoint.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "f2c8b3b0-1e0c-4166-bc04-44cdec47964c", "name": "Font uploaded successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Display name for the font (e.g. \"Acme Sans\").", "key": "name", "value": "", "type": "text" }, { "description": "(Required) Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats\nare accepted; TTF and OTF are rejected. The file is validated on upload.", "key": "file_content", "type": "file" }, { "description": "Scope of the font library to upload to. CLUSTER uploads to the\ncluster-level library, making the font available as a default for all\norgs. ORG uploads to the authenticated user's org library. Defaults to\nORG if omitted. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to\nNORMAL if omitted. (This can only be one of NORMAL,LIGHT,BOLD)", "key": "weight", "value": "NORMAL", "type": "text" }, { "description": "Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults\nto NORMAL if omitted. (This can only be one of NORMAL,ITALIC,OBLIQUE)", "key": "style", "value": "NORMAL", "type": "text" }, { "description": "Color of the font as a 6-digit hex string (e.g. \"#333333\"). Defaults to\n#000000 (black) if omitted. Returns an error if the value is malformed.", "key": "color", "value": "", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/upload", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "upload" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"id\": \"\",\n \"name\": \"\"\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-f2c8b3b0-1e0c-4166-bc04-44cdec47964c" }, { "id": "eabe0b1d-f293-4ba2-8822-f1fa396e231d", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Display name for the font (e.g. \"Acme Sans\").", "key": "name", "value": "", "type": "text" }, { "description": "(Required) Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats\nare accepted; TTF and OTF are rejected. The file is validated on upload.", "key": "file_content", "type": "file" }, { "description": "Scope of the font library to upload to. CLUSTER uploads to the\ncluster-level library, making the font available as a default for all\norgs. ORG uploads to the authenticated user's org library. Defaults to\nORG if omitted. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to\nNORMAL if omitted. (This can only be one of NORMAL,LIGHT,BOLD)", "key": "weight", "value": "NORMAL", "type": "text" }, { "description": "Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults\nto NORMAL if omitted. (This can only be one of NORMAL,ITALIC,OBLIQUE)", "key": "style", "value": "NORMAL", "type": "text" }, { "description": "Color of the font as a 6-digit hex string (e.g. \"#333333\"). Defaults to\n#000000 (black) if omitted. Returns an error if the value is malformed.", "key": "color", "value": "", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/upload", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "upload" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-eabe0b1d-f293-4ba2-8822-f1fa396e231d" }, { "id": "7b185513-3d89-4ef8-a500-824b01bdf55b", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Display name for the font (e.g. \"Acme Sans\").", "key": "name", "value": "", "type": "text" }, { "description": "(Required) Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats\nare accepted; TTF and OTF are rejected. The file is validated on upload.", "key": "file_content", "type": "file" }, { "description": "Scope of the font library to upload to. CLUSTER uploads to the\ncluster-level library, making the font available as a default for all\norgs. ORG uploads to the authenticated user's org library. Defaults to\nORG if omitted. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to\nNORMAL if omitted. (This can only be one of NORMAL,LIGHT,BOLD)", "key": "weight", "value": "NORMAL", "type": "text" }, { "description": "Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults\nto NORMAL if omitted. (This can only be one of NORMAL,ITALIC,OBLIQUE)", "key": "style", "value": "NORMAL", "type": "text" }, { "description": "Color of the font as a 6-digit hex string (e.g. \"#333333\"). Defaults to\n#000000 (black) if omitted. Returns an error if the value is malformed.", "key": "color", "value": "", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/upload", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "upload" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-7b185513-3d89-4ef8-a500-824b01bdf55b" }, { "id": "c705db2c-6453-4487-b743-52516b16e464", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Display name for the font (e.g. \"Acme Sans\").", "key": "name", "value": "", "type": "text" }, { "description": "(Required) Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats\nare accepted; TTF and OTF are rejected. The file is validated on upload.", "key": "file_content", "type": "file" }, { "description": "Scope of the font library to upload to. CLUSTER uploads to the\ncluster-level library, making the font available as a default for all\norgs. ORG uploads to the authenticated user's org library. Defaults to\nORG if omitted. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to\nNORMAL if omitted. (This can only be one of NORMAL,LIGHT,BOLD)", "key": "weight", "value": "NORMAL", "type": "text" }, { "description": "Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults\nto NORMAL if omitted. (This can only be one of NORMAL,ITALIC,OBLIQUE)", "key": "style", "value": "NORMAL", "type": "text" }, { "description": "Color of the font as a 6-digit hex string (e.g. \"#333333\"). Defaults to\n#000000 (black) if omitted. Returns an error if the value is malformed.", "key": "color", "value": "", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/upload", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "upload" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-c705db2c-6453-4487-b743-52516b16e464" }, { "id": "8c17cd7e-8e57-450f-aea7-71cd7299c3e0", "name": "Unexpected error", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Display name for the font (e.g. \"Acme Sans\").", "key": "name", "value": "", "type": "text" }, { "description": "(Required) Binary WOFF or WOFF2 font file to upload. Only WOFF and WOFF2 formats\nare accepted; TTF and OTF are rejected. The file is validated on upload.", "key": "file_content", "type": "file" }, { "description": "Scope of the font library to upload to. CLUSTER uploads to the\ncluster-level library, making the font available as a default for all\norgs. ORG uploads to the authenticated user's org library. Defaults to\nORG if omitted. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Weight of the font. Supported values: NORMAL, LIGHT, BOLD. Defaults to\nNORMAL if omitted. (This can only be one of NORMAL,LIGHT,BOLD)", "key": "weight", "value": "NORMAL", "type": "text" }, { "description": "Style of the font. Supported values: NORMAL, ITALIC, OBLIQUE. Defaults\nto NORMAL if omitted. (This can only be one of NORMAL,ITALIC,OBLIQUE)", "key": "style", "value": "NORMAL", "type": "text" }, { "description": "Color of the font as a 6-digit hex string (e.g. \"#333333\"). Defaults to\n#000000 (black) if omitted. Returns an error if the value is malformed.", "key": "color", "value": "", "type": "text" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/fonts/upload", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "fonts", "upload" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-8c17cd7e-8e57-450f-aea7-71cd7299c3e0" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-7c449913-a0ef-4fc4-954f-d4d2055d7e0a" } ], "id": "346f651f-cc91-44cc-b78d-5b24ab6cf059", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-346f651f-cc91-44cc-b78d-5b24ab6cf059" } ], "id": "9511a287-98c7-446b-aa3c-4a4acc99cca8", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-9511a287-98c7-446b-aa3c-4a4acc99cca8" }, { "name": "logos", "item": [ { "name": "export", "item": [ { "name": "export Style Logos", "id": "95de21ff-b6fe-4189-9669-f4be9eed02aa", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/zip" } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/logos/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "logos", "export" ] }, "description": "\n Version: 26.7.0.cl or later\n\nDownloads 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.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege.\n\n#### Usage guidelines\n\n- Set `scope` to `CLUSTER` to download cluster-level logos.\n- Set `scope` to `ORG` (default) to download logos for the authenticated user's org.\n- The response is a ZIP archive (`application/zip`). Save the response body directly to a `.zip` file.\n- The archive always contains two files \u2014 one for the DEFAULT slot and one for the WIDE slot \u2014 even if no custom logo is set at the requested scope.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "6191dac1-7170-4965-91a1-59a7ab4e35a5", "name": "Logo ZIP archive retrieved successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/zip" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/logos/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "logos", "export" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "text", "header": [ { "key": "Content-Type", "value": "application/zip" } ], "cookie": [], "responseTime": null, "body": "", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-6191dac1-7170-4965-91a1-59a7ab4e35a5" }, { "id": "fc3b2b7b-fb7b-40ea-9b92-f08c869600e4", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/logos/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "logos", "export" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-fc3b2b7b-fb7b-40ea-9b92-f08c869600e4" }, { "id": "35003699-29f6-4cf5-ac74-889e2b13a0b7", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/logos/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "logos", "export" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-35003699-29f6-4cf5-ac74-889e2b13a0b7" }, { "id": "25faffba-5b41-439f-a777-a937bacbf451", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/logos/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "logos", "export" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-25faffba-5b41-439f-a777-a937bacbf451" }, { "id": "059cd999-ef95-4214-a314-e1d5a4c3e3df", "name": "Unexpected error", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"ORG\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/logos/export", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "logos", "export" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-059cd999-ef95-4214-a314-e1d5a4c3e3df" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-95de21ff-b6fe-4189-9669-f4be9eed02aa" } ], "id": "5c58a616-80f5-424f-a01b-8125833ca230", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-5c58a616-80f5-424f-a01b-8125833ca230" } ], "id": "0dd7a6c9-36f8-424a-8404-c62601cc2290", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-0dd7a6c9-36f8-424a-8404-c62601cc2290" }, { "name": "search", "item": [ { "name": "search Style Customizations", "id": "a1b8f6a3-ef6d-4a89-b148-61bbee22b94d", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "search" ] }, "description": "\n Version: 26.7.0.cl or later\n\nRetrieves 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.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege.\n\n#### Usage guidelines\n\n- Set `scope` to `CLUSTER` to retrieve cluster-level style defaults.\n- Set `scope` to `ORG` (default) to retrieve preferences for the authenticated user's org.\n- 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).\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "4ce2651a-f4e9-4602-96cf-8d28f92542d4", "name": "Style preferences retrieved successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "search" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "[\n {\n \"scope\": \"ORG\",\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"navigation_panel\": {\n \"theme\": \"CUSTOM\",\n \"base_color\": \"\",\n \"is_overridden\": \"\"\n },\n \"chart_color_palette\": {\n \"colors\": [\n {\n \"primary\": \"\",\n \"secondary\": [\n \"\",\n \"\"\n ]\n },\n {\n \"primary\": \"\",\n \"secondary\": [\n \"\",\n \"\"\n ]\n }\n ],\n \"disable_color_rotation\": \"\",\n \"is_overridden\": \"\"\n },\n \"embedded_footer_text\": {\n \"value\": \"\",\n \"is_overridden\": \"\"\n },\n \"logo\": {\n \"default_logo\": {\n \"id\": \"\",\n \"is_overridden\": \"\"\n },\n \"wide_logo\": {\n \"id\": \"\",\n \"is_overridden\": \"\"\n }\n },\n \"visualization_fonts\": {\n \"chart_visualization_fonts\": [\n {\n \"visualization_area\": \"CHART_AREA_DATA_LABELS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n },\n {\n \"visualization_area\": \"CHART_X_AXIS_LABELS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n }\n ],\n \"table_visualization_fonts\": [\n {\n \"visualization_area\": \"TABLE_VALUE_CELLS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n },\n {\n \"visualization_area\": \"TABLE_VALUE_CELLS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n }\n ],\n \"advanced_chart_visualization_fonts\": [\n {\n \"visualization_area\": \"ADVANCED_CHART_LABELS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n },\n {\n \"visualization_area\": \"ADVANCED_CHART_LABELS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n }\n ]\n }\n },\n {\n \"scope\": \"ORG\",\n \"org\": {\n \"id\": \"\",\n \"name\": \"\"\n },\n \"navigation_panel\": {\n \"theme\": \"TWO_TONE\",\n \"base_color\": \"\",\n \"is_overridden\": \"\"\n },\n \"chart_color_palette\": {\n \"colors\": [\n {\n \"primary\": \"\",\n \"secondary\": [\n \"\",\n \"\"\n ]\n },\n {\n \"primary\": \"\",\n \"secondary\": [\n \"\",\n \"\"\n ]\n }\n ],\n \"disable_color_rotation\": \"\",\n \"is_overridden\": \"\"\n },\n \"embedded_footer_text\": {\n \"value\": \"\",\n \"is_overridden\": \"\"\n },\n \"logo\": {\n \"default_logo\": {\n \"id\": \"\",\n \"is_overridden\": \"\"\n },\n \"wide_logo\": {\n \"id\": \"\",\n \"is_overridden\": \"\"\n }\n },\n \"visualization_fonts\": {\n \"chart_visualization_fonts\": [\n {\n \"visualization_area\": \"CHART_X_AXIS_LABELS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n },\n {\n \"visualization_area\": \"CHART_Y_AXIS_LABELS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n }\n ],\n \"table_visualization_fonts\": [\n {\n \"visualization_area\": \"TABLE_VALUE_CELLS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n },\n {\n \"visualization_area\": \"TABLE_VALUE_CELLS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n }\n ],\n \"advanced_chart_visualization_fonts\": [\n {\n \"visualization_area\": \"ADVANCED_CHART_LABELS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n },\n {\n \"visualization_area\": \"ADVANCED_CHART_LABELS\",\n \"font_id\": \"\",\n \"font_name\": \"\",\n \"is_overridden\": \"\"\n }\n ]\n }\n }\n]", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-4ce2651a-f4e9-4602-96cf-8d28f92542d4" }, { "id": "4f0d5682-614e-4f48-9082-1bf3c5c8e122", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "search" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-4f0d5682-614e-4f48-9082-1bf3c5c8e122" }, { "id": "044083b6-06b7-47ba-94c3-c8311c6b10b6", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "search" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-044083b6-06b7-47ba-94c3-c8311c6b10b6" }, { "id": "7163142d-9b43-4d77-b13b-591102171331", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "search" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-7163142d-9b43-4d77-b13b-591102171331" }, { "id": "98de8846-0af4-423f-a545-3a99ec03280a", "name": "Unexpected error", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"scope\": \"CLUSTER\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/search", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "search" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-98de8846-0af4-423f-a545-3a99ec03280a" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-a1b8f6a3-ef6d-4a89-b148-61bbee22b94d" } ], "id": "03091942-5823-49ed-9bbd-8042c9dff096", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-03091942-5823-49ed-9bbd-8042c9dff096" }, { "name": "update", "item": [ { "name": "update Style Customization", "id": "56f2079e-14a2-4e20-a731-b137a427d80a", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Scope at which to apply the preferences. CLUSTER sets cluster-level\ndefaults for all orgs. ORG applies to the authenticated user's org. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Operation to perform. REPLACE (default) applies the provided fields and\nleaves omitted fields unchanged. RESET reverts fields listed in\nreset_options to defaults. (This can only be one of REPLACE,RESET)", "key": "operation", "value": "REPLACE", "type": "text" }, { "description": "Fields to reset when operation is RESET. Specify style fields and\nvisualization areas to revert to defaults.", "key": "reset_options", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Navigation panel color. Provide theme and, when theme is CUSTOM, also\nprovide base_color.", "key": "navigation_panel", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Chart color palette. When provided with operation REPLACE, exactly 8\ncolor entries must be specified in colors.", "key": "chart_color_palette", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Custom footer text for the embedded application. An empty\nstring clears the footer.", "key": "embedded_footer_text", "value": "", "type": "text" }, { "description": "Font assignments per visualization area. Provide only the areas to\nupdate; omitted areas remain unchanged.", "key": "visualization_fonts", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Binary image for the DEFAULT logo slot (square app icon and favicon;\nrecommended 140x140 px). Accepted formats: PNG, JPG.", "key": "default_logo", "type": "file", "value": null }, { "description": "Binary image for the WIDE logo slot (horizontal top nav bar logo;\nrecommended 230x45 px). Accepted formats: PNG, JPG.", "key": "wide_logo", "type": "file", "value": null } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "update" ] }, "description": "\n Version: 26.7.0.cl or later\n\nUpdates 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.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege.\n\n#### Usage guidelines\n\nTwo operations are supported via the `operation` field:\n\n- **REPLACE** (default): Applies the fields provided in the request. Omitted fields remain unchanged.\n- **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.\n\n#### Logo upload\n\nLogo files are uploaded as binary fields using `multipart/form-data`:\n\n- `default_logo`: Square app icon and favicon. Recommended size: 140\u00d7140 px. Accepted formats: PNG, JPG.\n- `wide_logo`: Horizontal top nav bar logo. Recommended size: 230\u00d745 px. Accepted formats: PNG, JPG.\n\nTo reset a logo to the default, use `operation: RESET` with `reset_options.style` set to `DEFAULT_LOGO` or `WIDE_LOGO`.\n\n#### Navigation panel color\n\nSet `navigation_panel.theme` to one of:\n\n- `DARK`: Default dark theme.\n- `TWO_TONE`: Dual-tone panel style.\n- `CUSTOM`: User-defined color. Provide `navigation_panel.base_color` as a 6-digit hex string (e.g. `#2359B6`).\n\n#### Chart color palette\n\nProvide 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.\n\n#### Font assignments\n\nSpecify `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.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "30f805a9-d9c8-4fc1-9e8b-933929678984", "name": "Style preferences updated successfully.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Scope at which to apply the preferences. CLUSTER sets cluster-level\ndefaults for all orgs. ORG applies to the authenticated user's org. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Operation to perform. REPLACE (default) applies the provided fields and\nleaves omitted fields unchanged. RESET reverts fields listed in\nreset_options to defaults. (This can only be one of REPLACE,RESET)", "key": "operation", "value": "REPLACE", "type": "text" }, { "description": "Fields to reset when operation is RESET. Specify style fields and\nvisualization areas to revert to defaults.", "key": "reset_options", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Navigation panel color. Provide theme and, when theme is CUSTOM, also\nprovide base_color.", "key": "navigation_panel", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Chart color palette. When provided with operation REPLACE, exactly 8\ncolor entries must be specified in colors.", "key": "chart_color_palette", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Custom footer text for the embedded application. An empty\nstring clears the footer.", "key": "embedded_footer_text", "value": "", "type": "text" }, { "description": "Font assignments per visualization area. Provide only the areas to\nupdate; omitted areas remain unchanged.", "key": "visualization_fonts", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Binary image for the DEFAULT logo slot (square app icon and favicon;\nrecommended 140x140 px). Accepted formats: PNG, JPG.", "key": "default_logo", "type": "file" }, { "description": "Binary image for the WIDE logo slot (horizontal top nav bar logo;\nrecommended 230x45 px). Accepted formats: PNG, JPG.", "key": "wide_logo", "type": "file" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "update" ] } }, "status": "No Content", "code": 204, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-30f805a9-d9c8-4fc1-9e8b-933929678984" }, { "id": "f8829eaa-9d65-4836-ab75-bb9042ec9f9e", "name": "Invalid request.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Scope at which to apply the preferences. CLUSTER sets cluster-level\ndefaults for all orgs. ORG applies to the authenticated user's org. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Operation to perform. REPLACE (default) applies the provided fields and\nleaves omitted fields unchanged. RESET reverts fields listed in\nreset_options to defaults. (This can only be one of REPLACE,RESET)", "key": "operation", "value": "REPLACE", "type": "text" }, { "description": "Fields to reset when operation is RESET. Specify style fields and\nvisualization areas to revert to defaults.", "key": "reset_options", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Navigation panel color. Provide theme and, when theme is CUSTOM, also\nprovide base_color.", "key": "navigation_panel", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Chart color palette. When provided with operation REPLACE, exactly 8\ncolor entries must be specified in colors.", "key": "chart_color_palette", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Custom footer text for the embedded application. An empty\nstring clears the footer.", "key": "embedded_footer_text", "value": "", "type": "text" }, { "description": "Font assignments per visualization area. Provide only the areas to\nupdate; omitted areas remain unchanged.", "key": "visualization_fonts", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Binary image for the DEFAULT logo slot (square app icon and favicon;\nrecommended 140x140 px). Accepted formats: PNG, JPG.", "key": "default_logo", "type": "file" }, { "description": "Binary image for the WIDE logo slot (horizontal top nav bar logo;\nrecommended 230x45 px). Accepted formats: PNG, JPG.", "key": "wide_logo", "type": "file" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "update" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-f8829eaa-9d65-4836-ab75-bb9042ec9f9e" }, { "id": "5995ca79-46d4-419b-b7ed-a36a4937b094", "name": "Unauthorized access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Scope at which to apply the preferences. CLUSTER sets cluster-level\ndefaults for all orgs. ORG applies to the authenticated user's org. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Operation to perform. REPLACE (default) applies the provided fields and\nleaves omitted fields unchanged. RESET reverts fields listed in\nreset_options to defaults. (This can only be one of REPLACE,RESET)", "key": "operation", "value": "REPLACE", "type": "text" }, { "description": "Fields to reset when operation is RESET. Specify style fields and\nvisualization areas to revert to defaults.", "key": "reset_options", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Navigation panel color. Provide theme and, when theme is CUSTOM, also\nprovide base_color.", "key": "navigation_panel", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Chart color palette. When provided with operation REPLACE, exactly 8\ncolor entries must be specified in colors.", "key": "chart_color_palette", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Custom footer text for the embedded application. An empty\nstring clears the footer.", "key": "embedded_footer_text", "value": "", "type": "text" }, { "description": "Font assignments per visualization area. Provide only the areas to\nupdate; omitted areas remain unchanged.", "key": "visualization_fonts", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Binary image for the DEFAULT logo slot (square app icon and favicon;\nrecommended 140x140 px). Accepted formats: PNG, JPG.", "key": "default_logo", "type": "file" }, { "description": "Binary image for the WIDE logo slot (horizontal top nav bar logo;\nrecommended 230x45 px). Accepted formats: PNG, JPG.", "key": "wide_logo", "type": "file" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "update" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-5995ca79-46d4-419b-b7ed-a36a4937b094" }, { "id": "e7afcb15-025e-4882-9a68-62c47500fea4", "name": "Forbidden access.", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Scope at which to apply the preferences. CLUSTER sets cluster-level\ndefaults for all orgs. ORG applies to the authenticated user's org. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Operation to perform. REPLACE (default) applies the provided fields and\nleaves omitted fields unchanged. RESET reverts fields listed in\nreset_options to defaults. (This can only be one of REPLACE,RESET)", "key": "operation", "value": "REPLACE", "type": "text" }, { "description": "Fields to reset when operation is RESET. Specify style fields and\nvisualization areas to revert to defaults.", "key": "reset_options", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Navigation panel color. Provide theme and, when theme is CUSTOM, also\nprovide base_color.", "key": "navigation_panel", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Chart color palette. When provided with operation REPLACE, exactly 8\ncolor entries must be specified in colors.", "key": "chart_color_palette", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Custom footer text for the embedded application. An empty\nstring clears the footer.", "key": "embedded_footer_text", "value": "", "type": "text" }, { "description": "Font assignments per visualization area. Provide only the areas to\nupdate; omitted areas remain unchanged.", "key": "visualization_fonts", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Binary image for the DEFAULT logo slot (square app icon and favicon;\nrecommended 140x140 px). Accepted formats: PNG, JPG.", "key": "default_logo", "type": "file" }, { "description": "Binary image for the WIDE logo slot (horizontal top nav bar logo;\nrecommended 230x45 px). Accepted formats: PNG, JPG.", "key": "wide_logo", "type": "file" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "update" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-e7afcb15-025e-4882-9a68-62c47500fea4" }, { "id": "ca3d5029-f46a-4fe0-a97a-4179ef240620", "name": "Unexpected error", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "multipart/form-data" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "formdata", "formdata": [ { "description": "(Required) Scope at which to apply the preferences. CLUSTER sets cluster-level\ndefaults for all orgs. ORG applies to the authenticated user's org. (This can only be one of CLUSTER,ORG)", "key": "scope", "value": "ORG", "type": "text" }, { "description": "Operation to perform. REPLACE (default) applies the provided fields and\nleaves omitted fields unchanged. RESET reverts fields listed in\nreset_options to defaults. (This can only be one of REPLACE,RESET)", "key": "operation", "value": "REPLACE", "type": "text" }, { "description": "Fields to reset when operation is RESET. Specify style fields and\nvisualization areas to revert to defaults.", "key": "reset_options", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Navigation panel color. Provide theme and, when theme is CUSTOM, also\nprovide base_color.", "key": "navigation_panel", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Chart color palette. When provided with operation REPLACE, exactly 8\ncolor entries must be specified in colors.", "key": "chart_color_palette", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Custom footer text for the embedded application. An empty\nstring clears the footer.", "key": "embedded_footer_text", "value": "", "type": "text" }, { "description": "Font assignments per visualization area. Provide only the areas to\nupdate; omitted areas remain unchanged.", "key": "visualization_fonts", "value": "[object Object]", "type": "text", "contentType": "application/json" }, { "description": "Binary image for the DEFAULT logo slot (square app icon and favicon;\nrecommended 140x140 px). Accepted formats: PNG, JPG.", "key": "default_logo", "type": "file" }, { "description": "Binary image for the WIDE logo slot (horizontal top nav bar logo;\nrecommended 230x45 px). Accepted formats: PNG, JPG.", "key": "wide_logo", "type": "file" } ] }, "url": { "raw": "{{baseUrl}}/api/rest/2.0/customization/styles/update", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "customization", "styles", "update" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-ca3d5029-f46a-4fe0-a97a-4179ef240620" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-56f2079e-14a2-4e20-a731-b137a427d80a" } ], "id": "f38af48c-f99a-4b3a-920e-8a720bb1eb63", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-f38af48c-f99a-4b3a-920e-8a720bb1eb63" } ], "id": "59c5046e-ab78-4872-a3eb-b166614831a6", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-59c5046e-ab78-4872-a3eb-b166614831a6" } ], "id": "967e0cbe-c606-422b-9fcd-cb8f11694c19", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-967e0cbe-c606-422b-9fcd-cb8f11694c19" }, { "name": "webhooks", "item": [ { "name": "storage-config", "item": [ { "name": "get Webhook Storage Config", "id": "8f4df59f-b6bd-46a8-812c-c4122e35393b", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/webhooks/storage-config", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "webhooks", "storage-config" ] }, "description": "\n Version: 26.7.0.cl or later\n\nReturns 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.\n\nRequires `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.\n\n\n\n\n#### Endpoint URL\n" }, "response": [ { "id": "8feb33a7-16eb-4b7a-bcf3-a89cb3c3eb34", "name": "Storage setup information retrieved successfully", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/webhooks/storage-config", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "webhooks", "storage-config" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "[\n {\n \"storage_type\": \"OBJECT_STORAGE\",\n \"provider\": \"AWS_S3\",\n \"config\": {\n \"config_type\": \"GCP_TO_GCS_STORAGE\",\n \"setup_instructions\": [\n \"\",\n \"\"\n ],\n \"aws_account_id\": \"\",\n \"gcp_service_account_id\": \"\",\n \"oidc_provider\": \"\",\n \"trust_policy_template\": {},\n \"service_account_email\": \"\",\n \"required_role\": \"\"\n }\n },\n {\n \"storage_type\": \"OBJECT_STORAGE\",\n \"provider\": \"GCP_GCS\",\n \"config\": {\n \"config_type\": \"AWS_TO_S3_STORAGE\",\n \"setup_instructions\": [\n \"\",\n \"\"\n ],\n \"aws_account_id\": \"\",\n \"gcp_service_account_id\": \"\",\n \"oidc_provider\": \"\",\n \"trust_policy_template\": {},\n \"service_account_email\": \"\",\n \"required_role\": \"\"\n }\n }\n]", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-8feb33a7-16eb-4b7a-bcf3-a89cb3c3eb34" }, { "id": "dd82a445-9706-4cf3-90b2-f7be5813941b", "name": "Invalid request.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/webhooks/storage-config", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "webhooks", "storage-config" ] } }, "status": "Bad Request", "code": 400, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-dd82a445-9706-4cf3-90b2-f7be5813941b" }, { "id": "ef96a017-f0c5-4de1-a0da-d25c7bc1099a", "name": "Unauthorized access.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/webhooks/storage-config", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "webhooks", "storage-config" ] } }, "status": "Unauthorized", "code": 401, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-ef96a017-f0c5-4de1-a0da-d25c7bc1099a" }, { "id": "a3c67260-22eb-4f2c-9f27-7316ce88dde6", "name": "Forbidden access.", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/webhooks/storage-config", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "webhooks", "storage-config" ] } }, "status": "Forbidden", "code": 403, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-a3c67260-22eb-4f2c-9f27-7316ce88dde6" }, { "id": "45259d67-8781-4aa5-8061-fb8e3e3f3a6a", "name": "Unexpected error", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/api/rest/2.0/webhooks/storage-config", "host": [ "{{baseUrl}}" ], "path": [ "api", "rest", "2.0", "webhooks", "storage-config" ] } }, "status": "Internal Server Error", "code": 500, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"error\": {}\n}", "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-45259d67-8781-4aa5-8061-fb8e3e3f3a6a" } ], "createdAt": "2026-07-28T03:14:00.000Z", "updatedAt": "2026-07-28T03:14:00.000Z", "uid": "35240-8f4df59f-b6bd-46a8-812c-c4122e35393b" } ], "id": "cef3b124-f32d-4b92-9e39-f6ff8b9894ed", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-cef3b124-f32d-4b92-9e39-f6ff8b9894ed" } ], "id": "ae2fd854-76fb-44e9-b0b5-5209972537d4", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-ae2fd854-76fb-44e9-b0b5-5209972537d4" } ], "id": "73894030-e4da-4255-9ba7-69c21568a950", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-73894030-e4da-4255-9ba7-69c21568a950" } ], "id": "10c22a65-2fa6-494c-aaee-e41db2eeaee3", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-10c22a65-2fa6-494c-aaee-e41db2eeaee3" } ], "id": "17e25202-bcae-43ff-b2b3-62e0b7f1c849", "createdAt": "2026-07-28T03:13:59.000Z", "updatedAt": "2026-07-28T03:13:59.000Z", "uid": "35240-17e25202-bcae-43ff-b2b3-62e0b7f1c849" } ], "auth": { "type": "bearer", "bearer": [ { "key": "token", "value": "{{bearerToken}}", "type": "string" } ] }, "variable": [ { "key": "base-url", "value": "https://localhost:443" }, { "key": "baseUrl", "value": "{{base-url}}" } ] }