List Agent Runs
curl --request GET \
--url https://api.example.com/api/agents/{agentId}/runsimport requests
url = "https://api.example.com/api/agents/{agentId}/runs"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/api/agents/{agentId}/runs', 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.example.com/api/agents/{agentId}/runs",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.example.com/api/agents/{agentId}/runs"
req, _ := http.NewRequest("GET", url, nil)
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.example.com/api/agents/{agentId}/runs")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/agents/{agentId}/runs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"runs": [
{
"runId": "550e8400-e29b-41d4-a716-446655440001",
"status": "completed",
"startedAt": 1703001234567,
"endedAt": 1703001235890,
"durationMs": 1323,
"messageId": "770e8400-e29b-41d4-a716-446655440003",
"roomId": "660e8400-e29b-41d4-a716-446655440002",
"entityId": "880e8400-e29b-41d4-a716-446655440004",
"counts": {
"actions": 2,
"modelCalls": 3,
"errors": 0,
"evaluators": 1
}
}
],
"total": 42,
"hasMore": true
}
RUNS
List Agent Runs
GET
/
api
/
agents
/
{agentId}
/
runs
List Agent Runs
curl --request GET \
--url https://api.example.com/api/agents/{agentId}/runsimport requests
url = "https://api.example.com/api/agents/{agentId}/runs"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/api/agents/{agentId}/runs', 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.example.com/api/agents/{agentId}/runs",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.example.com/api/agents/{agentId}/runs"
req, _ := http.NewRequest("GET", url, nil)
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.example.com/api/agents/{agentId}/runs")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/agents/{agentId}/runs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"runs": [
{
"runId": "550e8400-e29b-41d4-a716-446655440001",
"status": "completed",
"startedAt": 1703001234567,
"endedAt": 1703001235890,
"durationMs": 1323,
"messageId": "770e8400-e29b-41d4-a716-446655440003",
"roomId": "660e8400-e29b-41d4-a716-446655440002",
"entityId": "880e8400-e29b-41d4-a716-446655440004",
"counts": {
"actions": 2,
"modelCalls": 3,
"errors": 0,
"evaluators": 1
}
}
],
"total": 42,
"hasMore": true
}
List all execution runs for a specific agent. Runs track the lifecycle of message processing including actions executed, evaluators run, and timing data.
Path Parameters
The UUID of the agent
Query Parameters
Filter by run status:
started, completed, timeout, error, or allFilter runs by room ID
Maximum number of runs to return (max: 100)
Return only runs started after this Unix timestamp
Return only runs started before this Unix timestamp
Headers
Optional entity ID for Row-Level Security (RLS) filtering
Response
Array of run summaries
Show Run object
Show Run object
Unique run identifier
Run status:
started, completed, timeout, errorUnix timestamp when run started
Unix timestamp when run ended (null if still running)
Duration in milliseconds (null if still running)
ID of the message that triggered this run
Room where the run occurred
Entity that triggered the run
Total number of runs matching the filter
Whether there are more runs available
{
"runs": [
{
"runId": "550e8400-e29b-41d4-a716-446655440001",
"status": "completed",
"startedAt": 1703001234567,
"endedAt": 1703001235890,
"durationMs": 1323,
"messageId": "770e8400-e29b-41d4-a716-446655440003",
"roomId": "660e8400-e29b-41d4-a716-446655440002",
"entityId": "880e8400-e29b-41d4-a716-446655440004",
"counts": {
"actions": 2,
"modelCalls": 3,
"errors": 0,
"evaluators": 1
}
}
],
"total": 42,
"hasMore": true
}
Was this page helpful?
⌘I

