Edit Assistant
Updates an existing assistant with new configuration settings. Each operation requires specific fields to be provided.
PATCH
/
agent
/
v1
Edit Assistant
curl --request PATCH \
--url https://prod-api.revenueable.ai/ca/api/v0/agent/v1 \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <x-api-key>' \
--data '
{
"operation": "edit_agent_display_name",
"agent_id": "830f767a-397e-4b39-82ff-235cd344e2f9",
"agent_display_name": "Updated Sales Assistant",
"language": "en-US",
"voice_id": "3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d",
"secondary_voice_id": "4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e",
"secondary_language": "hi-IN",
"agent_prompt": "You are a helpful sales assistant.",
"custom_variables": [
"callee_name",
"mobile_number",
"company",
"lead_source"
],
"number_id": "5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c",
"kb_id": "7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d",
"whitelisted_domains": [
"https://www.revenueable.ai",
"https://example.com"
],
"voice_speed": 1.2
}
'import requests
url = "https://prod-api.revenueable.ai/ca/api/v0/agent/v1"
payload = {
"operation": "edit_agent_display_name",
"agent_id": "830f767a-397e-4b39-82ff-235cd344e2f9",
"agent_display_name": "Updated Sales Assistant",
"language": "en-US",
"voice_id": "3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d",
"secondary_voice_id": "4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e",
"secondary_language": "hi-IN",
"agent_prompt": "You are a helpful sales assistant.",
"custom_variables": ["callee_name", "mobile_number", "company", "lead_source"],
"number_id": "5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c",
"kb_id": "7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d",
"whitelisted_domains": ["https://www.revenueable.ai", "https://example.com"],
"voice_speed": 1.2
}
headers = {
"X-API-KEY": "<x-api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'X-API-KEY': '<x-api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
operation: 'edit_agent_display_name',
agent_id: '830f767a-397e-4b39-82ff-235cd344e2f9',
agent_display_name: 'Updated Sales Assistant',
language: 'en-US',
voice_id: '3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d',
secondary_voice_id: '4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e',
secondary_language: 'hi-IN',
agent_prompt: 'You are a helpful sales assistant.',
custom_variables: ['callee_name', 'mobile_number', 'company', 'lead_source'],
number_id: '5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c',
kb_id: '7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d',
whitelisted_domains: ['https://www.revenueable.ai', 'https://example.com'],
voice_speed: 1.2
})
};
fetch('https://prod-api.revenueable.ai/ca/api/v0/agent/v1', 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://prod-api.revenueable.ai/ca/api/v0/agent/v1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'operation' => 'edit_agent_display_name',
'agent_id' => '830f767a-397e-4b39-82ff-235cd344e2f9',
'agent_display_name' => 'Updated Sales Assistant',
'language' => 'en-US',
'voice_id' => '3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d',
'secondary_voice_id' => '4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e',
'secondary_language' => 'hi-IN',
'agent_prompt' => 'You are a helpful sales assistant.',
'custom_variables' => [
'callee_name',
'mobile_number',
'company',
'lead_source'
],
'number_id' => '5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c',
'kb_id' => '7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d',
'whitelisted_domains' => [
'https://www.revenueable.ai',
'https://example.com'
],
'voice_speed' => 1.2
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <x-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://prod-api.revenueable.ai/ca/api/v0/agent/v1"
payload := strings.NewReader("{\n \"operation\": \"edit_agent_display_name\",\n \"agent_id\": \"830f767a-397e-4b39-82ff-235cd344e2f9\",\n \"agent_display_name\": \"Updated Sales Assistant\",\n \"language\": \"en-US\",\n \"voice_id\": \"3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d\",\n \"secondary_voice_id\": \"4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e\",\n \"secondary_language\": \"hi-IN\",\n \"agent_prompt\": \"You are a helpful sales assistant.\",\n \"custom_variables\": [\n \"callee_name\",\n \"mobile_number\",\n \"company\",\n \"lead_source\"\n ],\n \"number_id\": \"5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c\",\n \"kb_id\": \"7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d\",\n \"whitelisted_domains\": [\n \"https://www.revenueable.ai\",\n \"https://example.com\"\n ],\n \"voice_speed\": 1.2\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("X-API-KEY", "<x-api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://prod-api.revenueable.ai/ca/api/v0/agent/v1")
.header("X-API-KEY", "<x-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"operation\": \"edit_agent_display_name\",\n \"agent_id\": \"830f767a-397e-4b39-82ff-235cd344e2f9\",\n \"agent_display_name\": \"Updated Sales Assistant\",\n \"language\": \"en-US\",\n \"voice_id\": \"3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d\",\n \"secondary_voice_id\": \"4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e\",\n \"secondary_language\": \"hi-IN\",\n \"agent_prompt\": \"You are a helpful sales assistant.\",\n \"custom_variables\": [\n \"callee_name\",\n \"mobile_number\",\n \"company\",\n \"lead_source\"\n ],\n \"number_id\": \"5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c\",\n \"kb_id\": \"7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d\",\n \"whitelisted_domains\": [\n \"https://www.revenueable.ai\",\n \"https://example.com\"\n ],\n \"voice_speed\": 1.2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod-api.revenueable.ai/ca/api/v0/agent/v1")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["X-API-KEY"] = '<x-api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"operation\": \"edit_agent_display_name\",\n \"agent_id\": \"830f767a-397e-4b39-82ff-235cd344e2f9\",\n \"agent_display_name\": \"Updated Sales Assistant\",\n \"language\": \"en-US\",\n \"voice_id\": \"3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d\",\n \"secondary_voice_id\": \"4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e\",\n \"secondary_language\": \"hi-IN\",\n \"agent_prompt\": \"You are a helpful sales assistant.\",\n \"custom_variables\": [\n \"callee_name\",\n \"mobile_number\",\n \"company\",\n \"lead_source\"\n ],\n \"number_id\": \"5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c\",\n \"kb_id\": \"7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d\",\n \"whitelisted_domains\": [\n \"https://www.revenueable.ai\",\n \"https://example.com\"\n ],\n \"voice_speed\": 1.2\n}"
response = http.request(request)
puts response.read_body{
"message": "Agent updated successfully!",
"agent_id": "830f767a-397e-4b39-82ff-235cd344e2f9"
}{
"detail": "Selected voice does not support the specified language"
}{
"detail": "Agent not found"
}{
"detail": "Failed to edit agent"
}Headers
(Required) Your Revenueable AI API key.
Example:
"7251cb4b-3373-43a4-844c-b27a1d45e0c9"
Body
application/json
Available options:
attach_inbound_number, remove_inbound_number, attach_kb, remove_kb, edit_custom_vars, edit_language, edit_voice, edit_prompt, edit_noise_settings, edit_agent_display_name, edit_intro_message, edit_query_phrases, edit_dtmf_settings, edit_vad_settings, edit_agent_whitelisted_domains, edit_voice_speed, edit_extract_callee_name, edit_vocab, edit_api_settings, edit_secondary_language, edit_secondary_voice Example:
"edit_agent_display_name"
Example:
"830f767a-397e-4b39-82ff-235cd344e2f9"
Example:
"Updated Sales Assistant"
Available options:
en-US, en-IN, hi-IN, ta-IN, te-IN, kn-IN, mr-IN, gu-IN, ar-AE Example:
"en-US"
Example:
"3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d"
Example:
"4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e"
Available options:
en-US, en-IN, hi-IN, ta-IN, te-IN, kn-IN, mr-IN, gu-IN, ar-AE Example:
"hi-IN"
Example:
"You are a helpful sales assistant."
Example:
[ "callee_name", "mobile_number", "company", "lead_source" ]
Example:
"5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c"
Example:
"7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d"
Example:
[ "https://www.revenueable.ai", "https://example.com" ]
Example:
1.2
⌘I
Edit Assistant
curl --request PATCH \
--url https://prod-api.revenueable.ai/ca/api/v0/agent/v1 \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <x-api-key>' \
--data '
{
"operation": "edit_agent_display_name",
"agent_id": "830f767a-397e-4b39-82ff-235cd344e2f9",
"agent_display_name": "Updated Sales Assistant",
"language": "en-US",
"voice_id": "3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d",
"secondary_voice_id": "4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e",
"secondary_language": "hi-IN",
"agent_prompt": "You are a helpful sales assistant.",
"custom_variables": [
"callee_name",
"mobile_number",
"company",
"lead_source"
],
"number_id": "5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c",
"kb_id": "7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d",
"whitelisted_domains": [
"https://www.revenueable.ai",
"https://example.com"
],
"voice_speed": 1.2
}
'import requests
url = "https://prod-api.revenueable.ai/ca/api/v0/agent/v1"
payload = {
"operation": "edit_agent_display_name",
"agent_id": "830f767a-397e-4b39-82ff-235cd344e2f9",
"agent_display_name": "Updated Sales Assistant",
"language": "en-US",
"voice_id": "3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d",
"secondary_voice_id": "4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e",
"secondary_language": "hi-IN",
"agent_prompt": "You are a helpful sales assistant.",
"custom_variables": ["callee_name", "mobile_number", "company", "lead_source"],
"number_id": "5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c",
"kb_id": "7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d",
"whitelisted_domains": ["https://www.revenueable.ai", "https://example.com"],
"voice_speed": 1.2
}
headers = {
"X-API-KEY": "<x-api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'X-API-KEY': '<x-api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
operation: 'edit_agent_display_name',
agent_id: '830f767a-397e-4b39-82ff-235cd344e2f9',
agent_display_name: 'Updated Sales Assistant',
language: 'en-US',
voice_id: '3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d',
secondary_voice_id: '4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e',
secondary_language: 'hi-IN',
agent_prompt: 'You are a helpful sales assistant.',
custom_variables: ['callee_name', 'mobile_number', 'company', 'lead_source'],
number_id: '5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c',
kb_id: '7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d',
whitelisted_domains: ['https://www.revenueable.ai', 'https://example.com'],
voice_speed: 1.2
})
};
fetch('https://prod-api.revenueable.ai/ca/api/v0/agent/v1', 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://prod-api.revenueable.ai/ca/api/v0/agent/v1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'operation' => 'edit_agent_display_name',
'agent_id' => '830f767a-397e-4b39-82ff-235cd344e2f9',
'agent_display_name' => 'Updated Sales Assistant',
'language' => 'en-US',
'voice_id' => '3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d',
'secondary_voice_id' => '4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e',
'secondary_language' => 'hi-IN',
'agent_prompt' => 'You are a helpful sales assistant.',
'custom_variables' => [
'callee_name',
'mobile_number',
'company',
'lead_source'
],
'number_id' => '5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c',
'kb_id' => '7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d',
'whitelisted_domains' => [
'https://www.revenueable.ai',
'https://example.com'
],
'voice_speed' => 1.2
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <x-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://prod-api.revenueable.ai/ca/api/v0/agent/v1"
payload := strings.NewReader("{\n \"operation\": \"edit_agent_display_name\",\n \"agent_id\": \"830f767a-397e-4b39-82ff-235cd344e2f9\",\n \"agent_display_name\": \"Updated Sales Assistant\",\n \"language\": \"en-US\",\n \"voice_id\": \"3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d\",\n \"secondary_voice_id\": \"4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e\",\n \"secondary_language\": \"hi-IN\",\n \"agent_prompt\": \"You are a helpful sales assistant.\",\n \"custom_variables\": [\n \"callee_name\",\n \"mobile_number\",\n \"company\",\n \"lead_source\"\n ],\n \"number_id\": \"5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c\",\n \"kb_id\": \"7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d\",\n \"whitelisted_domains\": [\n \"https://www.revenueable.ai\",\n \"https://example.com\"\n ],\n \"voice_speed\": 1.2\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("X-API-KEY", "<x-api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://prod-api.revenueable.ai/ca/api/v0/agent/v1")
.header("X-API-KEY", "<x-api-key>")
.header("Content-Type", "application/json")
.body("{\n \"operation\": \"edit_agent_display_name\",\n \"agent_id\": \"830f767a-397e-4b39-82ff-235cd344e2f9\",\n \"agent_display_name\": \"Updated Sales Assistant\",\n \"language\": \"en-US\",\n \"voice_id\": \"3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d\",\n \"secondary_voice_id\": \"4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e\",\n \"secondary_language\": \"hi-IN\",\n \"agent_prompt\": \"You are a helpful sales assistant.\",\n \"custom_variables\": [\n \"callee_name\",\n \"mobile_number\",\n \"company\",\n \"lead_source\"\n ],\n \"number_id\": \"5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c\",\n \"kb_id\": \"7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d\",\n \"whitelisted_domains\": [\n \"https://www.revenueable.ai\",\n \"https://example.com\"\n ],\n \"voice_speed\": 1.2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod-api.revenueable.ai/ca/api/v0/agent/v1")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["X-API-KEY"] = '<x-api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"operation\": \"edit_agent_display_name\",\n \"agent_id\": \"830f767a-397e-4b39-82ff-235cd344e2f9\",\n \"agent_display_name\": \"Updated Sales Assistant\",\n \"language\": \"en-US\",\n \"voice_id\": \"3b5c7d2a-8e9f-4a1b-9c6d-2e5f8a7b3c4d\",\n \"secondary_voice_id\": \"4c6d8e3b-9f0a-5b2c-ad7e-3f6a9b8c5d7e\",\n \"secondary_language\": \"hi-IN\",\n \"agent_prompt\": \"You are a helpful sales assistant.\",\n \"custom_variables\": [\n \"callee_name\",\n \"mobile_number\",\n \"company\",\n \"lead_source\"\n ],\n \"number_id\": \"5d7f9a2b-1c3e-4f6a-8b9c-0d1e2f3a4b5c\",\n \"kb_id\": \"7a9c2d5e-4f6b-1a2b-3c4d-5e6f7a8b9c0d\",\n \"whitelisted_domains\": [\n \"https://www.revenueable.ai\",\n \"https://example.com\"\n ],\n \"voice_speed\": 1.2\n}"
response = http.request(request)
puts response.read_body{
"message": "Agent updated successfully!",
"agent_id": "830f767a-397e-4b39-82ff-235cd344e2f9"
}{
"detail": "Selected voice does not support the specified language"
}{
"detail": "Agent not found"
}{
"detail": "Failed to edit agent"
}