Get Draft Config
curl --request GET \
--url https://api.fish.audio/v1/agent/agents/{agent_id}/config \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fish.audio/v1/agent/agents/{agent_id}/config"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fish.audio/v1/agent/agents/{agent_id}/config', 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.fish.audio/v1/agent/agents/{agent_id}/config",
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>"
],
]);
$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.fish.audio/v1/agent/agents/{agent_id}/config"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.fish.audio/v1/agent/agents/{agent_id}/config")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fish.audio/v1/agent/agents/{agent_id}/config")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"agent_id": "<string>",
"config_hash": "<string>",
"prompt": {
"system_prompt": "",
"first_message_mode": "prompt",
"first_message": "Hi! Thanks for calling — how can I help you today?",
"first_message_prompt": "Greet the caller and ask what you can help with."
},
"voice": {
"voice_profile_id": "4501d82f5de3467ebf4d7ef095a2deee",
"speaking_language": "en"
},
"conversation": {
"max_duration_seconds": 1800,
"eagerness": "balanced",
"interruptible": true,
"interruption_sensitivity": "balanced",
"reengage_enabled": false,
"record_audio": true,
"timezone": "",
"transfer_destinations": []
},
"tools": {
"enabled": true,
"tool_ids": [
"<string>"
],
"system_tools": {
"language_detection": false,
"hang_up_call": false
}
},
"webhooks": {
"post_call": [
{
"url": "<string>",
"has_secret": false
}
]
},
"knowledge_base": {
"enabled": false,
"knowledge_source_ids": [
"<string>"
]
},
"analysis": {
"summary": {
"enabled": true,
"prompt": "<string>",
"language": "en"
},
"data_fields": [
{
"name": "<string>",
"type": "text",
"description": "",
"enum_options": [
"<string>"
]
}
],
"criteria": [
{
"name": "<string>",
"description": ""
}
]
},
"updated_at": "2023-11-07T05:31:56Z"
}{
"status": 123,
"message": "<string>"
}{
"status": 123,
"message": "<string>"
}Agents
Get Draft Config
Read the agent’s current draft configuration — the state the next publish will freeze.
GET
/
v1
/
agent
/
agents
/
{agent_id}
/
config
Get Draft Config
curl --request GET \
--url https://api.fish.audio/v1/agent/agents/{agent_id}/config \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fish.audio/v1/agent/agents/{agent_id}/config"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fish.audio/v1/agent/agents/{agent_id}/config', 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.fish.audio/v1/agent/agents/{agent_id}/config",
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>"
],
]);
$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.fish.audio/v1/agent/agents/{agent_id}/config"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.fish.audio/v1/agent/agents/{agent_id}/config")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fish.audio/v1/agent/agents/{agent_id}/config")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"agent_id": "<string>",
"config_hash": "<string>",
"prompt": {
"system_prompt": "",
"first_message_mode": "prompt",
"first_message": "Hi! Thanks for calling — how can I help you today?",
"first_message_prompt": "Greet the caller and ask what you can help with."
},
"voice": {
"voice_profile_id": "4501d82f5de3467ebf4d7ef095a2deee",
"speaking_language": "en"
},
"conversation": {
"max_duration_seconds": 1800,
"eagerness": "balanced",
"interruptible": true,
"interruption_sensitivity": "balanced",
"reengage_enabled": false,
"record_audio": true,
"timezone": "",
"transfer_destinations": []
},
"tools": {
"enabled": true,
"tool_ids": [
"<string>"
],
"system_tools": {
"language_detection": false,
"hang_up_call": false
}
},
"webhooks": {
"post_call": [
{
"url": "<string>",
"has_secret": false
}
]
},
"knowledge_base": {
"enabled": false,
"knowledge_source_ids": [
"<string>"
]
},
"analysis": {
"summary": {
"enabled": true,
"prompt": "<string>",
"language": "en"
},
"data_fields": [
{
"name": "<string>",
"type": "text",
"description": "",
"enum_options": [
"<string>"
]
}
],
"criteria": [
{
"name": "<string>",
"description": ""
}
]
},
"updated_at": "2023-11-07T05:31:56Z"
}{
"status": 123,
"message": "<string>"
}{
"status": 123,
"message": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Response
Request fulfilled, document follows
Content hash of the draft; equal to a version's config_hash when the draft has no unpublished changes.
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

