List Assistants
curl --request GET \
--url https://api.staging.kathan.tech/assistants \
--header 'Authorization: Bearer <token>' \
--header 'X-User-ID: <api-key>'import requests
url = "https://api.staging.kathan.tech/assistants"
headers = {
"Authorization": "Bearer <token>",
"X-User-ID": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {Authorization: 'Bearer <token>', 'X-User-ID': '<api-key>'}
};
fetch('https://api.staging.kathan.tech/assistants', 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.staging.kathan.tech/assistants",
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: Bearer <token>",
"X-User-ID: <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.staging.kathan.tech/assistants"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("X-User-ID", "<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.staging.kathan.tech/assistants")
.header("Authorization", "Bearer <token>")
.header("X-User-ID", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.staging.kathan.tech/assistants")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
request["X-User-ID"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"name": "<string>",
"system_instruction": "<string>",
"voice": {
"voice_id": "<string>",
"tts_provider": "cartesia",
"tts_model": "sonic-3",
"language": "en",
"speed": 1
},
"llm": {
"llm_provider": "openai",
"model": "gpt-4o-mini"
},
"transcriber": {
"stt_provider": "deepgram",
"stt_model": "nova-3",
"language": "en"
},
"speech_settings": {
"style": "neutral",
"responsiveness": "balanced",
"interruptions": "on",
"emotions": "natural"
},
"long_term_memory": {
"enabled": false,
"search_limit": 5,
"search_threshold": 0.1,
"system_prompt": "Relevant, user-specific context from previous conversations:\n\n"
},
"short_term_memory": {
"enabled": false,
"search_limit": 3
},
"call_summary": {
"prompt": "<string>"
},
"recording": {
"enabled": false,
"stereo": true,
"mp3_enabled": true
},
"call_actions": {
"enabled": true,
"allow_hangup": true,
"allow_transfer": true,
"hangup_triggers": [
"<string>"
],
"transfer_triggers": [
"<string>"
],
"transfer_number": "<string>",
"transfer_mode": "cold",
"confirm_required": true,
"auto_hangup_silence_seconds": 123,
"confirm_yes": [
"<string>"
],
"confirm_no": [
"<string>"
],
"webhook_url": "<string>",
"webhook_timeout_ms": 3500
},
"icon": "📞",
"guardrails": "",
"first_message": "<string>",
"knowledge_base_ids": [],
"phone_number_id": "<string>",
"assistant_speaks_first": true,
"machine_detection_timeout_seconds": 123,
"updated_at": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Assistants
List Assistants
GET
/
assistants
List Assistants
curl --request GET \
--url https://api.staging.kathan.tech/assistants \
--header 'Authorization: Bearer <token>' \
--header 'X-User-ID: <api-key>'import requests
url = "https://api.staging.kathan.tech/assistants"
headers = {
"Authorization": "Bearer <token>",
"X-User-ID": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {Authorization: 'Bearer <token>', 'X-User-ID': '<api-key>'}
};
fetch('https://api.staging.kathan.tech/assistants', 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.staging.kathan.tech/assistants",
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: Bearer <token>",
"X-User-ID: <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.staging.kathan.tech/assistants"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("X-User-ID", "<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.staging.kathan.tech/assistants")
.header("Authorization", "Bearer <token>")
.header("X-User-ID", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.staging.kathan.tech/assistants")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
request["X-User-ID"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"name": "<string>",
"system_instruction": "<string>",
"voice": {
"voice_id": "<string>",
"tts_provider": "cartesia",
"tts_model": "sonic-3",
"language": "en",
"speed": 1
},
"llm": {
"llm_provider": "openai",
"model": "gpt-4o-mini"
},
"transcriber": {
"stt_provider": "deepgram",
"stt_model": "nova-3",
"language": "en"
},
"speech_settings": {
"style": "neutral",
"responsiveness": "balanced",
"interruptions": "on",
"emotions": "natural"
},
"long_term_memory": {
"enabled": false,
"search_limit": 5,
"search_threshold": 0.1,
"system_prompt": "Relevant, user-specific context from previous conversations:\n\n"
},
"short_term_memory": {
"enabled": false,
"search_limit": 3
},
"call_summary": {
"prompt": "<string>"
},
"recording": {
"enabled": false,
"stereo": true,
"mp3_enabled": true
},
"call_actions": {
"enabled": true,
"allow_hangup": true,
"allow_transfer": true,
"hangup_triggers": [
"<string>"
],
"transfer_triggers": [
"<string>"
],
"transfer_number": "<string>",
"transfer_mode": "cold",
"confirm_required": true,
"auto_hangup_silence_seconds": 123,
"confirm_yes": [
"<string>"
],
"confirm_no": [
"<string>"
],
"webhook_url": "<string>",
"webhook_timeout_ms": 3500
},
"icon": "📞",
"guardrails": "",
"first_message": "<string>",
"knowledge_base_ids": [],
"phone_number_id": "<string>",
"assistant_speaks_first": true,
"machine_detection_timeout_seconds": 123,
"updated_at": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
API key authentication.
Required user id for API key requests.
Response
Successful Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
⌘I