---
title: "Delete Tool"
method: DELETE
path: "/assistants/v1/tools/{id}"
tags: ["Tools"]
---

# Delete Tool

`DELETE /assistants/v1/tools/{id}`

## Path parameters

- `id` string, required

## Response `200`

- FunctionTool
  - `_id` string, required — This is the unique identifier for the tool.
  - `teamId` string, required — This is the unique identifier for the organization that this tool belongs to.
  - `type` 'function', required — The type of tool. "function" for Function tool.
  - `async` boolean — This determines if the tool is async. If async, the assistant will move forward without waiting for your server to respond. This is useful if you just want to trigger something on your server. If sync, the assistant will wait for your server to respond. This is useful if want assistant to respond with the result from your server. Defaults to synchronous (`false`).
  - `function` OpenAIFunction
    - `name` string, required — This is the the name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.
    - `description` string — This is the description of what the function does, used by the AI to choose when and how to call the function.
    - `parameters` OpenAIFunctionParameters
      - `type` 'object', required — This must be set to 'object'. It instructs the model to return a JSON object containing the function call properties.
      - `properties` object, required — This provides a description of the properties required by the function. JSON Schema can be used to specify expectations for each property. Refer to [this doc](https://ajv.js.org/json-schema.html#json-data-type) for a comprehensive guide on JSON Schema.
      - `required` string[] — This specifies the properties that are required by the function.
      - `additionalProperties` boolean — This is a boolean that controls whether additional properties are allowed in the function call. If set to false, the model will only accept the properties defined in the parameters field. @default false
    - `strict` boolean — This is a boolean that controls whether to enable strict schema adherence when generating the function call. If set to true, the model will follow the exact schema defined in the parameters field. Only a subset of JSON Schema is supported when strict is true. Learn more about Structured Outputs in the [OpenAI guide](https://openai.com/index/introducing-structured-outputs-in-the-api/). @default false
  - `messages` union[] — These are the messages that will be spoken to the user as the tool is running.
    - union
      - ToolMessageStart
        - `type` 'request-start', required — This message is triggered when the tool call starts. This message is never triggered for async tools. If this message is not provided, one of the default filler messages "Hold on a sec", "One moment", "Just a sec", "Give me a moment" or "This'll just take a sec" will be used.
        - `content` string — This is the content that the assistant says when this message is triggered.
      - ToolMessageComplete
        - `type` 'request-complete', required — This message is triggered when the tool call is complete. This message is triggered immediately without waiting for your server to respond for async tool calls. If this message is not provided, the model will be requested to respond. If this message is provided, only this message will be spoken and the model will not be requested to come up with a response. It's an exclusive OR.
        - `content` string — This is the content that the assistant says when this message is triggered.
      - ToolMessageFailed
        - `type` 'request-failed', required — This message is triggered when the tool call fails.
        - `content` string — This is the content that the assistant says when this message is triggered.
      - ToolMessageDelayed
        - `type` 'request-response-delayed', required — This message is triggered when the tool call is delayed.
        - `content` string — This is the content that the assistant says when this message is triggered.
  - `server` Server
    - `timeoutSeconds` number — This is the timeout in seconds for the request to your server. Defaults to 20 seconds. @default 20
    - `url` string, required — API endpoint to send requests to.
    - `secret` string — This is the secret you can set that Interactly will send with every request to your server. Will be sent as a header called x-interactly-secret.
    - `headers` object — These are the custom headers to include in the request sent to your server. Each key-value pair represents a header name and its value.
  - `createdAt` string, date-time — This is the ISO 8601 date-time string of when the record was created.
  - `updatedAt` string, date-time — This is the ISO 8601 date-time string of when the record was last updated.

## Other responses

- `404` — When the tool does not exist
- `500` — Internal server error.

---

[API](https://skmtc.dev/interactly/apis/interactly-api.md) · [All operations](https://skmtc.dev/interactly/apis/interactly-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/interactly/interactly-api/revisions/8a408fde89f6/schema)
