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

# Update Source Selection



## OpenAPI

````yaml /openapi.json patch /v1/workspaces/{workspaceId}/assistant/imports/{importId}/source-selection
openapi: 3.1.0
info:
  title: Specurate API
  description: ''
  version: 1.0.0
  contact: {}
servers:
  - url: https://app.specurate.com/api
    description: API Server
security: []
tags: []
paths:
  /v1/workspaces/{workspaceId}/assistant/imports/{importId}/source-selection:
    patch:
      tags:
        - Data Imports
      summary: Update Source Selection
      operationId: DataImportsController_updateSourceSelection_v1
      parameters:
        - name: workspaceId
          required: true
          in: path
          schema:
            type: string
            pattern: ^[1-9]\d*$
        - name: importId
          required: true
          in: path
          schema:
            type: string
            pattern: ^[1-9]\d*$
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDataImportSourceSelectionBodyDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataImportResponseDto'
components:
  schemas:
    UpdateDataImportSourceSelectionBodyDto:
      type: object
      properties:
        projectId:
          type: string
          pattern: ^[1-9]\d*$
        expectedVersion:
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        clientTurnId:
          type: string
          pattern: >-
            ^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
        sourceSelection:
          type: object
          properties:
            sheetName:
              type: string
              minLength: 1
              maxLength: 2000
            headerRowNumbers:
              minItems: 1
              maxItems: 16
              type: array
              items:
                type: integer
                exclusiveMinimum: 0
                maximum: 9007199254740991
            firstDataRowNumber:
              type: integer
              exclusiveMinimum: 0
              maximum: 9007199254740991
            lastDataRowNumber:
              type: integer
              exclusiveMinimum: 0
              maximum: 9007199254740991
          required:
            - sheetName
            - headerRowNumbers
            - firstDataRowNumber
            - lastDataRowNumber
          additionalProperties: false
      required:
        - projectId
        - expectedVersion
        - clientTurnId
        - sourceSelection
      additionalProperties: false
    DataImportResponseDto:
      type: object
      properties:
        conversation:
          type: object
          properties:
            id:
              type: string
            title:
              type: string
              nullable: true
            currentRun:
              type: object
              nullable: true
              additionalProperties: false
              example: null
        takeoff:
          type: object
          nullable: true
          additionalProperties: true
        sourceSelection:
          type: object
          nullable: true
          additionalProperties: true
        columnMappings:
          type: object
          nullable: true
          additionalProperties: true
        valueMappings:
          type: object
          nullable: true
          additionalProperties: true
        reviewDraft:
          type: object
          nullable: true
          additionalProperties: true
        publishResult:
          type: object
          nullable: true
          additionalProperties: true
        id:
          type: string
        target:
          type: object
          properties:
            kind:
              type: string
            projectId:
              type: string
          required:
            - kind
            - projectId
        status:
          enum:
            - awaiting_upload
            - queued
            - analyzing
            - review
            - publishing
            - published
            - failed
            - cancelled
          type: string
        kind:
          enum:
            - project_items
            - takeoff
          type: string
        version:
          type: number
        analysisRevision:
          type: number
        document:
          type: object
          properties:
            id:
              type: string
            displayName:
              type: string
            mimeType:
              type: string
            sizeBytes:
              type: number
            status:
              enum:
                - pending
                - confirmed
                - failed
              type: string
            confirmedAt:
              type: string
              nullable: true
            extractionDispatchedAt:
              type: string
              nullable: true
            safeErrorCode:
              type: string
              nullable: true
          required:
            - id
            - displayName
            - mimeType
            - sizeBytes
            - status
            - confirmedAt
            - extractionDispatchedAt
            - safeErrorCode
        sourceSnapshot:
          type: object
          nullable: true
        progress:
          type: object
          properties:
            phase:
              nullable: true
              enum:
                - analysis
                - publication
              type: string
            safeErrorCode:
              type: string
              nullable: true
          required:
            - phase
            - safeErrorCode
        counts:
          type: object
          properties:
            blockingIssues:
              type: number
            warningIssues:
              type: number
          required:
            - blockingIssues
            - warningIssues
        issueSummary:
          type: object
          properties:
            blocking:
              type: number
            warning:
              type: number
          required:
            - blocking
            - warning
        publishable:
          type: boolean
        createdAt:
          type: string
        updatedAt:
          type: string
      required:
        - conversation
        - takeoff
        - sourceSelection
        - columnMappings
        - valueMappings
        - reviewDraft
        - publishResult
        - id
        - target
        - status
        - kind
        - version
        - analysisRevision
        - document
        - sourceSnapshot
        - progress
        - counts
        - issueSummary
        - publishable
        - createdAt
        - updatedAt

````