ThoughtSpot Groups API

The Groups API from ThoughtSpot — 5 operation(s) for groups.

Documentation

Specifications

Other Resources

OpenAPI Specification

thoughtspot-groups-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: ThoughtSpot Public REST 10.1.0.cl Groups API
  version: '2.0'
servers:
- url: '{base-url}'
  variables:
    base-url:
      default: https://localhost:443
security:
- bearerAuth: []
tags:
- name: Groups
paths:
  /api/rest/2.0/groups/create:
    post:
      operationId: createUserGroup
      description: "\n <span class=\"since-beta-tag\">Version: 9.0.0.cl or later</span>\n\nCreates a group object in ThoughtSpot.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required.\n\n#### About groups\nGroups in ThoughtSpot are used by the administrators to define privileges and organize users based on their roles and access requirements. To know more about groups and privileges, see [ThoughtSpot Product Documentation](https://docs.thoughtspot.com/cloud/latest/groups-privileges).\n\n#### Supported operations\n\nThe API endpoint lets you perform the following operations:\n\n* Assign privileges\n* Add users\n* Define sharing visibility\n* Add sub-groups\n* Assign a default Liveboard\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Groups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUserGroupRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: User group successfully created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserGroupResponse'
        '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/groups/{group_identifier}/delete:
    post:
      operationId: deleteUserGroup
      description: "\n <span class=\"since-beta-tag\">Version: 9.0.0.cl or later</span>\n\nRemoves the specified group object from the ThoughtSpot system.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required.\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Groups
      parameters:
      - in: path
        name: group_identifier
        required: true
        schema:
          type: string
        description: GUID or name of the group.
      responses:
        '204':
          description: User group successfully deleted.
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/rest/2.0/groups/import:
    post:
      operationId: importUserGroups
      description: "\n <span class=\"since-beta-tag\">Version: 9.0.0.cl or later</span>\n\nImports group objects from external databases into ThoughtSpot.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required.\n\nDuring the import operation:\n\n* If the specified group is not available in ThoughtSpot, it will be added to ThoughtSpot.\n* If `delete_unspecified_groups` is set to `true`, the groups not specified in the API request, excluding administrator and system user groups, are deleted.\n* If the specified groups are already available in ThoughtSpot, the object properties of these groups are modified and synchronized as per the input data in the API request.\n\nA successful API call returns the object that represents the changes made in the ThoughtSpot system.\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Groups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImportUserGroupsRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Import user groups operation successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ImportUserGroupsResponse'
        '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/groups/search:
    post:
      operationId: searchUserGroups
      description: "\n <span class=\"since-beta-tag\">Version: 9.0.0.cl or later</span>\n\nGets a list of user group objects from the ThoughtSpot system.\n\nTo get details of a specific user group, specify the user group GUID or name. You can also filter the API response based on User ID, Org ID, Role ID, type of group, sharing visibility, privileges assigned to the group, and the Liveboard IDs assigned to the users in the group.\n\nAvailable to all users. Users with `ADMINISTRATION` (**Can administer ThoughtSpot**) privileges can view all users properties.\n\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required.\n\n**NOTE**: In addition to the GUID and name, `group_identifier` accepts a Custom object ID if one is configured for the group. The response also includes the `obj_id` field for each group that has one set.\n\n**NOTE**: If you do not get precise results, try setting `record_size` to `-1` and `record_offset` to `0`.\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Groups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchUserGroupsRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: User group search result.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UserGroupResponse'
        '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/groups/{group_identifier}/update:
    post:
      operationId: updateUserGroup
      description: "\n <span class=\"since-beta-tag\">Version: 9.0.0.cl or later</span>\n\nUpdates the properties of a group object in ThoughtSpot.\n\nRequires `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `GROUP_ADMINISTRATION` (**Can manage groups**) privilege is required.\n\n#### Supported operations\n\nThis API endpoint lets you perform the following operations in a single API request:\n\n* Edit [privileges](https://developers.thoughtspot.com/docs/?pageid=api-user-management#group-privileges)\n* Add or remove users\n* Change sharing visibility settings\n* Add or remove sub-groups\n* Assign a default Liveboard  or update the existing settings\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Groups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateUserGroupRequest'
        required: true
      parameters:
      - in: path
        name: group_identifier
        required: true
        schema:
          type: string
        description: GUID or name of the group.
      responses:
        '204':
          description: User group successfully updated.
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    GroupsImportListInput:
      type: object
      required:
      - display_name
      - group_identifier
      properties:
        display_name:
          type: string
          description: Unique display name of the group.
        group_identifier:
          type: string
          description: Unique ID or name of the group.
        default_liveboard_identifiers:
          type: array
          items:
            type: string
          description: Unique ID of Liveboards that will be assigned as default Liveboards to the users in the group.
          nullable: true
        description:
          type: string
          description: Description of the group.
          nullable: true
        privileges:
          type: array
          items:
            type: string
            enum:
            - ADMINISTRATION
            - AUTHORING
            - USERDATAUPLOADING
            - DATADOWNLOADING
            - USERMANAGEMENT
            - DATAMANAGEMENT
            - SHAREWITHALL
            - JOBSCHEDULING
            - A3ANALYSIS
            - EXPERIMENTALFEATUREPRIVILEGE
            - BYPASSRLS
            - RANALYSIS
            - DEVELOPER
            - USER_ADMINISTRATION
            - GROUP_ADMINISTRATION
            - SYNCMANAGEMENT
            - CAN_CREATE_CATALOG
            - DISABLE_PINBOARD_CREATION
            - LIVEBOARD_VERIFIER
            - PREVIEW_THOUGHTSPOT_SAGE
            - CAN_MANAGE_VERSION_CONTROL
            - THIRDPARTY_ANALYSIS
            - ALLOW_NON_EMBED_FULL_APP_ACCESS
            - CAN_ACCESS_ANALYST_STUDIO
            - CAN_MANAGE_ANALYST_STUDIO
            - CAN_MODIFY_FOLDERS
            - CAN_MANAGE_VARIABLES
            - CAN_VIEW_FOLDERS
            - CAN_MANAGE_AGENTSPOT
            - CAN_ACCESS_AGENTSPOT
            - PREVIEW_DOCUMENT_SEARCH
            - CAN_SETUP_VERSION_CONTROL
            - CAN_DOWNLOAD_VISUALS
            - CAN_DOWNLOAD_DETAILED_DATA
            - CAN_USE_SPOTTER
            - CAN_MANAGE_SPOTTER
            - CAN_CREATE_LIVEBOARD
            - CAN_CREATE_ANSWERS
            - CAN_ANALYZE_DATA
            - CAN_ADMINISTER_SCHEDULES
            - CAN_CREATE_KPI_ALERTS
          description: 'Privileges that will be assigned to the group. Note: AUTHORING is a no-op — always inherited via ALL_GROUP, assigning it has no effect.'
          nullable: true
        sub_group_identifiers:
          type: array
          items:
            type: string
          description: Unique ID or name of the sub-groups to add to the group.
          nullable: true
        type:
          type: string
          enum:
          - LOCAL_GROUP
          - LDAP_GROUP
          - TEAM_GROUP
          - TENANT_GROUP
          description: Type of the group.
          nullable: true
        user_identifiers:
          type: array
          items:
            type: string
          description: Unique ID or name of the users to assign to the group.
          nullable: true
        visibility:
          type: string
          enum:
          - SHARABLE
          - NON_SHARABLE
          description: Visibility of the group. The SHARABLE makes a group visible to other users and groups, and thus allows them to share objects.
          nullable: true
    ImportUserGroupsResponse:
      type: object
      required:
      - groups_added
      - groups_deleted
      - groups_updated
      properties:
        groups_added:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
          description: The groups which are added into the system.
        groups_deleted:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
          description: The groups which are deleted from the system.
        groups_updated:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
          description: The groups which are updated in the system.
    ImportUserGroupsRequest:
      type: object
      properties:
        groups:
          description: Details of groups which are to be imported
          type: array
          items:
            $ref: '#/components/schemas/GroupsImportListInput'
        delete_unspecified_groups:
          description: If set to true, removes groups that are not specified in the API request.
          default: false
          type: boolean
          nullable: true
        dry_run:
          description: 'If true, the API performs a test operation and returns user IDs whose

            data will be edited after the import.'
          default: true
          type: boolean
          nullable: true
    UserGroup:
      type: object
      properties:
        id:
          type: string
          nullable: true
        name:
          type: string
          nullable: true
    UpdateUserGroupRequest:
      type: object
      properties:
        name:
          description: Name of the group to modify.
          type: string
        default_liveboard_identifiers:
          description: ID of the Liveboards to be assigned as default Liveboards to the users in the group.
          type: array
          items:
            type: string
        description:
          description: Description for the group.
          type: string
        display_name:
          description: Display name of the group.
          type: string
        privileges:
          description: 'Privileges to assign to the group. Note: AUTHORING is a no-op — always inherited via ALL_GROUP, assigning it has no effect.'
          type: array
          items:
            type: string
            enum:
            - ADMINISTRATION
            - AUTHORING
            - USERDATAUPLOADING
            - DATADOWNLOADING
            - USERMANAGEMENT
            - DATAMANAGEMENT
            - SHAREWITHALL
            - JOBSCHEDULING
            - A3ANALYSIS
            - EXPERIMENTALFEATUREPRIVILEGE
            - BYPASSRLS
            - RANALYSIS
            - DEVELOPER
            - USER_ADMINISTRATION
            - GROUP_ADMINISTRATION
            - SYNCMANAGEMENT
            - CAN_CREATE_CATALOG
            - DISABLE_PINBOARD_CREATION
            - LIVEBOARD_VERIFIER
            - PREVIEW_THOUGHTSPOT_SAGE
            - CAN_MANAGE_VERSION_CONTROL
            - THIRDPARTY_ANALYSIS
            - ALLOW_NON_EMBED_FULL_APP_ACCESS
            - CAN_ACCESS_ANALYST_STUDIO
            - CAN_MANAGE_ANALYST_STUDIO
            - CAN_MODIFY_FOLDERS
            - CAN_MANAGE_VARIABLES
            - CAN_VIEW_FOLDERS
            - CAN_MANAGE_AGENTSPOT
            - CAN_ACCESS_AGENTSPOT
            - PREVIEW_DOCUMENT_SEARCH
            - CAN_SETUP_VERSION_CONTROL
            - CAN_DOWNLOAD_VISUALS
            - CAN_DOWNLOAD_DETAILED_DATA
            - CAN_USE_SPOTTER
            - CAN_MANAGE_SPOTTER
            - CAN_CREATE_LIVEBOARD
            - CAN_CREATE_ANSWERS
            - CAN_ANALYZE_DATA
            - CAN_ADMINISTER_SCHEDULES
            - CAN_CREATE_KPI_ALERTS
        sub_group_identifiers:
          description: GUID or name of the sub groups. A subgroup is a group assigned to a parent group.
          type: array
          items:
            type: string
        type:
          description: Type of the group
          type: string
          enum:
          - LOCAL_GROUP
          - LDAP_GROUP
          - TEAM_GROUP
          - TENANT_GROUP
        user_identifiers:
          description: GUID or name of the users to assign to the group.
          type: array
          items:
            type: string
        visibility:
          description: 'Visibility of the group. To make a group visible to other users and

            groups, set the visibility to SHAREABLE.'
          type: string
          enum:
          - SHARABLE
          - NON_SHARABLE
        role_identifiers:
          description: Role identifiers of the Roles that should be assigned to the group.
          type: array
          items:
            type: string
        operation:
          description: Type of update operation. Default operation type is REPLACE
          default: REPLACE
          type: string
          enum:
          - ADD
          - REMOVE
          - REPLACE
    UserGroupResponse:
      type: object
      required:
      - display_name
      - id
      - name
      - visibility
      properties:
        obj_id:
          type: string
          description: 'Custom object ID (obj_id) of the group, if one is set. <br/>  <span class="since-beta-tag">Version: 26.9.0.cl or later</span>'
          nullable: true
        author_id:
          type: string
          description: The unique identifier of the object
          nullable: true
        complete_detail:
          type: boolean
          description: Indicates whether the response has complete detail of the group.
          nullable: true
        content:
          type: object
          description: Content details of the group
          nullable: true
        creation_time_in_millis:
          type: number
          format: float
          description: Creation time of the group in milliseconds
          nullable: true
        default_liveboards:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
          description: Liveboards that are assigned as default Liveboards to the group.
          nullable: true
        deleted:
          type: boolean
          description: Indicates whether the group is deleted
          nullable: true
        deprecated:
          type: boolean
          description: Indicates whether the group is deprecated
          nullable: true
        description:
          type: string
          description: Description of the group
          nullable: true
        display_name:
          type: string
          description: Display name of the group.
        external:
          type: boolean
          description: Indicates whether the group is external
          nullable: true
        generation_number:
          type: integer
          format: int32
          description: Generation number of the group
          nullable: true
        hidden:
          type: boolean
          description: Indicates whether the group is hidden
          nullable: true
        id:
          type: string
          description: The unique identifier of the object
        index:
          type: integer
          format: int32
          description: Index number of the group
          nullable: true
        index_version:
          type: integer
          format: int32
          description: Index version number of the group
          nullable: true
        metadata_version:
          type: integer
          format: int32
          description: Metadata version number of the group
          nullable: true
        modification_time_in_millis:
          type: number
          format: float
          description: Last modified time of the group in milliseconds.
          nullable: true
        modifier_id:
          type: string
          description: The unique identifier of the object
          nullable: true
        name:
          type: string
          description: Name of the group.
        orgs:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
          description: Orgs in which group exists.
          nullable: true
        owner_id:
          type: string
          description: The unique identifier of the object
          nullable: true
        parent_type:
          type: string
          enum:
          - USER
          - GROUP
          description: Parent type of the group.
          nullable: true
        privileges:
          type: array
          items:
            type: string
          description: Privileges which are assigned to the group
          nullable: true
        sub_groups:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
          description: Groups who are part of the group
          nullable: true
        system_group:
          type: boolean
          description: Indicates whether the group is a system group.
          nullable: true
        tags:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
          description: Tags associated with the group.
          nullable: true
        type:
          type: string
          enum:
          - LOCAL_GROUP
          - LDAP_GROUP
          - TEAM_GROUP
          - TENANT_GROUP
          description: Type of the group.
          nullable: true
        users:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
          description: Users who are part of the group.
          nullable: true
        visibility:
          type: string
          enum:
          - SHARABLE
          - NON_SHARABLE
          description: Visibility of the group. The SHARABLE makes a group visible to other users and groups, and thus allows them to share objects.
        roles:
          type: array
          items:
            $ref: '#/components/schemas/Role'
          description: List of roles assgined to the user
          nullable: true
    Role:
      type: object
      properties:
        id:
          type: string
          description: id of the role
          nullable: true
        name:
          type: string
          description: name of the role
          nullable: true
    SortOptions:
      type: object
      properties:
        field_name:
          type: string
          enum:
          - NAME
          - DISPLAY_NAME
          - AUTHOR
          - CREATED
          - MODIFIED
          description: Name of the field to apply the sort on.
          nullable: true
        order:
          type: string
          enum:
          - ASC
          - DESC
          description: 'Sort order : ASC(Ascending) or DESC(Descending).'
          nullable: true
      description: Sort options.
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          nullable: true
    SearchUserGroupsRequest:
      type: object
      properties:
        default_liveboard_identifiers:
          description: GUID of Liveboards that are assigned as default Liveboards to the users in the group.
          type: array
          items:
            type: string
        description:
          description: Description of the group
          type: string
        display_name:
          description: Display name of the group
          type: string
        name_pattern:
          description: A pattern to match case-insensitive name of the Group object.
          type: string
        group_identifier:
          description: GUID or name of the group
          type: string
        org_identifiers:
          description: ID or name of the Org to which the group belongs
          type: array
          items:
            type: string
        privileges:
          description: Privileges assigned to the group.
          type: array
          items:
            type: string
            enum:
            - ADMINISTRATION
            - AUTHORING
            - USERDATAUPLOADING
            - DATADOWNLOADING
            - USERMANAGEMENT
            - DATAMANAGEMENT
            - SHAREWITHALL
            - JOBSCHEDULING
            - A3ANALYSIS
            - EXPERIMENTALFEATUREPRIVILEGE
            - BYPASSRLS
            - RANALYSIS
            - DEVELOPER
            - USER_ADMINISTRATION
            - GROUP_ADMINISTRATION
            - SYNCMANAGEMENT
            - CAN_CREATE_CATALOG
            - DISABLE_PINBOARD_CREATION
            - LIVEBOARD_VERIFIER
            - PREVIEW_THOUGHTSPOT_SAGE
            - APPLICATION_ADMINISTRATION
            - SYSTEM_INFO_ADMINISTRATION
            - ORG_ADMINISTRATION
            - ROLE_ADMINISTRATION
            - AUTHENTICATION_ADMINISTRATION
            - BILLING_INFO_ADMINISTRATION
            - CAN_MANAGE_CUSTOM_CALENDAR
            - CAN_CREATE_OR_EDIT_CONNECTIONS
            - CAN_MANAGE_WORKSHEET_VIEWS_TABLES
            - CAN_MANAGE_VERSION_CONTROL
            - THIRDPARTY_ANALYSIS
            - ALLOW_NON_EMBED_FULL_APP_ACCESS
            - CAN_ACCESS_ANALYST_STUDIO
            - CAN_MANAGE_ANALYST_STUDIO
            - PREVIEW_DOCUMENT_SEARCH
            - CAN_MODIFY_FOLDERS
            - CAN_MANAGE_VARIABLES
            - CAN_VIEW_FOLDERS
            - CAN_MANAGE_AGENTSPOT
            - CAN_ACCESS_AGENTSPOT
            - CAN_SETUP_VERSION_CONTROL
            - CAN_MANAGE_WEBHOOKS
            - CAN_DOWNLOAD_VISUALS
            - CAN_DOWNLOAD_DETAILED_DATA
            - CAN_USE_SPOTTER
            - CAN_MANAGE_SPOTTER
            - CAN_CREATE_LIVEBOARD
            - CAN_CREATE_ANSWERS
            - CAN_ANALYZE_DATA
            - CAN_ADMINISTER_SCHEDULES
            - CAN_CREATE_KPI_ALERTS
        sub_group_identifiers:
          description: GUID or name of the sub groups. A subgroup is a group assigned to a parent group.
          type: array
          items:
            type: string
        type:
          description: Group type.
          type: string
          enum:
          - LOCAL_GROUP
          - LDAP_GROUP
          - TEAM_GROUP
          - TENANT_GROUP
        user_identifiers:
          description: GUID or name of the users assigned to the group.
          type: array
          items:
            type: string
        visibility:
          description: 'Visibility of the group. To make a group visible to other users and groups,

            set the visibility to SHAREABLE.'
          type: string
          enum:
          - SHARABLE
          - NON_SHARABLE
        role_identifiers:
          description: Filter groups with a list of Roles assigned to a group
          type: array
          items:
            type: string
        record_offset:
          description: The starting record number from where the records should be included.
          default: 0
          type: integer
          format: int32
        record_size:
          description: The number of records that should be included.
          default: 10
          type: integer
          format: int32
        sort_options:
          description: Sort options to filter group details.
          allOf:
          - $ref: '#/components/schemas/SortOptions'
        include_users:
          description: '<div><span class="since-beta-tag">Version: 10.10.0.cl or later</span></div>


            Define Parameter to consider if the users should be included in group search response.'
          default: true
          type: boolean
          nullable: true
        include_sub_groups:
          description: '<div><span class="since-beta-tag">Version: 10.10.0.cl or later</span></div>


            Define Parameter to consider if the sub groups should be included in group search response.'
          default: true
          type: boolean
          nullable: true
    CreateUserGroupRequest:
      type: object
      properties:
        name:
          description: Name of the group. The group name must be unique.
          type: string
        display_name:
          description: Display name for the group.
          type: string
        default_liveboard_identifiers:
          description: GUID of the Liveboards to assign as default Liveboards to the users in the group.
          type: array
          items:
            type: string
        description:
          description: Description of the group
          type: string
        privileges:
          description: 'Privileges to assign to the group. Note: AUTHORING is a no-op — always inherited via ALL_GROUP, assigning it has no effect.'
          type: array
          items:
            type: string
            enum:
            - ADMINISTRATION
            - AUTHORING
            - USERDATAUPLOADING
            - DATADOWNLOADING
            - USERMANAGEMENT
            - DATAMANAGEMENT
            - SHAREWITHALL
            - JOBSCHEDULING
            - A3ANALYSIS
            - EXPERIMENTALFEATUREPRIVILEGE
            - BYPASSRLS
            - RANALYSIS
            - DEVELOPER
            - USER_ADMINISTRATION
            - GROUP_ADMINISTRATION
            - SYNCMANAGEMENT
            - CAN_CREATE_CATALOG
            - DISABLE_PINBOARD_CREATION
            - LIVEBOARD_VERIFIER
            - PREVIEW_THOUGHTSPOT_SAGE
            - CAN_MANAGE_VERSION_CONTROL
            - THIRDPARTY_ANALYSIS
            - ALLOW_NON_EMBED_FULL_APP_ACCESS
            - CAN_ACCESS_ANALYST_STUDIO
            - CAN_MANAGE_ANALYST_STUDIO
            - CAN_MODIFY_FOLDERS
            - CAN_MANAGE_VARIABLES
            - CAN_VIEW_FOLDERS
            - CAN_MANAGE_AGENTSPOT
            - CAN_ACCESS_AGENTSPOT
            - PREVIEW_DOCUMENT_SEARCH
            - CAN_SETUP_VERSION_CONTROL
            - CAN_DOWNLOAD_VISUALS
            - CAN_DOWNLOAD_DETAILED_DATA
            - CAN_USE_SPOTTER
            - CAN_MANAGE_SPOTTER
            - CAN_CREATE_LIVEBOARD
            - CAN_CREATE_ANSWERS
            - CAN_ANALYZE_DATA
            - CAN_ADMINISTER_SCHEDULES
            - CAN_CREATE_KPI_ALERTS
        sub_group_identifiers:
          description: GUID or name of the sub groups. A subgroup is a group assigned to a parent group.
          type: array
          items:
            type: string
        type:
          description: Group type.
          default: LOCAL_GROUP
          type: string
          enum:
          - LOCAL_GROUP
          - LDAP_GROUP
          - TEAM_GROUP
          - TENANT_GROUP
        user_identifiers:
          description: GUID or name of the users to assign to the group.
          type: array
          items:
            type: string
        visibility:
          description: 'Visibility of the group. To make a group visible to other users and groups,

            set the visibility to SHAREABLE.'
          default: SHARABLE
          type: string
 

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/thoughtspot/refs/heads/main/openapi/thoughtspot-groups-api-openapi.yml