Skip to main content
PUT
https://app.famulor.de/api/
/
user
/
tools
/
{id}
Update mid call tool
curl --request PUT \
  --url https://app.famulor.de/api/user/tools/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "description": "<string>",
  "endpoint": "<string>",
  "method": "<string>",
  "timeout": 123,
  "headers": [
    {
      "name": "<string>",
      "value": "<string>"
    }
  ],
  "schema": [
    {
      "name": "<string>",
      "type": "<string>",
      "description": "<string>"
    }
  ]
}
'
{
  "message": "Tool updated successfully",
  "data": {
    "id": 1,
    "name": "update_customer_info",
    "description": "Use this tool to update customer information in the system.",
    "endpoint": "https://api.yourcompany.com/customers/update",
    "method": "POST",
    "timeout": 15,
    "headers": [
      {
        "name": "Content-Type",
        "value": "application/json"
      }
    ],
    "schema": [
      {
        "name": "customer_name",
        "type": "string",
        "description": "Full name of the customer"
      },
      {
        "name": "customer_age",
        "type": "number",
        "description": "Age of the customer"
      },
      {
        "name": "newsletter_subscription",
        "type": "boolean",
        "description": "Whether customer wants to subscribe to newsletter"
      }
    ],
    "created_at": "2025-10-10T12:00:00.000000Z",
    "updated_at": "2025-10-10T14:30:00.000000Z"
  }
}
Update one or more fields of an existing mid-call tool. Only the fields you provide will be changed; other fields remain unchanged.

Path Parameters

id
integer
required
The unique identifier of the tool to update

Body Parameters

name
string
Tool name - must use only lowercase letters and underscores, starting with a letter
description
string
Description explaining when and how the AI should use this tool (maximum 255 characters)
endpoint
string
Valid URL of the API endpoint to call
method
string
HTTP method: GET, POST, PUT, PATCH, or DELETE
timeout
integer
Request timeout in seconds (1-30)
headers
array
HTTP headers to send with the request (replaces existing headers)
schema
array
Parameter schema (replaces existing schema)

Response Fields

message
string
Success confirmation message
data
object
The updated tool object with all current values
{
  "message": "Tool updated successfully",
  "data": {
    "id": 1,
    "name": "update_customer_info",
    "description": "Use this tool to update customer information in the system.",
    "endpoint": "https://api.yourcompany.com/customers/update",
    "method": "POST",
    "timeout": 15,
    "headers": [
      {
        "name": "Content-Type",
        "value": "application/json"
      }
    ],
    "schema": [
      {
        "name": "customer_name",
        "type": "string",
        "description": "Full name of the customer"
      },
      {
        "name": "customer_age",
        "type": "number",
        "description": "Age of the customer"
      },
      {
        "name": "newsletter_subscription",
        "type": "boolean",
        "description": "Whether customer wants to subscribe to newsletter"
      }
    ],
    "created_at": "2025-10-10T12:00:00.000000Z",
    "updated_at": "2025-10-10T14:30:00.000000Z"
  }
}

Managing Tool Assignments

To attach or detach this tool from assistants, use the Assistant API:
  • Create Assistant - Use the tool_ids parameter to attach tools when creating an assistant
  • Update Assistant - Use the tool_ids parameter to manage which tools are assigned to an assistant