Update Agent Status
curl --request PATCH \
--url https://api.ravan.ai/api/v1/agents/{id}/status/ \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '{}'import requests
url = "https://api.ravan.ai/api/v1/agents/{id}/status/"
payload = {}
headers = {
"X-Api-Key": "<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': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.ravan.ai/api/v1/agents/{id}/status/', 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.ravan.ai/api/v1/agents/{id}/status/",
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([
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.ravan.ai/api/v1/agents/{id}/status/"
payload := strings.NewReader("{}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("X-Api-Key", "<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://api.ravan.ai/api/v1/agents/{id}/status/")
.header("X-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ravan.ai/api/v1/agents/{id}/status/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["X-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Agent status updated successfully",
"data": { "id": "...", "status": "inactive" }
}
Agent API
Update Agent Status
Update Agent Status.
PATCH
/
api
/
v1
/
agents
/
{id}
/
status
/
Update Agent Status
curl --request PATCH \
--url https://api.ravan.ai/api/v1/agents/{id}/status/ \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '{}'import requests
url = "https://api.ravan.ai/api/v1/agents/{id}/status/"
payload = {}
headers = {
"X-Api-Key": "<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': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.ravan.ai/api/v1/agents/{id}/status/', 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.ravan.ai/api/v1/agents/{id}/status/",
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([
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.ravan.ai/api/v1/agents/{id}/status/"
payload := strings.NewReader("{}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("X-Api-Key", "<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://api.ravan.ai/api/v1/agents/{id}/status/")
.header("X-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ravan.ai/api/v1/agents/{id}/status/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["X-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Agent status updated successfully",
"data": { "id": "...", "status": "inactive" }
}
Authorizations
string
required
Your Agni API key used to authenticate the request. Pass it in the
X-Api-Key header. Find or rotate it from your Ravan AI account settings.Request
Example curl:curl -X PATCH "https://api.ravan.ai/api/v1/agents/{id}/status" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "status": "inactive" }'
Path Parameters
string
required
The unique ID of the resource in the path. Use the ID returned by the related create or list endpoint.
Body
string
Filters or sets the current status of the resource. Use one of the status values supported by the endpoint.
Response
boolean
Whether the request succeeded.
string
Human-readable status message.
object
Returned data.
Show data
Show data
string
Unique agent ID
string
Organization this agent belongs to
string
Associated widget settings ID
string
Internal name of the agent
string
Display name of the agent
string
status field. Allowed values:
AGENT_STATUS_UNSPECIFIED, AGENT_STATUS_ACTIVE, AGENT_STATUS_INACTIVE.string
LLM model identifier
string
Speech-to-speech model identifier
string
Voice ID for TTS
number
LLM temperature setting
integer
Milliseconds before sending a reminder
integer
Maximum number of reminders to send
string
Ambient sound identifier
number
Volume of ambient sound (0.0 - 1.0)
boolean
Whether to end the call after silence
integer
Maximum call duration in milliseconds
integer
Ring duration in milliseconds
boolean
Whether to enable voicemail detection
string
Message to leave on voicemail
integer
Voicemail detection timeout in milliseconds
boolean
Whether to transfer the call to a backup number on failure
string
The backup number to transfer the call to
object
IVR (Interactive Voice Response) configuration
string
Model to use for post-call analysis
string
Prompt used for generating call summary
object
Tools selected for this agent
object
Integration configuration
string
Knowledge base content or reference
string
Opening message spoken by the agent
string
Who speaks first: agent or user
string
Creation timestamp
string
Last update timestamp
{
"success": true,
"message": "Agent status updated successfully",
"data": { "id": "...", "status": "inactive" }
}
Authorizations
Path Parameters
Agent ID
Body
application/json
Status of the agent
Available options:
AGENT_STATUS_UNSPECIFIED, AGENT_STATUS_ACTIVE, AGENT_STATUS_INACTIVE ⌘I

