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

# Update rows in table by ID

> Update specific fields in multiple rows at once. Uses human-readable column names.

**overwrite** controls whether existing non-empty values are replaced:
- `true` (default) — always set the new value.
- `false` — only fill in fields that are currently empty.

If a row UUID is not found the result entry will contain `"ok": false` with an error object `{"code": "ROW_NOT_FOUND"}`.



## OpenAPI

````yaml /api-reference/openapi.json PATCH /v1/table/{table_uuid}/rows
openapi: 3.1.0
info:
  title: Databar.ai API
  description: >-

    # Authentication


    Databar uses API keys to allow access to the API. You can find your API key
    in your workspace home page, but to use the REST API you’ll first need to
    schedule a call with us.

    Our API expects the API key to be included in all API requests to the server
    in the Header of your request with the key `x-apikey`.

    To find your API key, head over to your Databar workspace and click
    Integrations.


    **Example:**


    `bash

    curl https://api.databar.ai/v1/user/me -H x-apikey: {YOUR_API_KEY}`
  contact:
    email: info@databar.ai
  version: 0.1.2
servers:
  - url: https://api.databar.ai
    description: Production
security: []
paths:
  /v1/table/{table_uuid}/rows:
    patch:
      tags:
        - Table
      summary: Partial update of multiple rows
      description: >-
        Update specific fields in multiple rows at once. Uses human-readable
        column names.


        **overwrite** controls whether existing non-empty values are replaced:

        - `true` (default) — always set the new value.

        - `false` — only fill in fields that are currently empty.


        If a row UUID is not found the result entry will contain `"ok": false`
        with an error object `{"code": "ROW_NOT_FOUND"}`.
      operationId: Batch_update_rows_v1_table__table_uuid__rows_patch
      parameters:
        - name: table_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
            description: The UUID of the table
            title: Table Uuid
          description: The UUID of the table
        - name: x-apikey
          in: header
          required: true
          schema:
            type: string
            title: API Key
            description: API Key for authentication
          description: API Key for authentication
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchUpdateRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchUpdateResponse'
        '400':
          description: Validation error (BATCH_TOO_LARGE, UNKNOWN_COLUMNS, INVALID_DATA).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SDKErrorResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    BatchUpdateRequest:
      properties:
        rows:
          items:
            $ref: '#/components/schemas/BatchUpdateRow'
          type: array
          maxItems: 50
          minItems: 1
          title: Rows
          description: List of rows to update (max 50).
        overwrite:
          type: boolean
          title: Overwrite
          description: If false, only empty fields are updated; existing values are kept.
          default: true
        return_rows:
          type: boolean
          title: Return Rows
          description: If true, each result includes full row_data after the update.
          default: false
      type: object
      required:
        - rows
      title: BatchUpdateRequest
      example:
        overwrite: true
        return_rows: false
        rows:
          - fields:
              first_name: Ivan
              title: CTO
            id: 91f0e833-5dfc-4f63-be96-e3a28925190f
    BatchUpdateResponse:
      properties:
        results:
          items:
            $ref: '#/components/schemas/BatchUpdateResultItem'
          type: array
          title: Results
      type: object
      required:
        - results
      title: BatchUpdateResponse
      example:
        results:
          - id: 91f0e833-5dfc-4f63-be96-e3a28925190f
            ok: true
          - error:
              code: ROW_NOT_FOUND
            id: 00000000-0000-0000-0000-000000000000
            ok: false
    SDKErrorResponse:
      properties:
        error:
          type: string
          title: Error
          description: 'Error code: BATCH_TOO_LARGE, UNKNOWN_COLUMNS, INVALID_DATA.'
        max_size:
          anyOf:
            - type: integer
            - type: 'null'
          title: Max Size
          description: Maximum batch size (only for BATCH_TOO_LARGE).
        columns:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Columns
          description: Unknown column names (only for UNKNOWN_COLUMNS).
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
          description: Human-readable error message (only for INVALID_DATA).
      type: object
      required:
        - error
      title: SDKErrorResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    BatchUpdateRow:
      properties:
        id:
          type: string
          title: Id
          description: UUID of the row to update.
        fields:
          type: object
          title: Fields
          description: Column values to set, keyed by human-readable column name.
          example:
            first_name: Ivan
            title: CTO
      type: object
      required:
        - id
        - fields
      title: BatchUpdateRow
    BatchUpdateResultItem:
      properties:
        id:
          type: string
          title: Id
          description: UUID of the row.
        ok:
          type: boolean
          title: Ok
          description: True if the row was updated successfully.
        error:
          anyOf:
            - type: object
            - type: 'null'
          title: Error
          description: >-
            Error object if the row was not found, e.g. {"code":
            "ROW_NOT_FOUND"}.
        row_data:
          anyOf:
            - type: object
            - type: 'null'
          title: Row Data
          description: Full row data (only when return_rows=true).
      type: object
      required:
        - id
        - ok
      title: BatchUpdateResultItem
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError

````