curl --request POST \
--url https://api.duvo.ai/v2/agents/{agent_id}/case-triggers \
--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"
payload = {
"case_queue_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": True,
"concurrency": 1
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
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', 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",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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"
payload := strings.NewReader("{\n \"case_queue_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"enabled\": true,\n \"concurrency\": 1\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.duvo.ai/v2/agents/{agent_id}/case-triggers")
.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")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.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>"
}Create Agent Case Trigger
Create a case trigger for an agent. An agent may have at most one case trigger; this returns 409 if one already exists.
curl --request POST \
--url https://api.duvo.ai/v2/agents/{agent_id}/case-triggers \
--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"
payload = {
"case_queue_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": True,
"concurrency": 1
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
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', 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",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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"
payload := strings.NewReader("{\n \"case_queue_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"enabled\": true,\n \"concurrency\": 1\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.duvo.ai/v2/agents/{agent_id}/case-triggers")
.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")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.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
Body
Queue whose new cases should trigger this agent
Whether the trigger is active. Disabled triggers do not dispatch runs.
Concurrency cap for the target 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 queue's current cap unchanged.
1 Response
Default Response
Show child attributes
Show child attributes
Was this page helpful?