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

# Update mid call tool

> Update an existing mid call tool

This endpoint allows you to update an existing mid call tool. All fields are optional - only provide the fields you want to update.

### Path Parameters

**id** `integer` *required*

The unique identifier of the tool to update

### Body Parameters

> [!NOTE]
>
> For tools linked to an Automation Platform flow, the `endpoint`, `method`, and
> `body_format` fields are ignored to protect the flow connection.

**name** `string`

Tool name — letters, numbers and underscores, starting with a letter or underscore (max 64 characters)

**description** `string`

Detailed explanation of when and how the AI should use this tool (max 255 characters)

**endpoint** `string`

Valid URL of the API endpoint to call (max 2048 characters)

**method** `string`

HTTP method: `GET`, `POST`, `PUT`, `PATCH`, or `DELETE`

**body\_format** `string`

Request body encoding for write methods: `json` (default) or `form`

**timeout** `integer`

Request timeout in seconds (1-30)

**headers** `array`

HTTP headers to send with the request (replaces existing headers)

**headers properties**

**name** `string` *required*

Header name

**value** `string` *required*

Header value (supports `{{variable}}` substitution)

**static\_fields** `array`

Fixed key/value pairs always sent with the request (replaces existing static fields)

**static\_fields properties**

**key** `string` *required*

Field key (max 64 chars)

**value** `string`

Field value (max 2048 chars; supports `{{variable}}` substitution)

**schema** `array`

Parameters schema (replaces existing schema)

**schema properties**

**name** `string` *required*

Parameter name (1-64 chars, starts with a letter or underscore)

**type** `string` *required*

Parameter type: `string`, `number`, `float`, or `boolean`

**description** `string` *required*

Parameter description (3-255 chars)

**required** `boolean`

Whether the AI must collect this parameter (default `false`)

### Response fields

**message** `string`

Success message

**data** `object`

The updated tool object with all current values

```json 200 OK theme={null}
{
  "message": "Tool updated successfully",
  "data": {
    "id": 1,
    "name": "update_customer_info",
    "description": "Use this tool to update customer information in the system.",
    "type": "http",
    "endpoint": "https://api.yourcompany.com/customers/update",
    "method": "POST",
    "body_format": "json",
    "timeout": 15,
    "headers": [
      {
        "name": "Content-Type",
        "value": "application/json"
      }
    ],
    "static_fields": [
      {
        "key": "source",
        "value": "autocalls"
      }
    ],
    "schema": [
      {
        "name": "customer_name",
        "type": "string",
        "description": "Full name of the customer",
        "required": true
      },
      {
        "name": "balance",
        "type": "float",
        "description": "Account balance as a decimal",
        "required": false
      },
      {
        "name": "newsletter_subscription",
        "type": "boolean",
        "description": "Whether customer wants to subscribe to newsletter",
        "required": false
      }
    ],
    "created_at": "2025-10-10T12:00:00.000000Z",
    "updated_at": "2025-10-10T14:30:00.000000Z"
  }
}
```

```json 404 Not Found theme={null}
{
  "message": "Tool not found"
}
```

```json 422 Validation Error theme={null}
{
  "message": "Validation failed",
  "errors": {
    "name": ["Tool name must start with a letter or underscore and contain only letters, numbers, and underscores (max 64 characters)."]
  }
}
```

### Managing Tool Assignments

To attach or detach this tool from assistants, use the Assistant API:

* **[Create Assistant](https://docs.receptonic.com/api-reference/assistants/create-assistant.md)** - Use the `tool_ids` parameter to attach tools when creating an assistant
* **[Update Assistant](https://docs.receptonic.com/api-reference/assistants/update-assistant.md)** - Use the `tool_ids` parameter to manage which tools are assigned to an assistant


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.