---
title: "UpdateToolBody"
description: "Request body for updating a Tool."
section: "Reference"
group: "Types"
order: 241
---

## Definition

```ts
interface UpdateToolBody {
  name?: string | undefined;
  description?: string | undefined;
  functionId?: string | undefined;
  functionVersionId?: string | null | undefined;
  inputSchemaId?: string | undefined;
  outputSchemaId?: string | undefined;
  examples?:
    | Array<{ args: Record<string, unknown>; result?: unknown }>
    | null
    | undefined;
  requiresConfirmation?: boolean | undefined;
  enabled?: boolean | undefined;
  runtimeUserId?: string | null | undefined;
}
```

## Fields

| Field                  | Type                                                                               | Notes                                                                                                                                                                                                                                                  |
| ---------------------- | ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                 | `string \| undefined`                                                              | `optional` — New LLM-facing name.                                                                                                                                                                                                                      |
| `description`          | `string \| undefined`                                                              | `optional` — New description.                                                                                                                                                                                                                          |
| `functionId`           | `string \| undefined`                                                              | `optional` — Repoint the tool at a different workspace function. Only valid for `server`-target tools. Must belong to the same workspace. Changing the function clears any existing `functionVersionId` pin unless one is provided in the same update. |
| `functionVersionId`    | `string \| null \| undefined`                                                      | `optional` — Update the pinned version. Pass null to unpin (follow `defaultVersionId` again).                                                                                                                                                          |
| `inputSchemaId`        | `string \| undefined`                                                              | `optional` — Updated input schema.                                                                                                                                                                                                                     |
| `outputSchemaId`       | `string \| undefined`                                                              | `optional` — Updated output schema.                                                                                                                                                                                                                    |
| `examples`             | `Array<{ args: Record<string, unknown>; result?: unknown; }> \| null \| undefined` | `optional` — Update few-shot examples. Pass null to clear.                                                                                                                                                                                             |
| `requiresConfirmation` | `boolean \| undefined`                                                             | `optional` — Toggle the confirmation requirement.                                                                                                                                                                                                      |
| `enabled`              | `boolean \| undefined`                                                             | `optional` — Toggle the enabled flag.                                                                                                                                                                                                                  |
| `runtimeUserId`        | `string \| null \| undefined`                                                      | `optional` — Override the workspace default service user as the runtime caller when this tool's underlying function is invoked. Null clears the override. Workspace-admin-only to set.                                                                 |
