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

# Delete Tool



## OpenAPI

````yaml https://api-prod.interactly.ai/api-docs/common/api.json delete /assistants/v1/tools/{id}
openapi: 3.1.0
info:
  title: Interactly API
  description: API for building interactly.ai services
  version: 1.1.0
  contact:
    name: Interactly
    url: https://interactly.ai
    email: developers@interactly.ai
servers:
  - url: https://api-prod.interactly.ai
    description: API Server
security: []
paths:
  /assistants/v1/tools/{id}:
    delete:
      tags:
        - Tools
      summary: Delete Tool
      operationId: deleteTool
      parameters:
        - name: id
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/FunctionTool'
                    title: FunctionTool
                discriminator:
                  propertyName: type
                  mapping:
                    function:
                      $ref: '#/components/schemas/FunctionTool'
        '404':
          description: When the tool does not exist
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Tool not found!
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Something went wrong!
                  error:
                    type: string
                    example: INTERNAL_ERROR
      security:
        - bearer: []
components:
  schemas:
    FunctionTool:
      type: object
      properties:
        _id:
          type: string
          description: This is the unique identifier for the tool.
          example: 1f7b1b1b1b1b1b1b1b1b1b1b
        teamId:
          type: string
          description: >-
            This is the unique identifier for the organization that this tool
            belongs to.
          example: 3f7b1b1b1b1b1b1b1b1b1b1b
        type:
          type: string
          enum:
            - function
          description: The type of tool. "function" for Function tool.
          example: function
        async:
          type: boolean
          description: >-
            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`).
          example: false
        function:
          description: This is the function definition of the tool.
          allOf:
            - $ref: '#/components/schemas/OpenAIFunction'
        messages:
          type: array
          description: >-
            These are the messages that will be spoken to the user as the tool
            is running.
          items:
            oneOf:
              - $ref: '#/components/schemas/ToolMessageStart'
                title: ToolMessageStart
              - $ref: '#/components/schemas/ToolMessageComplete'
                title: ToolMessageComplete
              - $ref: '#/components/schemas/ToolMessageFailed'
                title: ToolMessageFailed
              - $ref: '#/components/schemas/ToolMessageDelayed'
                title: ToolMessageDelayed
        server:
          description: >-
            This is the server that will be hit when this tool is requested by
            the model.


            All requests will be sent with the call object among other things.
          allOf:
            - $ref: '#/components/schemas/Server'
        createdAt:
          $ref: '#/components/schemas/CreatedAt'
        updatedAt:
          $ref: '#/components/schemas/UpdatedAt'
      required:
        - type
        - _id
        - teamId
        - function.name
    OpenAIFunction:
      type: object
      properties:
        name:
          type: string
          description: >-
            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.
          maxLength: 64
          pattern: /^[a-zA-Z0-9_-]{1,64}$/
          example: getUserDetailsByPhoneNumber
        description:
          type: string
          description: >-
            This is the description of what the function does, used by the AI to
            choose when and how to call the function.
          maxLength: 1000
          example: >-
            Get user details by phone number, Run this tool when you want user
            details like name, dob etc by their phone number
        parameters:
          description: >-
            These are the parameters the functions accepts, described as a JSON
            Schema object.


            See the [OpenAI
            guide](https://platform.openai.com/docs/guides/function-calling) for
            examples, and the [JSON Schema
            reference](https://json-schema.org/understanding-json-schema) for
            documentation about the format.


            Omitting parameters defines a function with an empty parameter list.
          allOf:
            - $ref: '#/components/schemas/OpenAIFunctionParameters'
        strict:
          type: boolean
          description: >-
            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
          default: false
      required:
        - name
    ToolMessageStart:
      type: object
      properties:
        type:
          type: string
          enum:
            - request-start
          description: >-
            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:
          type: string
          description: >-
            This is the content that the assistant says when this message is
            triggered.
          maxLength: 1000
          example: Please wait while I fetch the details.
      required:
        - type
    ToolMessageComplete:
      type: object
      properties:
        type:
          type: string
          description: >-
            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.
          enum:
            - request-complete
        content:
          type: string
          description: >-
            This is the content that the assistant says when this message is
            triggered.
          maxLength: 1000
          example: Here are the details you requested.
      required:
        - type
    ToolMessageFailed:
      type: object
      properties:
        type:
          type: string
          description: This message is triggered when the tool call fails.
          enum:
            - request-failed
        content:
          type: string
          description: >-
            This is the content that the assistant says when this message is
            triggered.
          maxLength: 1000
          example: I'm sorry, I couldn't fetch the details.
      required:
        - type
    ToolMessageDelayed:
      type: object
      properties:
        type:
          type: string
          description: This message is triggered when the tool call is delayed.
          enum:
            - request-response-delayed
        content:
          type: string
          description: >-
            This is the content that the assistant says when this message is
            triggered.
          maxLength: 1000
          example: I'm still fetching the details.
      required:
        - type
    Server:
      type: object
      properties:
        timeoutSeconds:
          type: number
          description: >-
            This is the timeout in seconds for the request to your server.
            Defaults to 20 seconds.


            @default 20
          minimum: 1
          maximum: 120
          example: 20
        url:
          type: string
          description: API endpoint to send requests to.
          example: https://api.example.com/v1/getUserDetails
        secret:
          type: string
          description: >-
            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.
          example: my-secret
        headers:
          type: object
          description: >-
            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.
          example: {}
      required:
        - url
    CreatedAt:
      type: string
      format: date-time
      description: This is the ISO 8601 date-time string of when the record was created.
      example: '2020-10-05T00:00:00.000Z'
    UpdatedAt:
      type: string
      format: date-time
      description: >-
        This is the ISO 8601 date-time string of when the record was last
        updated.
      example: '2020-10-05T00:00:00.000Z'
    OpenAIFunctionParameters:
      type: object
      properties:
        type:
          type: string
          description: >-
            This must be set to 'object'. It instructs the model to return a
            JSON object containing the function call properties.
          enum:
            - object
          example: object
        properties:
          type: object
          description: >-
            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.
          additionalProperties:
            $ref: '#/components/schemas/JsonSchema'
          example:
            dob:
              type: string
              format: date
              description: This is the date of birth of the user.
              example: '1990-03-08'
            phoneNumber:
              type: string
              description: This is the phone number of the user.
              example: '+919867543210'
        required:
          description: This specifies the properties that are required by the function.
          type: array
          items:
            type: string
          example:
            - phoneNumber
        additionalProperties:
          type: boolean
          description: >-
            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
          default: false
      required:
        - type
        - properties
    JsonSchema:
      type: object
      properties:
        type:
          type: string
          description: >-
            This is the type of output you'd like.


            `string`, `number`, `integer`, `boolean` are the primitive types and
            should be obvious.


            `array` and `object` are more interesting and quite powerful. They
            allow you to define nested structures.


            For `array`, you can define the schema of the items in the array
            using the `items` property.


            For `object`, you can define the properties of the object using the
            `properties` property.
          enum:
            - string
            - number
            - integer
            - boolean
            - array
            - object
        items:
          type: object
          description: >-
            This is required if the type is "array". This is the schema of the
            items in the array.


            This is of type JsonSchema. However, Swagger doesn't support
            circular references.
        properties:
          type: object
          description: >-
            This is required if the type is "object". This specifies the
            properties of the object.


            This is a map of string to JsonSchema. However, Swagger doesn't
            support circular references.
        description:
          type: string
          description: >-
            This is the description to help the model understand what it needs
            to output.
        required:
          description: |-
            This is a list of properties that are required.

            This only makes sense if the type is "object".
          type: array
          items:
            type: string
      required:
        - type
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: Bearer
      type: http
      description: >-
        Retrieve your API Key from [Dashboard API Keys
        Section](https://dashboard.interactly.ai/api-keys).

````