Skip to main content
POST
/
v1
/
tools
Create A Tool
curl --request POST \
  --url https://{api_endpoint}/api/v1/tools \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "description": "<string>",
  "permission": "read_only",
  "name": "<string>",
  "display_name": "<string>",
  "input_schema": {
    "type": "object",
    "properties": {},
    "required": []
  },
  "output_schema": {
    "type": "object",
    "description": "<string>",
    "properties": {},
    "items": {
      "type": "string",
      "title": "<string>",
      "description": "<string>",
      "properties": {},
      "required": [
        "<string>"
      ],
      "items": "<unknown>",
      "default": "<unknown>",
      "enum": [
        "<unknown>"
      ],
      "minimum": 123,
      "maximum": 123,
      "minLength": 123,
      "maxLength": 123,
      "pattern": "<string>",
      "format": "<string>",
      "in": "query",
      "aliasName": "<string>",
      "anyOf": [
        "<unknown>"
      ],
      "oneOf": [
        "<unknown>"
      ],
      "allOf": [
        "<unknown>"
      ]
    },
    "required": [],
    "format": "<string>",
    "anyOf": [
      "<unknown>"
    ],
    "oneOf": [
      "<unknown>"
    ],
    "allOf": [
      "<unknown>"
    ]
  },
  "binding": {
    "openapi": {
      "http_method": "GET",
      "http_path": "<string>",
      "security": [],
      "servers": [],
      "connection_id": "<string>",
      "callback": {
        "callback_url": "<string>",
        "method": "GET",
        "output_schema": {
          "type": "object",
          "description": "<string>",
          "properties": {},
          "items": {
            "type": "string",
            "title": "<string>",
            "description": "<string>",
            "properties": {},
            "required": [
              "<string>"
            ],
            "items": "<unknown>",
            "default": "<unknown>",
            "enum": [
              "<unknown>"
            ],
            "minimum": 123,
            "maximum": 123,
            "minLength": 123,
            "maxLength": 123,
            "pattern": "<string>",
            "format": "<string>",
            "in": "query",
            "aliasName": "<string>",
            "anyOf": [
              "<unknown>"
            ],
            "oneOf": [
              "<unknown>"
            ],
            "allOf": [
              "<unknown>"
            ]
          },
          "required": [],
          "format": "<string>",
          "anyOf": [
            "<unknown>"
          ],
          "oneOf": [
            "<unknown>"
          ],
          "allOf": [
            "<unknown>"
          ]
        },
        "input_schema": {
          "type": "object",
          "properties": {},
          "required": []
        }
      },
      "acknowledgement": {
        "output_schema": {
          "type": "object",
          "description": "<string>",
          "properties": {},
          "items": {
            "type": "string",
            "title": "<string>",
            "description": "<string>",
            "properties": {},
            "required": [
              "<string>"
            ],
            "items": "<unknown>",
            "default": "<unknown>",
            "enum": [
              "<unknown>"
            ],
            "minimum": 123,
            "maximum": 123,
            "minLength": 123,
            "maxLength": 123,
            "pattern": "<string>",
            "format": "<string>",
            "in": "query",
            "aliasName": "<string>",
            "anyOf": [
              "<unknown>"
            ],
            "oneOf": [
              "<unknown>"
            ],
            "allOf": [
              "<unknown>"
            ]
          },
          "required": [],
          "format": "<string>",
          "anyOf": [
            "<unknown>"
          ],
          "oneOf": [
            "<unknown>"
          ],
          "allOf": [
            "<unknown>"
          ]
        }
      }
    },
    "python": {
      "function": "<string>",
      "requirements": [
        "<string>"
      ],
      "connections": {}
    },
    "wxflows": {
      "endpoint": "<string>",
      "flow_name": "<string>",
      "security": []
    },
    "skill": {
      "skillset_id": "<string>",
      "skill_id": "<string>",
      "skill_operation_path": "<string>",
      "http_method": "GET"
    },
    "client_side": {},
    "conversational_search": {
      "conversational_search_config": {},
      "connections": [
        "<unknown>"
      ],
      "version": "0.0.1"
    },
    "mcp": {
      "server_url": "<string>",
      "source": "public-registry",
      "env": {},
      "command": "<string>",
      "args": [
        "<string>"
      ],
      "transport": "<string>",
      "connections": {}
    },
    "flow": {
      "http_method": "GET",
      "http_path": "<string>",
      "security": [],
      "servers": [],
      "connection_id": "<string>",
      "callback": {
        "callback_url": "<string>",
        "method": "GET",
        "output_schema": {
          "type": "object",
          "description": "<string>",
          "properties": {},
          "items": {
            "type": "string",
            "title": "<string>",
            "description": "<string>",
            "properties": {},
            "required": [
              "<string>"
            ],
            "items": "<unknown>",
            "default": "<unknown>",
            "enum": [
              "<unknown>"
            ],
            "minimum": 123,
            "maximum": 123,
            "minLength": 123,
            "maxLength": 123,
            "pattern": "<string>",
            "format": "<string>",
            "in": "query",
            "aliasName": "<string>",
            "anyOf": [
              "<unknown>"
            ],
            "oneOf": [
              "<unknown>"
            ],
            "allOf": [
              "<unknown>"
            ]
          },
          "required": [],
          "format": "<string>",
          "anyOf": [
            "<unknown>"
          ],
          "oneOf": [
            "<unknown>"
          ],
          "allOf": [
            "<unknown>"
          ]
        },
        "input_schema": {
          "type": "object",
          "properties": {},
          "required": []
        }
      },
      "acknowledgement": {
        "output_schema": {
          "type": "object",
          "description": "<string>",
          "properties": {},
          "items": {
            "type": "string",
            "title": "<string>",
            "description": "<string>",
            "properties": {},
            "required": [
              "<string>"
            ],
            "items": "<unknown>",
            "default": "<unknown>",
            "enum": [
              "<unknown>"
            ],
            "minimum": 123,
            "maximum": 123,
            "minLength": 123,
            "maxLength": 123,
            "pattern": "<string>",
            "format": "<string>",
            "in": "query",
            "aliasName": "<string>",
            "anyOf": [
              "<unknown>"
            ],
            "oneOf": [
              "<unknown>"
            ],
            "allOf": [
              "<unknown>"
            ]
          },
          "required": [],
          "format": "<string>",
          "anyOf": [
            "<unknown>"
          ],
          "oneOf": [
            "<unknown>"
          ],
          "allOf": [
            "<unknown>"
          ]
        }
      },
      "flow_id": "",
      "version": "TIP",
      "dependencies": {
        "tools": [],
        "agents": []
      },
      "model": {}
    },
    "langflow": {
      "langflow_id": "<string>",
      "project_id": "<string>",
      "langflow_version": "<string>",
      "connections": {}
    }
  },
  "tags": [
    "<unknown>"
  ],
  "is_async": false,
  "restrictions": "editable",
  "bundled_agent_id": "<string>"
}
'
{}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

A specification for a tool that can be used in an agent.

description
string
required
permission
enum<string>
required

The permission level required to use this tool.

Available options:
read_only,
write_only,
read_write,
admin
name
string | null

Name of the tool

display_name
string | null

Display name of the tool

input_schema
ToolRequestBody · object

A request body for a tool.

output_schema
ToolResponseBody · object

A response body for a tool.

binding
ToolBinding · object

A binding of the tool to a specific runtime environment such as an OpenAPI endpoint or local Python function.

tags
any[] | null
is_async
boolean
default:false

Whether the tool execution is asynchronous

restrictions
string
default:editable

Whether the tool can be edited

bundled_agent_id
string | null

Base agent id

Response

Successful Response

The response is of type Response Create A Tool V1 Tools Post · object.