> ## 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 Rows



## OpenAPI

````yaml /openapi.json patch /v1/workspaces/{workspaceId}/assistant/imports/{importId}/rows
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}/rows:
    patch:
      tags:
        - Data Imports
      summary: Update Rows
      operationId: DataImportsController_updateRows_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/UpdateDataImportRowsBodyDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataImportResponseDto'
components:
  schemas:
    UpdateDataImportRowsBodyDto:
      type: object
      properties:
        projectId:
          type: string
          pattern: ^[1-9]\d*$
        expectedVersion:
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        operations:
          minItems: 1
          maxItems: 100
          type: array
          items:
            oneOf:
              - type: object
                properties:
                  op:
                    type: string
                    const: set-areas
                  rowId:
                    type: string
                    pattern: ^[1-9]\d*$
                  allocations:
                    anyOf:
                      - maxItems: 256
                        type: array
                        items:
                          anyOf:
                            - type: object
                              properties:
                                areaId:
                                  type: string
                                  pattern: ^[1-9]\d*$
                                quantity:
                                  type: string
                                  pattern: ^\d{1,16}(?:\.\d{1,2})?$
                              required:
                                - areaId
                                - quantity
                              additionalProperties: false
                            - type: object
                              properties:
                                areaKey:
                                  type: string
                                  minLength: 1
                                  maxLength: 2000
                                quantity:
                                  type: string
                                  pattern: ^\d{1,16}(?:\.\d{1,2})?$
                              required:
                                - areaKey
                                - quantity
                              additionalProperties: false
                      - type: 'null'
                required:
                  - op
                  - rowId
                  - allocations
                additionalProperties: false
              - type: object
                properties:
                  op:
                    type: string
                    const: set-included
                  rowId:
                    type: string
                    pattern: ^[1-9]\d*$
                  included:
                    type: boolean
                required:
                  - op
                  - rowId
                  - included
                additionalProperties: false
              - type: object
                properties:
                  op:
                    type: string
                    const: set-value
                  rowId:
                    type: string
                    pattern: ^[1-9]\d*$
                  targetKey:
                    type: string
                    minLength: 1
                    maxLength: 200
                  value:
                    anyOf:
                      - anyOf:
                          - type: string
                            maxLength: 10000
                          - type: number
                          - type: boolean
                      - type: 'null'
                required:
                  - op
                  - rowId
                  - targetKey
                  - value
                additionalProperties: false
              - type: object
                properties:
                  op:
                    type: string
                    const: set-category
                  rowId:
                    type: string
                    pattern: ^[1-9]\d*$
                  categoryId:
                    anyOf:
                      - type: string
                        pattern: ^[1-9]\d*$
                      - type: 'null'
                required:
                  - op
                  - rowId
                  - categoryId
                additionalProperties: false
              - type: object
                properties:
                  op:
                    type: string
                    const: set-parent
                  rowId:
                    type: string
                    pattern: ^[1-9]\d*$
                  parentRowId:
                    anyOf:
                      - type: string
                        pattern: ^[1-9]\d*$
                      - type: 'null'
                  quantity:
                    anyOf:
                      - type: string
                        pattern: ^\d{1,14}(?:\.\d{1,4})?$
                      - type: 'null'
                required:
                  - op
                  - rowId
                  - parentRowId
                  - quantity
                additionalProperties: false
              - type: object
                properties:
                  op:
                    type: string
                    const: resolve-match
                  rowId:
                    type: string
                    pattern: ^[1-9]\d*$
                  slotId:
                    type: string
                    pattern: ^[1-9]\d*$
                required:
                  - op
                  - rowId
                  - slotId
                additionalProperties: false
      required:
        - projectId
        - expectedVersion
        - operations
      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

````