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

# Update Column Descriptions



## OpenAPI

````yaml /api-v2.json put /datasources/{datasource_id}/tables/{table_name}/columns
openapi: 3.1.0
info:
  title: Meibel AI API
  summary: Meibel Gateway Service
  description: >-
    Our API allows you to interact with our services. Read the
    [docs](https://docs.meibel.ai) to learn how to use it.
  version: 0.6.4
servers:
  - url: https://api.meibel.ai/v2
    description: Meibel API (v2)
  - url: https://api.dev.meibel.ai/v2
    description: Meibel Dev API (v2)
  - url: http://localhost:8000/v2
    description: Local Development
security: []
tags:
  - name: Datasources
    description: v2 datasource management
  - name: Data Elements
    description: v2 data element CRUD and search
  - name: File Upload
    description: Upload files to a datasource and track upload progress
  - name: Ingest
    description: Trigger and monitor datasource ingestion
  - name: Datasource Downloads
    description: Export all datasource content as a zip archive
  - name: Table Descriptions
    description: v2 table and column descriptions
  - name: Metadata Model Catalog
    description: v2 metadata model catalog
  - name: Confidence Scoring
    description: v2 confidence scoring jobs and summaries
  - name: Documents
    description: Parse and transform documents into structured data
  - name: Agents
    description: Agent definition management
  - name: Sessions
    description: Agent session (execution) management and chat
  - name: Execution Policies
    description: Data access and tool usage constraints scoped to agent sessions
  - name: Artifact Schemas
    description: Agent artifact schema management
paths:
  /datasources/{datasource_id}/tables/{table_name}/columns:
    put:
      tags:
        - Table Descriptions
      summary: Update Column Descriptions
      operationId: updateColumnDescriptions
      parameters:
        - name: table_name
          in: path
          required: true
          schema:
            type: string
            title: Table Name
        - name: datasource_id
          in: path
          required: true
          schema:
            type: string
            title: Datasource Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTagColumnsRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TagColumn'
                title: Response Updatecolumndescriptions
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - APIKeyHeader: []
      x-codeSamples:
        - lang: Python
          label: Python
          source: >-
            import os

            from meibel import MeibelClient

            from meibel.models import UpdateTagColumnsRequest,
            TagColumnUpdateItem


            client = MeibelClient(api_key=os.environ["MEIBEL_API_KEY"])


            updated_columns =
            client.datasources.tables.update_column_descriptions(
                "ds_9f2a1c7b",
                "customer_orders",
                body=UpdateTagColumnsRequest(
                    columns=[
                        TagColumnUpdateItem(
                            column_name="order_id",
                            description="Unique identifier for each customer order",
                        ),
                        TagColumnUpdateItem(
                            column_name="total_amount",
                            description="Total order value in USD, including tax",
                        ),
                    ]
                ),
            )


            for column in updated_columns:
                print(f"{column.column_name}: {column.description}")
        - lang: TypeScript
          label: TypeScript
          source: >-
            import { MeibelClient } from "meibel";


            const client = new MeibelClient({ apiKey: process.env.MEIBEL_API_KEY
            });


            const columns = await
            client.datasources.tables.updateColumnDescriptions(
              "ds_abc123",
              "customers",
              {
                columns: [
                  {
                    column_name: "customer_id",
                    description: "Unique identifier for the customer record",
                  },
                  {
                    column_name: "signup_date",
                    description: "Date the customer created their account",
                  },
                ],
              }
            );


            console.log(`${columns[0].column_name}: ${columns[0].description}`);
        - lang: Go
          label: Go
          source: "package main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\t\"os\"\n\n\tv2 \"github.com/meibel-ai/meibel-go/v2\"\n)\n\nfunc main() {\n\tclient := v2.NewClient(v2.WithAPIKey(os.Getenv(\"MEIBEL_API_KEY\")))\n\n\tcolumns, err := client.Datasources.Tables.UpdateColumnDescriptions(\n\t\tcontext.Background(),\n\t\t\"ds_9f8a7b6c5d4e\",\n\t\t\"customer_orders\",\n\t\tv2.UpdateTagColumnsRequest{\n\t\t\tColumns: []v2.TagColumnUpdateItem{\n\t\t\t\t{\n\t\t\t\t\tColumnName:  \"order_id\",\n\t\t\t\t\tDescription: \"Unique identifier for each customer order\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tColumnName:  \"order_total\",\n\t\t\t\t\tDescription: \"Total order amount in USD, including tax and shipping\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t)\n\tif err != nil {\n\t\tfmt.Println(\"error:\", err)\n\t\treturn\n\t}\n\n\tfor _, col := range columns {\n\t\tfmt.Printf(\"%s (%s): %s\\n\", col.ColumnName, col.Type, col.Description)\n\t}\n}"
components:
  schemas:
    UpdateTagColumnsRequest:
      properties:
        columns:
          items:
            $ref: '#/components/schemas/TagColumnUpdateItem'
          type: array
          title: Columns
          description: One entry per column to update on the target table
      type: object
      required:
        - columns
      title: UpdateTagColumnsRequest
      description: Bulk update of column descriptions on a single table.
    TagColumn:
      properties:
        column_name:
          type: string
          title: Column Name
          description: Column name as defined in the source table
        type:
          anyOf:
            - type: string
            - type: 'null'
          title: Type
          description: SQL data type of the column (e.g. 'varchar', 'integer')
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          description: Human-authored description of what this column represents
      type: object
      required:
        - column_name
      title: TagColumn
      description: A column on a structured-datasource table, with its description.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    TagColumnUpdateItem:
      properties:
        column_name:
          type: string
          title: Column Name
          description: Name of the column to update
        description:
          type: string
          title: Description
          description: New description for the column
      type: object
      required:
        - column_name
        - description
      title: TagColumnUpdateItem
      description: >-
        A single column-description update entry within an
        UpdateTagColumnsRequest.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: Meibel-API-Key

````