curl --request PATCH \
--url https://api.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"case_queue_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": true,
"concurrency": 1
}
'import requests
url = "https://api.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}"
payload = {
"case_queue_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": True,
"concurrency": 1
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
case_queue_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
enabled: true,
concurrency: 1
})
};
fetch('https://api.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_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.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}",
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([
'case_queue_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'enabled' => true,
'concurrency' => 1
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}"
payload := strings.NewReader("{\n \"case_queue_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"enabled\": true,\n \"concurrency\": 1\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"case_queue_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"enabled\": true,\n \"concurrency\": 1\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"case_queue_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"enabled\": true,\n \"concurrency\": 1\n}"
response = http.request(request)
puts response.read_body{
"case_trigger": {
"id": "<string>",
"agent_id": "<string>",
"case_queue_id": "<string>",
"case_queue_name": "<string>",
"user_id": "<string>",
"enabled": true,
"concurrency": 123,
"created_at": "<string>",
"updated_at": "<string>",
"creator_display_name": "<string>",
"can_disable": true,
"has_conflict": true,
"conflicting_agents": [
{
"id": "<string>",
"name": "<string>"
}
]
}
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Update Agent Case Trigger
Update fields on a case trigger. Only the trigger creator or a builder/admin can disable an enabled trigger or change its queue, and only a builder/admin can change queue concurrency.
curl --request PATCH \
--url https://api.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"case_queue_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": true,
"concurrency": 1
}
'import requests
url = "https://api.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}"
payload = {
"case_queue_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": True,
"concurrency": 1
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
case_queue_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
enabled: true,
concurrency: 1
})
};
fetch('https://api.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_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.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}",
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([
'case_queue_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'enabled' => true,
'concurrency' => 1
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}"
payload := strings.NewReader("{\n \"case_queue_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"enabled\": true,\n \"concurrency\": 1\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"case_queue_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"enabled\": true,\n \"concurrency\": 1\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.duvo.ai/v2/agents/{agent_id}/case-triggers/{trigger_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"case_queue_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"enabled\": true,\n \"concurrency\": 1\n}"
response = http.request(request)
puts response.read_body{
"case_trigger": {
"id": "<string>",
"agent_id": "<string>",
"case_queue_id": "<string>",
"case_queue_name": "<string>",
"user_id": "<string>",
"enabled": true,
"concurrency": 123,
"created_at": "<string>",
"updated_at": "<string>",
"creator_display_name": "<string>",
"can_disable": true,
"has_conflict": true,
"conflicting_agents": [
{
"id": "<string>",
"name": "<string>"
}
]
}
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Authorizations
API key authentication. Get your API key from the Duvo dashboard.
Path Parameters
The agent's unique identifier
The case trigger's unique identifier
Body
Queue whose new cases should trigger this agent
Whether the trigger is active. Disabled triggers do not dispatch runs.
Concurrency cap for the trigger's queue. The cap is queue-wide, so this affects every Agent working the queue, not just this trigger. Only 1 (run cases one at a time) or null (reset the whole queue's cap to the platform default) can be set here; higher caps are configured per-queue via PATCH /v2/admin/case-queues/{queueId}/concurrency. Omit to leave the current value unchanged.
1 Response
Default Response
Show child attributes
Show child attributes
Was this page helpful?