Tools

Update a tool

Partially update a tool. Omitted fields are preserved.

Nested objects (api, code, api.request) merge key-by-key. Arrays (inputs, outputs, headers, environment) replace in full when the key is present — send the complete list, including entries you are not changing. availability_rules is the one null-delete: omit it to leave the rule untouched, send null to detach, send an object to replace.

For api and code tools, contract, control, and implementation are writable.

Rename an output, or a code input, by sending its id with the new name. A rename without id returns 422. api inputs are name-keyed and cannot be renamed. Editing key, source, or is_visible_to_llm is allowed. Authorization headers stay stripped on read-back.

patch/v2/tools/{tool_id}

Request

  • Base URL: https://example.ada.support/api
  • URL: https://example.ada.support/api/v2/tools/{tool_id}
  • Auth: HTTP bearer

Path parameters

tool_idstring id required

The tool's id

Request body

type'api' | 'code'

If sent, must match the existing tool. Changing type is not supported.

namestring
descriptionstring
enabledboolean
direct_useboolean

Response

The updated tool

idstring required

The tool's id

type'api' | 'code' required

Which kind of tool this is, and which implementation key is present

namestring required

The tool's name, as the model sees it

descriptionstring required

What the tool does, as the model sees it

enabledboolean required

Whether the tool is available to the Agent at all

direct_useboolean nullable required

Whether the Agent may call this tool on its own, rather than only as a step inside a process.

Changes

No recorded changes to this operation across all 1 revision of this API.