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

# update tool

> Update an existing tool



## OpenAPI

````yaml https://api.anam.ai/swagger.json put /v1/tools/{id}
openapi: 3.1.0
info:
  title: Anam AI API
  version: '1.0'
servers:
  - url: https://api.anam.ai
    description: Anam API
security:
  - BearerAuth: []
tags:
  - name: Sessions
  - name: Personas
  - name: Avatars
  - name: Voices
  - name: LLMs
  - name: Knowledge
  - name: Tools
  - name: Share Links
paths:
  /v1/tools/{id}:
    put:
      tags:
        - Tools
      summary: update tool
      description: Update an existing tool
      operationId: updateTool
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
            format: uuid
          description: Tool ID
          example: 00000000-0000-0000-0000-000000000000
      requestBody:
        description: >-
          Fields to update on the tool. Only the fields you include are changed;
          omit a field to leave it unchanged. System tools cannot be modified.
        required: true
        content:
          application/json:
            examples:
              default:
                $ref: '#/components/examples/ToolUpdate'
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 64
                  description: Updated name for the tool
                  example: search_products
                description:
                  type: string
                  minLength: 1
                  maxLength: 1024
                  description: Updated description of what the tool does
                  example: Search the product catalog
                type:
                  type: string
                  enum:
                    - CLIENT
                    - SERVER_RAG
                    - SERVER_WEBHOOK
                    - SYSTEM
                  description: Updated tool type
                disableInterruptions:
                  type: boolean
                  description: >-
                    When true, interruptions are disabled while this tool is
                    executing. Defaults to false.
                  default: false
                  example: false
                config:
                  type: object
                  description: Updated type-specific configuration
                  oneOf:
                    - title: ClientToolConfig
                      type: object
                      properties:
                        parameters:
                          type: object
                          description: JSON schema for parameters
                        awaitResult:
                          type: boolean
                          description: >-
                            If true, engine pauses until client sends a result
                            back. Default is fire-and-forget.
                        toolTimeoutSeconds:
                          type: number
                          minimum: 1
                          maximum: 600
                          description: >-
                            Per-tool timeout in seconds when awaitResult is
                            true. Default 10s.
                    - title: ServerRagToolConfig
                      type: object
                      properties:
                        documentFolderIds:
                          type: array
                          items:
                            type: string
                            format: uuid
                          description: IDs of knowledge folders to search
                    - title: ServerWebhookToolConfig
                      type: object
                      properties:
                        url:
                          type: string
                          format: uri
                          description: Webhook URL to call
                        method:
                          type: string
                          enum:
                            - GET
                            - POST
                            - PUT
                            - DELETE
                            - PATCH
                        headers:
                          type: object
                          additionalProperties:
                            type: string
                        bodyTemplate:
                          type: string
                    - title: SystemToolConfig
                      type: object
                      properties:
                        action:
                          type: string
                          enum:
                            - end_call
                            - interrupt
      responses:
        '200':
          description: Successfully updated tool
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tool'
              examples:
                default:
                  $ref: '#/components/examples/ToolResponse'
        '400':
          description: Bad request - Invalid tool data
        '401':
          description: Unauthorized - Invalid or missing API key
        '403':
          description: Forbidden - System tools cannot be modified
        '404':
          description: Tool not found
        '500':
          description: Server error
components:
  examples:
    ToolUpdate:
      summary: Rename a tool
      value:
        name: open_scheduler
    ToolResponse:
      summary: A single tool definition
      value:
        id: 00000000-0000-0000-0000-000000000000
        name: open_calendar
        description: Open the calendar UI in the client app.
        type: CLIENT
        config:
          parameters:
            type: object
            properties:
              date:
                type: string
                description: Date to jump to, in YYYY-MM-DD format.
        createdAt: '2026-04-20T10:00:00.000Z'
        updatedAt: null
        usageCount: 0
  schemas:
    Tool:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the tool
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
          description: Name of the tool
          example: search_knowledge_base
        description:
          type: string
          description: Description of what the tool does
          example: Search the knowledge base for product information
        type:
          type: string
          enum:
            - CLIENT
            - SERVER_RAG
            - SERVER_WEBHOOK
            - SYSTEM
          description: Type of tool
        config:
          type: object
          description: Type-specific configuration
        disableInterruptions:
          type: boolean
          description: When true, interruptions are disabled while this tool is executing
          default: false
        createdAt:
          type: string
          format: date-time
          description: When the tool was created
        updatedAt:
          type:
            - string
            - 'null'
          format: date-time
          description: When the tool was last updated
        usageCount:
          type: integer
          description: Number of personas using this tool
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````