Skip to main content
Create A Tool
curl --request POST \
  --url https://{api_endpoint}/v1/tools \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "description": "<string>",
  "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": null,
      "default": null,
      "enum": [
        "<unknown>"
      ],
      "minimum": 123,
      "maximum": 123,
      "minLength": 123,
      "maxLength": 123,
      "pattern": "<string>",
      "format": "<string>",
      "aliasName": "<string>",
      "anyOf": [
        "<unknown>"
      ],
      "oneOf": [
        "<unknown>"
      ],
      "allOf": [
        "<unknown>"
      ]
    },
    "required": [],
    "format": "<string>",
    "anyOf": [
      "<unknown>"
    ],
    "oneOf": [
      "<unknown>"
    ],
    "allOf": [
      "<unknown>"
    ]
  },
  "binding": {
    "openapi": {
      "http_path": "<string>",
      "security": [],
      "servers": [],
      "connection_id": "<string>",
      "callback": {
        "callback_url": "<string>",
        "output_schema": {
          "type": "object",
          "description": "<string>",
          "properties": {},
          "items": {
            "type": "string",
            "title": "<string>",
            "description": "<string>",
            "properties": {},
            "required": [
              "<string>"
            ],
            "items": null,
            "default": null,
            "enum": [
              "<unknown>"
            ],
            "minimum": 123,
            "maximum": 123,
            "minLength": 123,
            "maxLength": 123,
            "pattern": "<string>",
            "format": "<string>",
            "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": null,
            "default": null,
            "enum": [
              "<unknown>"
            ],
            "minimum": 123,
            "maximum": 123,
            "minLength": 123,
            "maxLength": 123,
            "pattern": "<string>",
            "format": "<string>",
            "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>"
    },
    "client_side": {},
    "conversational_search": {
      "conversational_search_config": {},
      "connections": [
        "<unknown>"
      ],
      "version": "0.0.1"
    },
    "mcp": {
      "server_url": "<string>",
      "env": {},
      "command": "<string>",
      "args": [
        "<string>"
      ],
      "transport": "<string>",
      "connections": {}
    },
    "flow": {
      "http_path": "<string>",
      "security": [],
      "servers": [],
      "connection_id": "<string>",
      "callback": {
        "callback_url": "<string>",
        "output_schema": {
          "type": "object",
          "description": "<string>",
          "properties": {},
          "items": {
            "type": "string",
            "title": "<string>",
            "description": "<string>",
            "properties": {},
            "required": [
              "<string>"
            ],
            "items": null,
            "default": null,
            "enum": [
              "<unknown>"
            ],
            "minimum": 123,
            "maximum": 123,
            "minLength": 123,
            "maxLength": 123,
            "pattern": "<string>",
            "format": "<string>",
            "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": null,
            "default": null,
            "enum": [
              "<unknown>"
            ],
            "minimum": 123,
            "maximum": 123,
            "minLength": 123,
            "maxLength": 123,
            "pattern": "<string>",
            "format": "<string>",
            "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>"
}
'
import requests

url = "https://{api_endpoint}/v1/tools"

payload = {
"description": "<string>",
"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": None,
"default": None,
"enum": ["<unknown>"],
"minimum": 123,
"maximum": 123,
"minLength": 123,
"maxLength": 123,
"pattern": "<string>",
"format": "<string>",
"aliasName": "<string>",
"anyOf": ["<unknown>"],
"oneOf": ["<unknown>"],
"allOf": ["<unknown>"]
},
"required": [],
"format": "<string>",
"anyOf": ["<unknown>"],
"oneOf": ["<unknown>"],
"allOf": ["<unknown>"]
},
"binding": {
"openapi": {
"http_path": "<string>",
"security": [],
"servers": [],
"connection_id": "<string>",
"callback": {
"callback_url": "<string>",
"output_schema": {
"type": "object",
"description": "<string>",
"properties": {},
"items": {
"type": "string",
"title": "<string>",
"description": "<string>",
"properties": {},
"required": ["<string>"],
"items": None,
"default": None,
"enum": ["<unknown>"],
"minimum": 123,
"maximum": 123,
"minLength": 123,
"maxLength": 123,
"pattern": "<string>",
"format": "<string>",
"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": None,
"default": None,
"enum": ["<unknown>"],
"minimum": 123,
"maximum": 123,
"minLength": 123,
"maxLength": 123,
"pattern": "<string>",
"format": "<string>",
"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>"
},
"client_side": {},
"conversational_search": {
"conversational_search_config": {},
"connections": ["<unknown>"],
"version": "0.0.1"
},
"mcp": {
"server_url": "<string>",
"env": {},
"command": "<string>",
"args": ["<string>"],
"transport": "<string>",
"connections": {}
},
"flow": {
"http_path": "<string>",
"security": [],
"servers": [],
"connection_id": "<string>",
"callback": {
"callback_url": "<string>",
"output_schema": {
"type": "object",
"description": "<string>",
"properties": {},
"items": {
"type": "string",
"title": "<string>",
"description": "<string>",
"properties": {},
"required": ["<string>"],
"items": None,
"default": None,
"enum": ["<unknown>"],
"minimum": 123,
"maximum": 123,
"minLength": 123,
"maxLength": 123,
"pattern": "<string>",
"format": "<string>",
"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": None,
"default": None,
"enum": ["<unknown>"],
"minimum": 123,
"maximum": 123,
"minLength": 123,
"maxLength": 123,
"pattern": "<string>",
"format": "<string>",
"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>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
description: '<string>',
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: null,
default: null,
enum: ['<unknown>'],
minimum: 123,
maximum: 123,
minLength: 123,
maxLength: 123,
pattern: '<string>',
format: '<string>',
aliasName: '<string>',
anyOf: ['<unknown>'],
oneOf: ['<unknown>'],
allOf: ['<unknown>']
},
required: [],
format: '<string>',
anyOf: ['<unknown>'],
oneOf: ['<unknown>'],
allOf: ['<unknown>']
},
binding: {
openapi: {
http_path: '<string>',
security: [],
servers: [],
connection_id: '<string>',
callback: {
callback_url: '<string>',
output_schema: {
type: 'object',
description: '<string>',
properties: {},
items: {
type: 'string',
title: '<string>',
description: '<string>',
properties: {},
required: ['<string>'],
items: null,
default: null,
enum: ['<unknown>'],
minimum: 123,
maximum: 123,
minLength: 123,
maxLength: 123,
pattern: '<string>',
format: '<string>',
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: null,
default: null,
enum: ['<unknown>'],
minimum: 123,
maximum: 123,
minLength: 123,
maxLength: 123,
pattern: '<string>',
format: '<string>',
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>'
},
client_side: {},
conversational_search: {conversational_search_config: {}, connections: ['<unknown>'], version: '0.0.1'},
mcp: {
server_url: '<string>',
env: {},
command: '<string>',
args: ['<string>'],
transport: '<string>',
connections: {}
},
flow: {
http_path: '<string>',
security: [],
servers: [],
connection_id: '<string>',
callback: {
callback_url: '<string>',
output_schema: {
type: 'object',
description: '<string>',
properties: {},
items: {
type: 'string',
title: '<string>',
description: '<string>',
properties: {},
required: ['<string>'],
items: null,
default: null,
enum: ['<unknown>'],
minimum: 123,
maximum: 123,
minLength: 123,
maxLength: 123,
pattern: '<string>',
format: '<string>',
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: null,
default: null,
enum: ['<unknown>'],
minimum: 123,
maximum: 123,
minLength: 123,
maxLength: 123,
pattern: '<string>',
format: '<string>',
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>'
})
};

fetch('https://{api_endpoint}/v1/tools', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://{api_endpoint}/v1/tools",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'description' => '<string>',
'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' => null,
'default' => null,
'enum' => [
'<unknown>'
],
'minimum' => 123,
'maximum' => 123,
'minLength' => 123,
'maxLength' => 123,
'pattern' => '<string>',
'format' => '<string>',
'aliasName' => '<string>',
'anyOf' => [
'<unknown>'
],
'oneOf' => [
'<unknown>'
],
'allOf' => [
'<unknown>'
]
],
'required' => [

],
'format' => '<string>',
'anyOf' => [
'<unknown>'
],
'oneOf' => [
'<unknown>'
],
'allOf' => [
'<unknown>'
]
],
'binding' => [
'openapi' => [
'http_path' => '<string>',
'security' => [

],
'servers' => [

],
'connection_id' => '<string>',
'callback' => [
'callback_url' => '<string>',
'output_schema' => [
'type' => 'object',
'description' => '<string>',
'properties' => [

],
'items' => [
'type' => 'string',
'title' => '<string>',
'description' => '<string>',
'properties' => [

],
'required' => [
'<string>'
],
'items' => null,
'default' => null,
'enum' => [
'<unknown>'
],
'minimum' => 123,
'maximum' => 123,
'minLength' => 123,
'maxLength' => 123,
'pattern' => '<string>',
'format' => '<string>',
'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' => null,
'default' => null,
'enum' => [
'<unknown>'
],
'minimum' => 123,
'maximum' => 123,
'minLength' => 123,
'maxLength' => 123,
'pattern' => '<string>',
'format' => '<string>',
'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>'
],
'client_side' => [

],
'conversational_search' => [
'conversational_search_config' => [

],
'connections' => [
'<unknown>'
],
'version' => '0.0.1'
],
'mcp' => [
'server_url' => '<string>',
'env' => [

],
'command' => '<string>',
'args' => [
'<string>'
],
'transport' => '<string>',
'connections' => [

]
],
'flow' => [
'http_path' => '<string>',
'security' => [

],
'servers' => [

],
'connection_id' => '<string>',
'callback' => [
'callback_url' => '<string>',
'output_schema' => [
'type' => 'object',
'description' => '<string>',
'properties' => [

],
'items' => [
'type' => 'string',
'title' => '<string>',
'description' => '<string>',
'properties' => [

],
'required' => [
'<string>'
],
'items' => null,
'default' => null,
'enum' => [
'<unknown>'
],
'minimum' => 123,
'maximum' => 123,
'minLength' => 123,
'maxLength' => 123,
'pattern' => '<string>',
'format' => '<string>',
'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' => null,
'default' => null,
'enum' => [
'<unknown>'
],
'minimum' => 123,
'maximum' => 123,
'minLength' => 123,
'maxLength' => 123,
'pattern' => '<string>',
'format' => '<string>',
'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>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://{api_endpoint}/v1/tools"

payload := strings.NewReader("{\n \"description\": \"<string>\",\n \"name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n },\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"binding\": {\n \"openapi\": {\n \"http_path\": \"<string>\",\n \"security\": [],\n \"servers\": [],\n \"connection_id\": \"<string>\",\n \"callback\": {\n \"callback_url\": \"<string>\",\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n }\n },\n \"acknowledgement\": {\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n }\n }\n },\n \"python\": {\n \"function\": \"<string>\",\n \"requirements\": [\n \"<string>\"\n ],\n \"connections\": {}\n },\n \"wxflows\": {\n \"endpoint\": \"<string>\",\n \"flow_name\": \"<string>\",\n \"security\": []\n },\n \"skill\": {\n \"skillset_id\": \"<string>\",\n \"skill_id\": \"<string>\",\n \"skill_operation_path\": \"<string>\"\n },\n \"client_side\": {},\n \"conversational_search\": {\n \"conversational_search_config\": {},\n \"connections\": [\n \"<unknown>\"\n ],\n \"version\": \"0.0.1\"\n },\n \"mcp\": {\n \"server_url\": \"<string>\",\n \"env\": {},\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"transport\": \"<string>\",\n \"connections\": {}\n },\n \"flow\": {\n \"http_path\": \"<string>\",\n \"security\": [],\n \"servers\": [],\n \"connection_id\": \"<string>\",\n \"callback\": {\n \"callback_url\": \"<string>\",\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n }\n },\n \"acknowledgement\": {\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n }\n },\n \"flow_id\": \"\",\n \"version\": \"TIP\",\n \"dependencies\": {\n \"tools\": [],\n \"agents\": []\n },\n \"model\": {}\n },\n \"langflow\": {\n \"langflow_id\": \"<string>\",\n \"project_id\": \"<string>\",\n \"langflow_version\": \"<string>\",\n \"connections\": {}\n }\n },\n \"tags\": [\n \"<unknown>\"\n ],\n \"is_async\": false,\n \"restrictions\": \"editable\",\n \"bundled_agent_id\": \"<string>\"\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://{api_endpoint}/v1/tools")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"description\": \"<string>\",\n \"name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n },\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"binding\": {\n \"openapi\": {\n \"http_path\": \"<string>\",\n \"security\": [],\n \"servers\": [],\n \"connection_id\": \"<string>\",\n \"callback\": {\n \"callback_url\": \"<string>\",\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n }\n },\n \"acknowledgement\": {\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n }\n }\n },\n \"python\": {\n \"function\": \"<string>\",\n \"requirements\": [\n \"<string>\"\n ],\n \"connections\": {}\n },\n \"wxflows\": {\n \"endpoint\": \"<string>\",\n \"flow_name\": \"<string>\",\n \"security\": []\n },\n \"skill\": {\n \"skillset_id\": \"<string>\",\n \"skill_id\": \"<string>\",\n \"skill_operation_path\": \"<string>\"\n },\n \"client_side\": {},\n \"conversational_search\": {\n \"conversational_search_config\": {},\n \"connections\": [\n \"<unknown>\"\n ],\n \"version\": \"0.0.1\"\n },\n \"mcp\": {\n \"server_url\": \"<string>\",\n \"env\": {},\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"transport\": \"<string>\",\n \"connections\": {}\n },\n \"flow\": {\n \"http_path\": \"<string>\",\n \"security\": [],\n \"servers\": [],\n \"connection_id\": \"<string>\",\n \"callback\": {\n \"callback_url\": \"<string>\",\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n }\n },\n \"acknowledgement\": {\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n }\n },\n \"flow_id\": \"\",\n \"version\": \"TIP\",\n \"dependencies\": {\n \"tools\": [],\n \"agents\": []\n },\n \"model\": {}\n },\n \"langflow\": {\n \"langflow_id\": \"<string>\",\n \"project_id\": \"<string>\",\n \"langflow_version\": \"<string>\",\n \"connections\": {}\n }\n },\n \"tags\": [\n \"<unknown>\"\n ],\n \"is_async\": false,\n \"restrictions\": \"editable\",\n \"bundled_agent_id\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://{api_endpoint}/v1/tools")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"description\": \"<string>\",\n \"name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n },\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"binding\": {\n \"openapi\": {\n \"http_path\": \"<string>\",\n \"security\": [],\n \"servers\": [],\n \"connection_id\": \"<string>\",\n \"callback\": {\n \"callback_url\": \"<string>\",\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n }\n },\n \"acknowledgement\": {\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n }\n }\n },\n \"python\": {\n \"function\": \"<string>\",\n \"requirements\": [\n \"<string>\"\n ],\n \"connections\": {}\n },\n \"wxflows\": {\n \"endpoint\": \"<string>\",\n \"flow_name\": \"<string>\",\n \"security\": []\n },\n \"skill\": {\n \"skillset_id\": \"<string>\",\n \"skill_id\": \"<string>\",\n \"skill_operation_path\": \"<string>\"\n },\n \"client_side\": {},\n \"conversational_search\": {\n \"conversational_search_config\": {},\n \"connections\": [\n \"<unknown>\"\n ],\n \"version\": \"0.0.1\"\n },\n \"mcp\": {\n \"server_url\": \"<string>\",\n \"env\": {},\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"transport\": \"<string>\",\n \"connections\": {}\n },\n \"flow\": {\n \"http_path\": \"<string>\",\n \"security\": [],\n \"servers\": [],\n \"connection_id\": \"<string>\",\n \"callback\": {\n \"callback_url\": \"<string>\",\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n }\n },\n \"acknowledgement\": {\n \"output_schema\": {\n \"type\": \"object\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"items\": {\n \"type\": \"string\",\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"properties\": {},\n \"required\": [\n \"<string>\"\n ],\n \"items\": null,\n \"default\": null,\n \"enum\": [\n \"<unknown>\"\n ],\n \"minimum\": 123,\n \"maximum\": 123,\n \"minLength\": 123,\n \"maxLength\": 123,\n \"pattern\": \"<string>\",\n \"format\": \"<string>\",\n \"aliasName\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n },\n \"required\": [],\n \"format\": \"<string>\",\n \"anyOf\": [\n \"<unknown>\"\n ],\n \"oneOf\": [\n \"<unknown>\"\n ],\n \"allOf\": [\n \"<unknown>\"\n ]\n }\n },\n \"flow_id\": \"\",\n \"version\": \"TIP\",\n \"dependencies\": {\n \"tools\": [],\n \"agents\": []\n },\n \"model\": {}\n },\n \"langflow\": {\n \"langflow_id\": \"<string>\",\n \"project_id\": \"<string>\",\n \"langflow_version\": \"<string>\",\n \"connections\": {}\n }\n },\n \"tags\": [\n \"<unknown>\"\n ],\n \"is_async\": false,\n \"restrictions\": \"editable\",\n \"bundled_agent_id\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{}
{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<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 | null

A request body for a tool.

output_schema
ToolResponseBody · object | null

A response body for a tool.

binding
ToolBinding · object | null

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.