> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tracecat.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Select Table Search Column

> Persist selection and backfill marker together, even without a provider.



## OpenAPI

````yaml https://platform.tracecat.com/api/openapi.json patch /workspaces/{workspace_id}/tables/{table_id}/search/selection
openapi: 3.1.0
info:
  title: Tracecat API
  summary: Tracecat API
  description: The open source AI automation platform for security teams and agents.
  termsOfService: >-
    https://docs.google.com/document/d/e/2PACX-1vQvDe3SoVAPoQc51MgfGCP71IqFYX_rMVEde8zC4qmBCec5f8PLKQRdxa6tsUABT8gWAR9J-EVs2CrQ/pub
  contact:
    name: Tracecat Founders
    email: founders@tracecat.com
  license:
    name: AGPL-3.0
    url: https://www.gnu.org/licenses/agpl-3.0.html
  version: '1'
servers:
  - url: /api
security: []
tags:
  - name: public
    description: Public facing endpoints
  - name: workflows
    description: Workflow management
  - name: actions
    description: Action management
  - name: triggers
    description: Workflow triggers
  - name: secrets
    description: Secret management
  - name: variables
    description: Workspace variable management
paths:
  /workspaces/{workspace_id}/tables/{table_id}/search/selection:
    patch:
      tags:
        - tables
        - tables
      summary: Select Table Search Column
      description: Persist selection and backfill marker together, even without a provider.
      operationId: tables-select_table_search_column
      parameters:
        - name: table_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Table Id
        - name: workspace_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Workspace Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TableSearchSelection'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TableSearchConfiguration'
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TableSearchErrorResponse'
          description: Not Found
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TableSearchErrorResponse'
          description: Conflict
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TableSearchSelectionErrorResponse'
          description: Unprocessable Entity
      security:
        - APIKeyCookie: []
        - ServiceAccountApiKeyBearer: []
components:
  schemas:
    TableSearchSelection:
      properties:
        column_id:
          type: string
          format: uuid
          title: Column Id
        enabled:
          type: boolean
          title: Enabled
        expected_generation:
          type: integer
          minimum: 0
          title: Expected Generation
      type: object
      required:
        - column_id
        - enabled
        - expected_generation
      title: TableSearchSelection
      description: Set one selection; generation zero denotes an absent collection.
    TableSearchConfiguration:
      properties:
        generation:
          type: integer
          minimum: 0
          title: Generation
          default: 0
        selected_column_ids:
          items:
            type: string
            format: uuid
          type: array
          title: Selected Column Ids
        status:
          $ref: '#/components/schemas/TableSearchDisplayState'
          default: disabled
        index:
          anyOf:
            - $ref: '#/components/schemas/SearchIndexStatus'
            - type: 'null'
      type: object
      title: TableSearchConfiguration
      description: Persisted selection with truthful readiness; never includes credentials.
    TableSearchErrorResponse:
      properties:
        detail:
          $ref: '#/components/schemas/TableSearchErrorRead'
      type: object
      required:
        - detail
      title: TableSearchErrorResponse
    TableSearchSelectionErrorResponse:
      properties:
        detail:
          anyOf:
            - $ref: '#/components/schemas/TableSearchErrorRead'
            - items:
                $ref: '#/components/schemas/TableSearchRequestValidationError'
              type: array
          title: Detail
      type: object
      required:
        - detail
      title: TableSearchSelectionErrorResponse
      description: Invalid column selection or malformed request parameters.
    TableSearchDisplayState:
      type: string
      enum:
        - disabled
        - unavailable
        - indexing
        - ready
        - updating
        - needs_attention
      title: TableSearchDisplayState
    SearchIndexStatus:
      properties:
        state:
          $ref: '#/components/schemas/SearchState'
        pending:
          type: integer
          minimum: 0
          title: Pending
          default: 0
        failed:
          type: integer
          minimum: 0
          title: Failed
          default: 0
        empty:
          type: integer
          minimum: 0
          title: Empty
          default: 0
        ready:
          type: integer
          minimum: 0
          title: Ready
          default: 0
        backfill_complete:
          type: boolean
          title: Backfill Complete
          default: false
        partial:
          type: boolean
          title: Partial
          default: false
      type: object
      required:
        - state
      title: SearchIndexStatus
      description: |-
        Index availability and document counts for a collection.

        Attributes:
            state: Effective workspace or collection search state.
            pending: Documents awaiting work for the current index configuration.
            failed: Documents that failed in the current index generation.
            empty: Current documents that contain no searchable chunks.
            ready: Current documents whose complete embeddings are published.
            backfill_complete: Whether all source rows have been enumerated.
            partial: Whether the index is unavailable or results may be incomplete.
    TableSearchErrorRead:
      properties:
        code:
          anyOf:
            - $ref: '#/components/schemas/SearchErrorCode'
            - type: string
              const: INVALID_SELECTION
          title: Code
      type: object
      required:
        - code
      title: TableSearchErrorRead
      description: Safe domain failure, including a stale generation precondition.
    TableSearchRequestValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Loc
        msg:
          type: string
          title: Msg
        type:
          type: string
          title: Type
        input:
          $ref: '#/components/schemas/JsonValue'
        ctx:
          anyOf:
            - additionalProperties:
                $ref: '#/components/schemas/JsonValue'
              type: object
            - type: 'null'
          title: Ctx
      type: object
      required:
        - loc
        - msg
        - type
      title: TableSearchRequestValidationError
      description: Standard FastAPI request validation fields for the selection endpoint.
    SearchState:
      type: string
      enum:
        - disabled
        - active
        - paused
        - reindex_required
      title: SearchState
      description: Workspace availability states controlling search and indexing.
    SearchErrorCode:
      type: string
      enum:
        - NOT_FOUND
        - INDEX_NOT_READY
        - STALE_CLAIM
        - MANIFEST_CONFLICT
        - INVALID_VECTOR
        - CONFIGURATION_CHANGED
        - PROVIDER_UNAVAILABLE
        - INVALID_CURSOR
        - INVALID_TABLE_NAME
      title: SearchErrorCode
      description: Stable error codes safe to expose without source text or credentials.
    JsonValue: {}
  securitySchemes:
    APIKeyCookie:
      type: apiKey
      in: cookie
      name: fastapiusersauth
    ServiceAccountApiKeyBearer:
      type: http
      description: Tracecat service account API key.
      scheme: bearer

````