curl --request GET \
--url https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace', 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-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace",
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 := "https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace"
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("https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"runtime": "v1",
"input": {
"message": "<string>"
},
"understanding": {
"intents": [
"<string>"
],
"guardrails": {
"passed": true,
"reason": "<string>"
}
},
"decisions": [
{
"type": "<string>",
"tool": "<string>",
"parent_tool": "<string>",
"track_id": "<string>",
"status": "<string>",
"check_status": "<string>",
"trigger": {
"type": "<string>",
"reasons": [
"<string>"
],
"matched_objective": "<string>"
},
"trigger_type": "<string>",
"rule": {
"type": "<string>",
"action": "<string>",
"reason": "<string>",
"code": "<string>"
},
"text": "<string>",
"fail_reason": "<string>",
"computation": "<string>",
"output_param": "<string>",
"output_title": "<string>",
"qualified": true,
"matched_branch": "<string>"
}
],
"computed_parameters": [
{
"code": "<string>",
"title": "<string>",
"scope": "<string>"
}
],
"response": {
"type": "<string>",
"message": "<string>",
"suggestions": [
"<string>"
],
"question_reason": "<string>",
"asking_for": [
"<string>"
],
"block_message": "<string>",
"error": "<string>",
"jsx_widgets": [
{
"name": "<string>",
"category": "<string>",
"rendered_jsx": "<string>",
"is_recommended": true,
"index": 123
}
]
},
"rules_evaluations": [
{
"code": "<string>",
"triggered": true,
"reason": [
{
"passed": true,
"trigger_type": "<string>",
"condition": {
"method": "<string>",
"operation": "<string>"
}
}
]
}
]
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}Get an interaction's trace
The reasoning trace of a single interaction, by its id. An interaction
of a runtime v2 agent is read by its thread as well — pass thread_id.
curl --request GET \
--url https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace', 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-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace",
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 := "https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace"
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("https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-v3.aui.io/apollo-api/management/v1/interactions/{interactionId}/trace")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"runtime": "v1",
"input": {
"message": "<string>"
},
"understanding": {
"intents": [
"<string>"
],
"guardrails": {
"passed": true,
"reason": "<string>"
}
},
"decisions": [
{
"type": "<string>",
"tool": "<string>",
"parent_tool": "<string>",
"track_id": "<string>",
"status": "<string>",
"check_status": "<string>",
"trigger": {
"type": "<string>",
"reasons": [
"<string>"
],
"matched_objective": "<string>"
},
"trigger_type": "<string>",
"rule": {
"type": "<string>",
"action": "<string>",
"reason": "<string>",
"code": "<string>"
},
"text": "<string>",
"fail_reason": "<string>",
"computation": "<string>",
"output_param": "<string>",
"output_title": "<string>",
"qualified": true,
"matched_branch": "<string>"
}
],
"computed_parameters": [
{
"code": "<string>",
"title": "<string>",
"scope": "<string>"
}
],
"response": {
"type": "<string>",
"message": "<string>",
"suggestions": [
"<string>"
],
"question_reason": "<string>",
"asking_for": [
"<string>"
],
"block_message": "<string>",
"error": "<string>",
"jsx_widgets": [
{
"name": "<string>",
"category": "<string>",
"rendered_jsx": "<string>",
"is_recommended": true,
"index": 123
}
]
},
"rules_evaluations": [
{
"code": "<string>",
"triggered": true,
"reason": [
{
"passed": true,
"trigger_type": "<string>",
"condition": {
"method": "<string>",
"operation": "<string>"
}
}
]
}
]
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>",
"details": [
{
"message": "<string>",
"field": "<string>"
}
]
}
}Authorizations
Access token from POST /management/v1/auth/token (publishable-key exchange) or a login session. Publishable-key tokens are agent-scoped and serve the messaging surface; login tokens also serve management.
Path Parameters
^[0-9a-fA-F]{24}$Query Parameters
The thread the interaction belongs to. Required for interactions of agents on runtime v2 (dashed-UUID ids); ignored for runtime v1.
^[0-9a-fA-F]{24}$Response
Successful Response
- RuntimeV1Trace
- RuntimeV2Trace
The reasoning trace of one interaction of an agent on runtime v1 — what the agent understood, which rules fired, and the decisions it took.
Which runtime produced this trace; decides the shape that follows.
"v1"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