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

# Update an existing tool

> Update a tool’s name, description, input schema, or configuration. Only the fields you send are changed.



## OpenAPI

````yaml /api-reference/openapi.json patch /api/v1/tools/byId/{id}
openapi: 3.0.0
info:
  title: Flowra API (API Key Endpoints)
  description: >-
    **Flowra** is an AI-powered platform for building agents, workflows, and
    integrations.


    ### Capabilities

    - **Tools & Toolkits** – Define and group tools for agents and workflows.

    - **Workflows** – Orchestrate steps and automate processes.

    - **Triggers** – Schedule or event-based execution.

    - **Auth & Connections** – OAuth, API keys, and connected accounts.

    - **MCP** – Model Context Protocol server integration.

    - **Knowledge / RAG** – Add files and URLs for retrieval-augmented
    generation.


    ### Authentication

    Use the **x-api-key** header with a project API key to access endpoints that
    support API Key auth. Create and manage API keys in the dashboard under your
    project settings.


    Only endpoints that support API Key authentication via the @ApiKeyEnabled()
    decorator.


    Send x-api-key (required). On multi-tenant endpoints, optionally send
    x-username to act as an external user.


    Only endpoints that support API Key authentication via the @ApiKeyEnabled()
    decorator.


    Send x-api-key (required). On multi-tenant endpoints, optionally send
    x-username (defaults to the project’s default external user).
  version: '1.0'
  contact:
    name: Flowra
    url: https://flowra.dev
servers:
  - url: https://flowra.dev
    description: Flowra API
security: []
tags:
  - name: Users
    description: User profile
  - name: External Users
    description: End-user identities inside a project (x-username)
  - name: Auth Configs
    description: OAuth and API key configs for toolkits
  - name: Connected Accounts
    description: OAuth connected accounts and link creation
  - name: Toolkits
    description: List and search toolkits
  - name: Tools
    description: List, execute, and manage tools
  - name: Skills
    description: Browse, create, import, and install skills
  - name: Workflow & Agent
    description: Create, run, and inspect workflows and agents
  - name: Triggers
    description: Schedule and event-based trigger instances
  - name: Chat
    description: Threads and streaming agent runs
  - name: File
    description: Upload, list, and download files
  - name: Knowledge
    description: RAG knowledge collections
  - name: Table
    description: Collections and documents
  - name: Sandbox
    description: Ephemeral and durable code sandboxes
  - name: Browser
    description: Live browser sessions and view
  - name: LLM
    description: List AI models and generate completions
  - name: MCP
    description: MCP server management
paths:
  /api/v1/tools/byId/{id}:
    patch:
      tags:
        - Tools
      summary: Update an existing tool
      description: >-
        Update a tool’s name, description, input schema, or configuration. Only
        the fields you send are changed.
      operationId: ToolsController_updateTool
      parameters:
        - name: id
          required: true
          in: path
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateToolDto'
      responses:
        '200':
          description: Tool updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponseDto'
      security:
        - x-api-key: []
components:
  schemas:
    UpdateToolDto:
      $ref: '#/components/schemas/UpdateToolDto'
      type: object
      properties:
        slug:
          type: string
          maxLength: 100
          description: Tool slug
        name:
          type: string
          maxLength: 200
          description: Tool name
        description:
          type: string
          description: Tool description
        instructions:
          type: string
          description: Tool instructions
        toolkitSlug:
          type: string
          maxLength: 100
          description: Toolkit slug
        inputParameters:
          type: object
          description: Input parameters schema
        outputParameters:
          type: object
          description: Output parameters schema
        noAuth:
          type: boolean
          description: Whether the tool requires no authentication
          default: false
        scopes:
          description: Required scopes
          type: array
          items:
            type: string
        tags:
          description: Tool tags
          type: array
          items:
            type: string
        isImportant:
          type: boolean
          description: Whether the tool is important
          default: false
        popularityScore:
          type: number
          minimum: 0
          description: Popularity score
          default: 0
        type:
          enum:
            - action
            - poll
            - webhook
          type: string
          description: Tool type
          default: action
        availableVersions:
          description: Available versions
          type: array
          items:
            type: string
        version:
          type: string
          maxLength: 50
          description: Tool version
          default: 1.0.0
        isDeprecated:
          type: boolean
          description: Whether the tool is deprecated
          default: false
        isDisabled:
          type: boolean
          description: Whether the tool is disabled
          default: false
        triggerThreadKey:
          type: string
          description: Trigger thread key (for webhook type)
        deprecatedInfo:
          type: object
          properties:
            displayName:
              required: false
              type: string
            version:
              required: false
              type: string
            availableVersions:
              required: false
              type: array
              items:
                type: string
            isDeprecated:
              required: false
              type: boolean
            toolkit:
              type: object
              properties:
                logo:
                  required: false
                  type: string
        script:
          description: >-
            Optional custom script (JavaScript or Python) that runs when the
            tool is executed. Use it to call APIs, transform data, or implement
            custom logic.
          allOf:
            - $ref: '#/components/schemas/CreateToolScriptDto'
        executionCreditCost:
          type: number
          nullable: true
          minimum: 0
          description: >-
            Credits charged per successful execution. Omit or null for platform
            default (2). Admin only.
      required:
        - deprecatedInfo
    SuccessResponseDto:
      $ref: '#/components/schemas/SuccessResponseDto'
      type: object
      properties:
        success:
          type: boolean
          description: Success status
          example: true
        message:
          type: string
          description: Success message
          example: Operation completed successfully
        data:
          type: object
          description: Response data
      required:
        - success
        - message
        - data
  securitySchemes:
    x-api-key:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Project API key. Create and manage keys in the dashboard under Project →
        API Keys. Send as header: x-api-key: <your-key>

````