Get handoff analytics
curl --request GET \
--url http://localhost:8080/handoff-analytics \
--header 'Authorization: Bearer <token>'import requests
url = "http://localhost:8080/handoff-analytics"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('http://localhost:8080/handoff-analytics', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "8080",
CURLOPT_URL => "http://localhost:8080/handoff-analytics",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "http://localhost:8080/handoff-analytics"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("http://localhost:8080/handoff-analytics")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:8080/handoff-analytics")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"summary": "<string>",
"total_handoffs": 123,
"total_sessions": 123,
"start_date": "<string>",
"end_date": "<string>",
"reasons": [
{
"reason": "ai_implied_handoff",
"count": 123,
"percentage": 123
}
],
"reason_combinations": [
{
"reasons": [
"ai_implied_handoff"
],
"session_count": 123,
"percentage": 123
}
],
"sentiments": [
{
"sentiment": "<string>",
"count": 123,
"percentage": 123
}
],
"trends": [
{
"date": "<string>",
"count": 123
}
],
"knowledge_references": [
{
"type": "ai_profile",
"id": "<string>",
"count": 123
}
],
"tool_references": [
{
"type": "ai_profile",
"id": "<string>",
"count": 123
}
],
"instruction_references": [
{
"type": "ai_profile",
"id": "<string>",
"count": 123
}
],
"prohibited_topic_references": [
{
"type": "ai_profile",
"id": "<string>",
"count": 123
}
]
}{
"statusCode": 123,
"message": "<string>",
"error": "<string>"
}Handoff Analytics
Get handoff analytics
Get handoff analytics — Get a comprehensive overview of AI-to-human handoff events for a date range, including reason breakdowns, sentiment analysis, trends, and referenced…
GET
/
handoff-analytics
Get handoff analytics
curl --request GET \
--url http://localhost:8080/handoff-analytics \
--header 'Authorization: Bearer <token>'import requests
url = "http://localhost:8080/handoff-analytics"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('http://localhost:8080/handoff-analytics', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "8080",
CURLOPT_URL => "http://localhost:8080/handoff-analytics",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "http://localhost:8080/handoff-analytics"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("http://localhost:8080/handoff-analytics")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:8080/handoff-analytics")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"summary": "<string>",
"total_handoffs": 123,
"total_sessions": 123,
"start_date": "<string>",
"end_date": "<string>",
"reasons": [
{
"reason": "ai_implied_handoff",
"count": 123,
"percentage": 123
}
],
"reason_combinations": [
{
"reasons": [
"ai_implied_handoff"
],
"session_count": 123,
"percentage": 123
}
],
"sentiments": [
{
"sentiment": "<string>",
"count": 123,
"percentage": 123
}
],
"trends": [
{
"date": "<string>",
"count": 123
}
],
"knowledge_references": [
{
"type": "ai_profile",
"id": "<string>",
"count": 123
}
],
"tool_references": [
{
"type": "ai_profile",
"id": "<string>",
"count": 123
}
],
"instruction_references": [
{
"type": "ai_profile",
"id": "<string>",
"count": 123
}
],
"prohibited_topic_references": [
{
"type": "ai_profile",
"id": "<string>",
"count": 123
}
]
}{
"statusCode": 123,
"message": "<string>",
"error": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Start date in ISO 8601 format (defaults to 30 days ago)
End date in ISO 8601 format (defaults to now)
Filter to only handoffs referencing this instruction ID
Response
Default Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?