Test squad classifier routing
curl --request POST \
--url https://api.orbit.devotel.io/api/v1/agents/squads/{id}/test \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"message": "I need help with my billing account"
}
'import requests
url = "https://api.orbit.devotel.io/api/v1/agents/squads/{id}/test"
payload = { "message": "I need help with my billing account" }
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({message: 'I need help with my billing account'})
};
fetch('https://api.orbit.devotel.io/api/v1/agents/squads/{id}/test', 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}/test",
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([
'message' => 'I need help with my billing account'
]),
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}/test"
payload := strings.NewReader("{\n \"message\": \"I need help with my billing account\"\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.orbit.devotel.io/api/v1/agents/squads/{id}/test")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"message\": \"I need help with my billing account\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orbit.devotel.io/api/v1/agents/squads/{id}/test")
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 \"message\": \"I need help with my billing account\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"squad_id": "squad_abc123def456",
"message": "I need help with my billing account",
"classifier_model": "claude-haiku-4-5-20251001",
"agent_id": "agt_billing_specialist",
"source": "matched",
"raw_label": "billing_question",
"matched_member": {
"agent_id": "<string>",
"intent_labels": [
"<string>"
],
"description": "<string>"
}
}
}API Reference
Test squad classifier routing
Simulate the squad’s classifier agent against a test message and return the routing decision. Shows which squad member the classifier would route to, the matched intent label, and the matched member’s metadata. Use this to verify classifier behavior and label coverage before deploying.
POST
/
api
/
v1
/
agents
/
squads
/
{id}
/
test
Test squad classifier routing
curl --request POST \
--url https://api.orbit.devotel.io/api/v1/agents/squads/{id}/test \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"message": "I need help with my billing account"
}
'import requests
url = "https://api.orbit.devotel.io/api/v1/agents/squads/{id}/test"
payload = { "message": "I need help with my billing account" }
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({message: 'I need help with my billing account'})
};
fetch('https://api.orbit.devotel.io/api/v1/agents/squads/{id}/test', 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}/test",
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([
'message' => 'I need help with my billing account'
]),
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}/test"
payload := strings.NewReader("{\n \"message\": \"I need help with my billing account\"\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.orbit.devotel.io/api/v1/agents/squads/{id}/test")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"message\": \"I need help with my billing account\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orbit.devotel.io/api/v1/agents/squads/{id}/test")
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 \"message\": \"I need help with my billing account\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"squad_id": "squad_abc123def456",
"message": "I need help with my billing account",
"classifier_model": "claude-haiku-4-5-20251001",
"agent_id": "agt_billing_specialist",
"source": "matched",
"raw_label": "billing_question",
"matched_member": {
"agent_id": "<string>",
"intent_labels": [
"<string>"
],
"description": "<string>"
}
}
}Authorizations
BearerApiKey
Dashboard JWT token from Clerk
Path Parameters
Body
application/json
Example:
"I need help with my billing account"
Response
200 - application/json
Classifier routing result for the test message
Show child attributes
Show child attributes
⌘I