import { SyllableSDK } from "syllable-sdk";
const syllableSDK = new SyllableSDK({
apiKeyHeader: process.env["SYLLABLESDK_API_KEY_HEADER"] ?? "",
});
async function run() {
const result = await syllableSDK.insights.tools.getById({
toolId: "<id>",
});
console.log(result);
}
run();import os
from syllable_sdk import SyllableSDK
with SyllableSDK(
api_key_header=os.getenv("SYLLABLESDK_API_KEY_HEADER", ""),
) as ss_client:
res = ss_client.insights.tools.get_by_id(tool_id="<id>")
# Handle response
print(res)curl --request GET \
--url https://api.syllable.cloud/api/v1/insights/tool-configurations/{tool_id} \
--header 'Syllable-API-Key: <api-key>'const options = {method: 'GET', headers: {'Syllable-API-Key': '<api-key>'}};
fetch('https://api.syllable.cloud/api/v1/insights/tool-configurations/{tool_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.syllable.cloud/api/v1/insights/tool-configurations/{tool_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 => [
"Syllable-API-Key: <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.syllable.cloud/api/v1/insights/tool-configurations/{tool_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Syllable-API-Key", "<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.syllable.cloud/api/v1/insights/tool-configurations/{tool_id}")
.header("Syllable-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.syllable.cloud/api/v1/insights/tool-configurations/{tool_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Syllable-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"name": "summary-tool",
"description": "This tool uses GPT4.1 to generate a summary of the call",
"version": 1,
"tool_arguments": {
"prompt": "Provide a concise, accurate summary of the conversation's key points, focusing on the user's goal and how the agent responded"
},
"insight_tool_definition_id": 1,
"id": 1,
"last_updated_by": "user@email.com",
"insight_tool_definition": {
"id": 1,
"name": "llm_tool",
"type": "<string>",
"description": "An LLM tool evaluates a transcript with a given prompt",
"tool_parameters": {
"prompt": "string"
},
"tool_result_set": {
"summary": "string"
}
},
"created_at": "2026-09-16T00:00:00Z",
"updated_at": "2026-09-17T00:00:00Z",
"validation_issues": [
{
"id": "<string>",
"message": "<string>",
"severity": "error",
"path": "<string>",
"value": "<string>"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Get Insight Tool Config By Id
Get a InsightTool by Name.
import { SyllableSDK } from "syllable-sdk";
const syllableSDK = new SyllableSDK({
apiKeyHeader: process.env["SYLLABLESDK_API_KEY_HEADER"] ?? "",
});
async function run() {
const result = await syllableSDK.insights.tools.getById({
toolId: "<id>",
});
console.log(result);
}
run();import os
from syllable_sdk import SyllableSDK
with SyllableSDK(
api_key_header=os.getenv("SYLLABLESDK_API_KEY_HEADER", ""),
) as ss_client:
res = ss_client.insights.tools.get_by_id(tool_id="<id>")
# Handle response
print(res)curl --request GET \
--url https://api.syllable.cloud/api/v1/insights/tool-configurations/{tool_id} \
--header 'Syllable-API-Key: <api-key>'const options = {method: 'GET', headers: {'Syllable-API-Key': '<api-key>'}};
fetch('https://api.syllable.cloud/api/v1/insights/tool-configurations/{tool_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.syllable.cloud/api/v1/insights/tool-configurations/{tool_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 => [
"Syllable-API-Key: <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.syllable.cloud/api/v1/insights/tool-configurations/{tool_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Syllable-API-Key", "<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.syllable.cloud/api/v1/insights/tool-configurations/{tool_id}")
.header("Syllable-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.syllable.cloud/api/v1/insights/tool-configurations/{tool_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Syllable-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"name": "summary-tool",
"description": "This tool uses GPT4.1 to generate a summary of the call",
"version": 1,
"tool_arguments": {
"prompt": "Provide a concise, accurate summary of the conversation's key points, focusing on the user's goal and how the agent responded"
},
"insight_tool_definition_id": 1,
"id": 1,
"last_updated_by": "user@email.com",
"insight_tool_definition": {
"id": 1,
"name": "llm_tool",
"type": "<string>",
"description": "An LLM tool evaluates a transcript with a given prompt",
"tool_parameters": {
"prompt": "string"
},
"tool_result_set": {
"summary": "string"
}
},
"created_at": "2026-09-16T00:00:00Z",
"updated_at": "2026-09-17T00:00:00Z",
"validation_issues": [
{
"id": "<string>",
"message": "<string>",
"severity": "error",
"path": "<string>",
"value": "<string>"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Path Parameters
Response
Successful Response
Response model for insight tool saves, carrying any non-blocking findings.
Human readable name of insight tool
"summary-tool"
Text description of insight tool configuration
"This tool uses GPT4.1 to generate a summary of the call"
Version of insight tool
1
Arguments for calling the insight tool
{
"prompt": "Provide a concise, accurate summary of the conversation's key points, focusing on the user's goal and how the agent responded"
}
Unique ID for insight tool definition used by this tool configuration
1
Unique ID for insight tool
1
Email of user who last updated insight tool configuration
"user@email.com"
Insight Tool Definition
Show child attributes
Show child attributes
Timestamp of at which insight tool configuration was created
"2026-09-16T00:00:00Z"
Timestamp at which insight tool configuration was last updated
"2026-09-17T00:00:00Z"
Non-blocking findings for the saved insight tool (e.g. a deprecated model warning). Warnings and infos are informational; errors block the save.
Show child attributes
Show child attributes

