Get tool details
curl --request GET \
--url https://api.example.com/api/tools/catalog/{tool_key}import requests
url = "https://api.example.com/api/tools/catalog/{tool_key}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/api/tools/catalog/{tool_key}', 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.example.com/api/tools/catalog/{tool_key}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/tools/catalog/{tool_key}"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/api/tools/catalog/{tool_key}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/tools/catalog/{tool_key}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"tool_key": "<string>",
"display_name": "<string>",
"description": "<string>",
"functions": [
{
"name": "<string>",
"description": "<string>",
"parameters_json_schema": {},
"allowed_call_types": [
"<string>"
]
}
],
"icon": "<string>",
"api_base_url": "<string>",
"agent_config_schema": {
"type": "object",
"properties": {},
"required": [
"<string>"
]
},
"post_call_task": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}tools
Get tool details
Returns details for a specific tool by its key.
GET
/
api
/
tools
/
catalog
/
{tool_key}
Get tool details
curl --request GET \
--url https://api.example.com/api/tools/catalog/{tool_key}import requests
url = "https://api.example.com/api/tools/catalog/{tool_key}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/api/tools/catalog/{tool_key}', 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.example.com/api/tools/catalog/{tool_key}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/tools/catalog/{tool_key}"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/api/tools/catalog/{tool_key}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/tools/catalog/{tool_key}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"tool_key": "<string>",
"display_name": "<string>",
"description": "<string>",
"functions": [
{
"name": "<string>",
"description": "<string>",
"parameters_json_schema": {},
"allowed_call_types": [
"<string>"
]
}
],
"icon": "<string>",
"api_base_url": "<string>",
"agent_config_schema": {
"type": "object",
"properties": {},
"required": [
"<string>"
]
},
"post_call_task": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Path Parameters
Response
Successful Response
Metadata for a tool package loaded from manifest.json.
Unique tool identifier, e.g. 'calendly'
Human-readable name for UI
What this tool does
List of callable functions
Show child attributes
Show child attributes
Icon name or emoji
Base URL for API calls
JSON Schema for per-agent settings validation
Show child attributes
Show child attributes
Optional celery task name to execute after call ends