ThoughtSpot 10.14.0.cl API

The 10.14.0.cl API from ThoughtSpot — 8 operation(s) for 10.14.0.cl.

Documentation

Specifications

Other Resources

OpenAPI Specification

thoughtspot-10-14-0-cl-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: ThoughtSpot Public REST 10.1.0.cl 10.14.0.cl API
  version: '2.0'
servers:
- url: '{base-url}'
  variables:
    base-url:
      default: https://localhost:443
security:
- bearerAuth: []
tags:
- name: 10.14.0.cl
paths:
  /api/rest/2.0/system/preferences/communication-channels/configure:
    post:
      operationId: configureCommunicationChannelPreferences
      description: '

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


        Configure communication channel preferences.

        - Use `cluster_preferences` to update the default preferences for your ThoughtSpot application instance.

        - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to specify Org-specific preferences that override the defaults.


        Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action.





        #### Endpoint URL

        '
      tags:
      - 10.14.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigureCommunicationChannelPreferencesRequest'
        required: true
      parameters: []
      responses:
        '204':
          description: Communication channel preferences successfully updated.
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid_request:
                  summary: Invalid request
                  value:
                    error:
                      message:
                        code: 10002
                        incident_id_guid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                        trace_id_guid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                        debug: RESET operation requires reset_events to be specified.
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized_access:
                  summary: Unauthorized access
                  value:
                    error:
                      message:
                        code: 10097
                        incident_id_guid: b2c3d4e5-f678-9012-bcde-f23456789012
                        trace_id_guid: b2c3d4e5-f678-9012-bcde-f23456789012
                        debug: Authentication required to configure communication channel preferences.
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                forbidden_access:
                  summary: Forbidden access
                  value:
                    error:
                      message:
                        code: 10023
                        incident_id_guid: c3d4e5f6-7890-1234-cdef-345678901234
                        trace_id_guid: c3d4e5f6-7890-1234-cdef-345678901234
                        debug: ADMINISTRATION privilege required to configure cluster-level communication channel preferences.
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unexpected_error:
                  summary: Unexpected error
                  value:
                    error:
                      message:
                        code: 10038
                        incident_id_guid: d4e5f678-9012-3456-defa-456789012345
                        trace_id_guid: d4e5f678-9012-3456-defa-456789012345
                        debug: Unexpected server error while configuring communication channel preferences.
  /api/rest/2.0/system/preferences/communication-channels/search:
    post:
      operationId: searchCommunicationChannelPreferences
      description: '

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


        Fetch communication channel preferences.

        - Use `cluster_preferences` to fetch the default preferences for your ThoughtSpot application instance.

        - If your instance has [Orgs](https://docs.thoughtspot.com/cloud/latest/orgs-overview), use `org_preferences` to fetch any Org-specific preferences that override the defaults.


        Requires `ADMINISTRATION` (**Can administer ThoughtSpot**) or `DEVELOPER` (**Has developer privilege**) privilege. If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, users with `APPLICATION_ADMINISTRATION` (**Can manage application settings**) privilege are also authorized to perform this action.





        #### Endpoint URL

        '
      tags:
      - 10.14.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchCommunicationChannelPreferencesRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Communication channel preferences retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommunicationChannelPreferencesResponse'
              examples:
                example_1:
                  value:
                    cluster_preferences:
                    - event_type: LIVEBOARD_SCHEDULE
                      channels:
                      - WEBHOOK
                    org_preferences:
                    - org:
                        id: '583464508'
                        name: test_org
                      preferences:
                      - event_type: LIVEBOARD_SCHEDULE
                        channels:
                        - EMAIL
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid_request:
                  summary: Invalid request
                  value:
                    error:
                      message:
                        code: 10002
                        incident_id_guid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                        trace_id_guid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                        debug: org_identifier in org_preferences does not match a known org.
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized_access:
                  summary: Unauthorized access
                  value:
                    error:
                      message:
                        code: 10097
                        incident_id_guid: b2c3d4e5-f678-9012-bcde-f23456789012
                        trace_id_guid: b2c3d4e5-f678-9012-bcde-f23456789012
                        debug: Authentication required to search communication channel preferences.
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                forbidden_access:
                  summary: Forbidden access
                  value:
                    error:
                      message:
                        code: 10023
                        incident_id_guid: c3d4e5f6-7890-1234-cdef-345678901234
                        trace_id_guid: c3d4e5f6-7890-1234-cdef-345678901234
                        debug: ADMINISTRATION privilege required to retrieve cluster-level communication channel preferences.
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unexpected_error:
                  summary: Unexpected error
                  value:
                    error:
                      message:
                        code: 10038
                        incident_id_guid: d4e5f678-9012-3456-defa-456789012345
                        trace_id_guid: d4e5f678-9012-3456-defa-456789012345
                        debug: Unexpected server error while searching communication channel preferences.
  /api/rest/2.0/template/variables/{identifier}/delete:
    post:
      operationId: deleteVariable
      description: "\nDelete a variable <br/>  <span class=\"since-beta-tag\">Version: 10.14.0.cl or later</span>\n\n**Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/delete](/api/rest/2.0/template/variables/delete) instead.\n\nAllows deleting a variable from ThoughtSpot.\n\nRequires ADMINISTRATION role and TENANT scope.\nThe CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope.\n\nThe API endpoint requires:\n* The variable identifier (ID or name)\n\nThe operation will fail if:\n* The user lacks required permissions\n* The variable doesn't exist\n* The variable is being used by other objects \n\n\n\n#### Endpoint URL\n"
      deprecated: true
      tags:
      - 10.14.0.cl
      parameters:
      - in: path
        name: identifier
        required: true
        schema:
          type: string
        description: Unique id or name of the variable
      responses:
        '204':
          description: Deleting the variable is successful.
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/rest/2.0/template/variables/update-values:
    post:
      operationId: updateVariableValues
      description: '

        Update values for multiple variables <br/>  <span class="since-beta-tag">Version: 10.14.0.cl or later</span>


        **Note:** This API endpoint is deprecated and will be removed from ThoughtSpot in a future release. Use [POST /api/rest/2.0/template/variables/{identifier}/update-values](/api/rest/2.0/template/variables/%7Bidentifier%7D/update-values) instead.


        Allows updating values for multiple variables in ThoughtSpot.


        Requires ADMINISTRATION role.

        The CAN_MANAGE_VARIABLES permission allows you to manage Formula Variables in the current organization scope.


        The API endpoint allows:

        * Adding new values to variables

        * Replacing existing values

        * Deleting values from variables


        When updating variable values, you need to specify:

        * The variable identifiers

        * The values to add/replace/remove for each variable

        * The operation to perform (ADD, REPLACE, REMOVE, RESET)


        Behaviour based on operation type:

        * ADD - Adds values to the variable if this is a list type variable, else same as replace.

        * REPLACE - Replaces all values of a given set of constraints with the current set of values.

        * REMOVE - Removes any values which match the set of conditions of the variables if this is a list type variable, else clears value.

        * RESET - Removes all constrains for a given variable, scope is ignored





        #### Endpoint URL

        '
      deprecated: true
      tags:
      - 10.14.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateVariableValuesRequest'
        required: true
      parameters: []
      responses:
        '204':
          description: Variable values updated successfully.
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/rest/2.0/webhooks/create:
    post:
      operationId: createWebhookConfiguration
      description: "\n <span class=\"since-beta-tag\">Version: 10.14.0.cl or later</span>\n\nCreates a new webhook configuration to receive notifications for specified events. The webhook will be triggered when the configured events occur in the system.\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"
      tags:
      - 10.14.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWebhookConfigurationRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Webhook configuration created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookResponse'
              examples:
                example_1:
                  description: Basic webhook with Bearer token authentication
                  value:
                    id: f47ac10b-58cc-4372-a567-0e02b2c3d479
                    name: My Liveboard Webhook
                    description: Webhook to notify external system about liveboard schedules
                    org:
                      id: '0'
                      name: Primary
                    url: https://myapp.example.com/webhooks/thoughtspot
                    url_params:
                      api_key: abc123
                      version: v1
                    events:
                    - LIVEBOARD_SCHEDULE
                    authentication:
                      BEARER_TOKEN: '***'
                    signature_verification:
                      type: HMAC_SHA256
                      header: X-Webhook-Signature
                      algorithm: SHA256
                      secret: '***'
                    creation_time_in_millis: 1724277430243
                    modification_time_in_millis: 1724277430243
                    additional_headers:
                    - key: Custom-Header
                      value: value1
                    - key: Custom-Header-2
                      value: value2
                    created_by:
                      id: 8e3f2a7b-9c4d-4e5f-8a1b-7c9d3e6f4a2b
                      name: sarah_chen
                    last_modified_by:
                      id: 8e3f2a7b-9c4d-4e5f-8a1b-7c9d3e6f4a2b
                      name: sarah_chen
                example_2:
                  description: Webhook with OAuth2 authentication
                  value:
                    id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                    name: OAuth2 Webhook
                    description: Webhook with OAuth2 client credentials
                    org:
                      id: '0'
                      name: Primary
                    url: https://api.example.com/webhooks
                    events:
                    - LIVEBOARD_SCHEDULE
                    authentication:
                      OAUTH2:
                        authorization_url: https://auth.example.com/oauth2/authorize
                        client_id: client_123
                        client_secret: '***'
                    creation_time_in_millis: 1724278530123
                    modification_time_in_millis: 1724278530123
                    created_by:
                      id: 7d5e9f2a-4b8c-4d6e-9a3b-5c7e1f4a8b2d
                      name: mike_rodriguez
                example_3:
                  description: Webhook with GCP GCS storage destination
                  value:
                    id: c9d8e7f6-a5b4-4321-9876-fedcba012345
                    name: GCS Storage Webhook
                    description: Webhook that uploads payloads to a GCS bucket
                    org:
                      id: '0'
                      name: Primary
                    url: https://api.example.com/webhooks
                    events:
                    - LIVEBOARD_SCHEDULE
                    storage_destination:
                      storage_type: GCP_GCS
                      storage_config:
                        gcp_gcs_config:
                          bucket_name: my-webhook-files
                          service_account_email: my-sa@my-project.iam.gserviceaccount.com
                          path_prefix: webhooks/
                    creation_time_in_millis: 1724279630456
                    modification_time_in_millis: 1724279630456
                    created_by:
                      id: 3a2b1c4d-5e6f-7890-abcd-ef0123456789
                      name: priya_sharma
                    last_modified_by:
                      id: 3a2b1c4d-5e6f-7890-abcd-ef0123456789
                      name: priya_sharma
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid_request:
                  summary: Invalid request
                  value:
                    error:
                      message:
                        code: 10002
                        incident_id_guid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                        trace_id_guid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                        debug: At least one event type must be specified in the events field.
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized_access:
                  summary: Unauthorized access
                  value:
                    error:
                      message:
                        code: 10097
                        incident_id_guid: b2c3d4e5-f678-9012-bcde-f23456789012
                        trace_id_guid: b2c3d4e5-f678-9012-bcde-f23456789012
                        debug: Authentication required to create a webhook configuration.
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                forbidden_access:
                  summary: Forbidden access
                  value:
                    error:
                      message:
                        code: 10023
                        incident_id_guid: c3d4e5f6-7890-1234-cdef-345678901234
                        trace_id_guid: c3d4e5f6-7890-1234-cdef-345678901234
                        debug: Insufficient privileges to create webhook configurations.
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unexpected_error:
                  summary: Unexpected error
                  value:
                    error:
                      message:
                        code: 10038
                        incident_id_guid: d4e5f678-9012-3456-defa-456789012345
                        trace_id_guid: d4e5f678-9012-3456-defa-456789012345
                        debug: Unexpected server error while creating the webhook configuration.
  /api/rest/2.0/webhooks/delete:
    post:
      operationId: deleteWebhookConfigurations
      description: "\n <span class=\"since-beta-tag\">Version: 10.14.0.cl or later</span>\n\nDeletes one or more webhook configurations by their unique id or name. Returns status of each deletion operation, including successfully deleted webhooks and any failures with error details.\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"
      tags:
      - 10.14.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteWebhookConfigurationsRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Webhook configurations deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookDeleteResponse'
              examples:
                example_1:
                  description: Successful deletion of multiple webhooks
                  value:
                    deleted_count: 2
                    failed_count: 0
                    deleted_webhooks:
                    - id: b9e3d8f2-4c7a-4e1b-8d3c-5f9a2b7e4c6d
                      name: Old Webhook 1
                      description: First webhook to be deleted
                      org:
                        id: '0'
                        name: Primary
                      url: https://old-service.example.com/webhook1
                      events:
                      - LIVEBOARD_SCHEDULE
                      authentication:
                        BEARER_TOKEN: '***'
                      creation_time_in_millis: 1724274600000
                      modification_time_in_millis: 1724274600000
                      created_by:
                        id: 1f4e7b2d-9c3a-4e6f-8b1d-3e7c5a9b2f4e
                        name: jennifer_patel
                    - id: e7c4a1f8-2b5d-4a9e-7c3f-8b1e5d4a7c9b
                      name: Old Webhook 2
                      description: Second webhook to be deleted
                      org:
                        id: '0'
                        name: Primary
                      url: https://old-service.example.com/webhook2
                      events:
                      - LIVEBOARD_SCHEDULE
                      authentication:
                        API_KEY:
                          key: X-API-Key
                          value: '***'
                      creation_time_in_millis: 1724275530123
                      modification_time_in_millis: 1724275530123
                      created_by:
                        id: 9a5c2e8f-4b7d-4c1e-9f2a-6c8e3b5d7a4c
                        name: david_thompson
                    failed_webhooks: []
                example_2:
                  description: Partial failure during deletion
                  value:
                    deleted_count: 1
                    failed_count: 1
                    deleted_webhooks:
                    - id: c8f2a5e9-3d6b-4f1e-a8c2-7e4b1d9f5a3c
                      name: Successfully Deleted Webhook
                      description: This webhook was deleted successfully
                      org:
                        id: '0'
                        name: Primary
                      url: https://service.example.com/webhook
                      events:
                      - LIVEBOARD_SCHEDULE
                      authentication:
                        BEARER_TOKEN: '***'
                      creation_time_in_millis: 1724276415456
                      modification_time_in_millis: 1724276415456
                      created_by:
                        id: 6e9c4f2a-8b5d-4e1f-9c3a-5f8b2e7d4a6c
                        name: emma_wang
                    failed_webhooks:
                    - id: a3f7c1e4-9b2d-4a6e-8f3c-1e5b7a9c4f2e
                      name: Non-existent Webhook
                      error: Webhook not found or access denied
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid_request:
                  summary: Invalid request
                  value:
                    error:
                      message:
                        code: 10002
                        incident_id_guid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                        trace_id_guid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                        debug: webhook_identifiers must contain at least one identifier.
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized_access:
                  summary: Unauthorized access
                  value:
                    error:
                      message:
                        code: 10097
                        incident_id_guid: b2c3d4e5-f678-9012-bcde-f23456789012
                        trace_id_guid: b2c3d4e5-f678-9012-bcde-f23456789012
                        debug: Authentication required to delete webhook configurations.
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                forbidden_access:
                  summary: Forbidden access
                  value:
                    error:
                      message:
                        code: 10023
                        incident_id_guid: c3d4e5f6-7890-1234-cdef-345678901234
                        trace_id_guid: c3d4e5f6-7890-1234-cdef-345678901234
                        debug: Insufficient privileges to delete webhook configurations.
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unexpected_error:
                  summary: Unexpected error
                  value:
                    error:
                      message:
                        code: 10038
                        incident_id_guid: d4e5f678-9012-3456-defa-456789012345
                        trace_id_guid: d4e5f678-9012-3456-defa-456789012345
                        debug: Unexpected server error while deleting webhook configurations.
  /api/rest/2.0/webhooks/search:
    post:
      operationId: searchWebhookConfigurations
      description: "\n <span class=\"since-beta-tag\">Version: 10.14.0.cl or later</span>\n\nSearches for webhook configurations based on various criteria such as Org, webhook identifier, event type, with support for pagination and sorting. Returns matching webhook configurations with their complete details.\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"
      tags:
      - 10.14.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchWebhookConfigurationsRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Webhook configurations retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookSearchResponse'
              examples:
                example_1:
                  description: Search results with multiple webhooks
                  value:
                    webhooks:
                    - id: f47ac10b-58cc-4372-a567-0e02b2c3d479
                      name: Liveboard Schedule Webhook
                      description: Webhook for liveboard schedule notifications
                      org:
                        id: '0'
                        name: Primary
                      url: https://myapp.example.com/webhooks
                      url_params:
                        api_key: abc123
                      events:
                      - LIVEBOARD_SCHEDULE
                      authentication:
                        BEARER_TOKEN: '***'
                      signature_verification:
                        type: HMAC_SHA256
                        header: X-Webhook-Signature
                        algorithm: SHA256
                        secret: '***'
                      creation_time_in_millis: 1724277430243
                      modification_time_in_millis: 1724278215123
                      additional_headers:
                      - key: Custom-Header
                        value: value1
                      - key: Custom-Header-2
                        value: value2
                      created_by:
                        id: 8e3f2a7b-9c4d-4e5f-8a1b-7c9d3e6f4a2b
                        name: sarah_chen
                      last_modified_by:
                        id: 2c9a7e4f-6b3d-4a8e-9f1c-5e7a3b9c2d6f
                        name: alex_kim
                    - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                      name: API Key Webhook
                      description: Webhook with API key authentication
                      org:
                        id: '0'
                        name: Primary
                      url: https://api.example.com/notifications
                      events:
                      - LIVEBOARD_SCHEDULE
                      authentication:
                        API_KEY:
                          key: X-API-Key
                          value: '***'
                      creation_time_in_millis: 1724275845987
                      modification_time_in_millis: 1724275845987
                      created_by:
                        id: 7d5e9f2a-4b8c-4d6e-9a3b-5c7e1f4a8b2d
                        name: mike_rodriguez
                    pagination:
                      record_offset: 0
                      record_size: 50
                      total_count: 2
                      has_more: false
                example_2:
                  description: Empty search results
                  value:
                    webhooks: []
                    pagination:
                      record_offset: 0
                      record_size: 50
                      total_count: 0
                      has_more: false
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid_request

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