curl --request GET \
--url https://api.getoutbox.ai/agent/tool/{agent_id} \
--header 'Authorization: <api-key>'import requests
url = "https://api.getoutbox.ai/agent/tool/{agent_id}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.getoutbox.ai/agent/tool/{agent_id}', 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.getoutbox.ai/agent/tool/{agent_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$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.getoutbox.ai/agent/tool/{agent_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
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.getoutbox.ai/agent/tool/{agent_id}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoutbox.ai/agent/tool/{agent_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"type": "<string>",
"builtin_key": "<string>",
"display_name": "<string>",
"mcp_tool": "<string>",
"url": "<string>",
"description": "<string>",
"method": "<string>",
"auth_token": "<string>",
"config": {},
"is_async": true,
"is_success": true,
"is_prerun": true,
"is_postrun": true,
"schema": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"type": "<string>",
"required": true
}
],
"destinations": [
{}
],
"mcp_config_id": "<string>",
"mcp_allowed_tools": [
"<string>"
],
"mcp_toolkit": "<string>",
"icon_url": "<string>",
"application_icon_url": "<string>"
}
]List Agent Tools
Retrieve a list of all tools for an agent (simplified view)
curl --request GET \
--url https://api.getoutbox.ai/agent/tool/{agent_id} \
--header 'Authorization: <api-key>'import requests
url = "https://api.getoutbox.ai/agent/tool/{agent_id}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.getoutbox.ai/agent/tool/{agent_id}', 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.getoutbox.ai/agent/tool/{agent_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$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.getoutbox.ai/agent/tool/{agent_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
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.getoutbox.ai/agent/tool/{agent_id}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoutbox.ai/agent/tool/{agent_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"type": "<string>",
"builtin_key": "<string>",
"display_name": "<string>",
"mcp_tool": "<string>",
"url": "<string>",
"description": "<string>",
"method": "<string>",
"auth_token": "<string>",
"config": {},
"is_async": true,
"is_success": true,
"is_prerun": true,
"is_postrun": true,
"schema": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"type": "<string>",
"required": true
}
],
"destinations": [
{}
],
"mcp_config_id": "<string>",
"mcp_allowed_tools": [
"<string>"
],
"mcp_toolkit": "<string>",
"icon_url": "<string>",
"application_icon_url": "<string>"
}
]Authorizations
Company API Key
Path Parameters
The ID of the agent
Response
Tools retrieved successfully
custom, builtin, mcp, transfer, etc.
Built-in tool key (builtin tools only).
Resolved display name for built-in or MCP tools.
MCP tool identifier (mcp tools only).
HTTP method (custom tools).
Preset tool inputs supplied by the developer.
Tool input variables.
Show child attributes
Show child attributes
Transfer destinations (transfer tools only). Each entry: id, phone_number, description, transfer_message, transfer_type, plus optional custom_message, fallback_message, extension, transfer_agent_prompt, assistant_first_message*.
Composio MCP server ID (mcp tools only).
Allowed-tool whitelist for MCP servers.
Application icon URL (mcp tools only).
Application icon URL for resolved tool metadata.

