Update a squad
curl --request PUT \
--url https://api.orbit.devotel.io/api/v1/agents/squads/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Support Team - Updated",
"description": "Upgraded support routing with billing specialist",
"classifier_agent_id": "agt_classifier002",
"members": [
{
"agent_id": "<string>",
"intent_labels": [
"<string>"
],
"description": "<string>"
}
],
"active": true,
"max_cost_per_day_cents": 123
}
'import requests
url = "https://api.orbit.devotel.io/api/v1/agents/squads/{id}"
payload = {
"name": "Support Team - Updated",
"description": "Upgraded support routing with billing specialist",
"classifier_agent_id": "agt_classifier002",
"members": [
{
"agent_id": "<string>",
"intent_labels": ["<string>"],
"description": "<string>"
}
],
"active": True,
"max_cost_per_day_cents": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'Support Team - Updated',
description: 'Upgraded support routing with billing specialist',
classifier_agent_id: 'agt_classifier002',
members: [{agent_id: '<string>', intent_labels: ['<string>'], description: '<string>'}],
active: true,
max_cost_per_day_cents: 123
})
};
fetch('https://api.orbit.devotel.io/api/v1/agents/squads/{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.orbit.devotel.io/api/v1/agents/squads/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Support Team - Updated',
'description' => 'Upgraded support routing with billing specialist',
'classifier_agent_id' => 'agt_classifier002',
'members' => [
[
'agent_id' => '<string>',
'intent_labels' => [
'<string>'
],
'description' => '<string>'
]
],
'active' => true,
'max_cost_per_day_cents' => 123
]),
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.orbit.devotel.io/api/v1/agents/squads/{id}"
payload := strings.NewReader("{\n \"name\": \"Support Team - Updated\",\n \"description\": \"Upgraded support routing with billing specialist\",\n \"classifier_agent_id\": \"agt_classifier002\",\n \"members\": [\n {\n \"agent_id\": \"<string>\",\n \"intent_labels\": [\n \"<string>\"\n ],\n \"description\": \"<string>\"\n }\n ],\n \"active\": true,\n \"max_cost_per_day_cents\": 123\n}")
req, _ := http.NewRequest("PUT", 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.put("https://api.orbit.devotel.io/api/v1/agents/squads/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Support Team - Updated\",\n \"description\": \"Upgraded support routing with billing specialist\",\n \"classifier_agent_id\": \"agt_classifier002\",\n \"members\": [\n {\n \"agent_id\": \"<string>\",\n \"intent_labels\": [\n \"<string>\"\n ],\n \"description\": \"<string>\"\n }\n ],\n \"active\": true,\n \"max_cost_per_day_cents\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orbit.devotel.io/api/v1/agents/squads/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Support Team - Updated\",\n \"description\": \"Upgraded support routing with billing specialist\",\n \"classifier_agent_id\": \"agt_classifier002\",\n \"members\": [\n {\n \"agent_id\": \"<string>\",\n \"intent_labels\": [\n \"<string>\"\n ],\n \"description\": \"<string>\"\n }\n ],\n \"active\": true,\n \"max_cost_per_day_cents\": 123\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "<string>",
"name": "<string>",
"updated_at": "2023-11-07T05:31:56Z"
}
}API Reference
Update a squad
Modify one or more fields of an existing squad (name, description, classifier, members, fallback agent, or cost cap). The update validates the merged state to prevent routing loops before persisting.
PUT
/
api
/
v1
/
agents
/
squads
/
{id}
Update a squad
curl --request PUT \
--url https://api.orbit.devotel.io/api/v1/agents/squads/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Support Team - Updated",
"description": "Upgraded support routing with billing specialist",
"classifier_agent_id": "agt_classifier002",
"members": [
{
"agent_id": "<string>",
"intent_labels": [
"<string>"
],
"description": "<string>"
}
],
"active": true,
"max_cost_per_day_cents": 123
}
'import requests
url = "https://api.orbit.devotel.io/api/v1/agents/squads/{id}"
payload = {
"name": "Support Team - Updated",
"description": "Upgraded support routing with billing specialist",
"classifier_agent_id": "agt_classifier002",
"members": [
{
"agent_id": "<string>",
"intent_labels": ["<string>"],
"description": "<string>"
}
],
"active": True,
"max_cost_per_day_cents": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'Support Team - Updated',
description: 'Upgraded support routing with billing specialist',
classifier_agent_id: 'agt_classifier002',
members: [{agent_id: '<string>', intent_labels: ['<string>'], description: '<string>'}],
active: true,
max_cost_per_day_cents: 123
})
};
fetch('https://api.orbit.devotel.io/api/v1/agents/squads/{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.orbit.devotel.io/api/v1/agents/squads/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Support Team - Updated',
'description' => 'Upgraded support routing with billing specialist',
'classifier_agent_id' => 'agt_classifier002',
'members' => [
[
'agent_id' => '<string>',
'intent_labels' => [
'<string>'
],
'description' => '<string>'
]
],
'active' => true,
'max_cost_per_day_cents' => 123
]),
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.orbit.devotel.io/api/v1/agents/squads/{id}"
payload := strings.NewReader("{\n \"name\": \"Support Team - Updated\",\n \"description\": \"Upgraded support routing with billing specialist\",\n \"classifier_agent_id\": \"agt_classifier002\",\n \"members\": [\n {\n \"agent_id\": \"<string>\",\n \"intent_labels\": [\n \"<string>\"\n ],\n \"description\": \"<string>\"\n }\n ],\n \"active\": true,\n \"max_cost_per_day_cents\": 123\n}")
req, _ := http.NewRequest("PUT", 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.put("https://api.orbit.devotel.io/api/v1/agents/squads/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Support Team - Updated\",\n \"description\": \"Upgraded support routing with billing specialist\",\n \"classifier_agent_id\": \"agt_classifier002\",\n \"members\": [\n {\n \"agent_id\": \"<string>\",\n \"intent_labels\": [\n \"<string>\"\n ],\n \"description\": \"<string>\"\n }\n ],\n \"active\": true,\n \"max_cost_per_day_cents\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orbit.devotel.io/api/v1/agents/squads/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Support Team - Updated\",\n \"description\": \"Upgraded support routing with billing specialist\",\n \"classifier_agent_id\": \"agt_classifier002\",\n \"members\": [\n {\n \"agent_id\": \"<string>\",\n \"intent_labels\": [\n \"<string>\"\n ],\n \"description\": \"<string>\"\n }\n ],\n \"active\": true,\n \"max_cost_per_day_cents\": 123\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "<string>",
"name": "<string>",
"updated_at": "2023-11-07T05:31:56Z"
}
}Authorizations
BearerApiKey
Dashboard JWT token from Clerk
Path Parameters
Body
application/json
Response
200 - application/json
Squad updated successfully
Show child attributes
Show child attributes
⌘I