curl --request GET \
--url https://albus.sh/api/traces \
--header 'Authorization: Bearer <token>'import requests
url = "https://albus.sh/api/traces"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://albus.sh/api/traces', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"traces": [
{
"invocation_key": "<string>",
"session_id": "<string>",
"status": "RUNNING",
"spans_expired": true,
"started_at": "2023-11-07T05:31:56Z",
"agent_name": "<string>",
"agent_revision": "<string>",
"ended_at": "2023-11-07T05:31:56Z"
}
],
"next_cursor": "<string>"
}{
"message": "Invalid request parameters"
}{
"message": "Invalid or expired token"
}{
"message": "Resource not found"
}Search traces
Lists your organization’s agent invocations, newest first, without their spans. Filter by agent name, agent revision, status, session, or start time to find the invocation you want, then read it with GET /traces/{invocation_key}. An invocation is listed as soon as it starts, and a filter that matches nothing returns an empty page rather than an error — except session_id, which is a 404 when your organization has no such session.
Page with after and limit: pass the response’s next_cursor as the next request’s after, and keep requesting while next_cursor is present — you have reached the end when it is absent. A page can hold fewer invocations than limit, or none at all, and still have a next_cursor; a short page is not the end of the results.
A listing covers the window given by since and until, and omitting since searches the last 31 days. The window is fixed when the first page is requested, so paging with after keeps returning results from the window that page used: after carries that window and the filters it was made with, so send it with no filters, or with every filter repeated exactly, and expect a 400 otherwise.
curl --request GET \
--url https://albus.sh/api/traces \
--header 'Authorization: Bearer <token>'import requests
url = "https://albus.sh/api/traces"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://albus.sh/api/traces', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"traces": [
{
"invocation_key": "<string>",
"session_id": "<string>",
"status": "RUNNING",
"spans_expired": true,
"started_at": "2023-11-07T05:31:56Z",
"agent_name": "<string>",
"agent_revision": "<string>",
"ended_at": "2023-11-07T05:31:56Z"
}
],
"next_cursor": "<string>"
}{
"message": "Invalid request parameters"
}{
"message": "Invalid or expired token"
}{
"message": "Resource not found"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Return only invocations of this agent (e.g. "support-triage"). Invocations with no recorded agent name are not matched.
255Return only invocations of this exact agent revision (e.g. "a1b2c3d4"). Combines with agent_name. Invocations with no recorded revision are not matched.
255Return only invocations with this outcome. An invocation whose spans have aged out is still matched by the outcome it recorded.
How an invocation or one of its attempts ended, or RUNNING while it is still in flight.
RUNNING, SUCCEEDED, FAILED Return only invocations of this session — the session identifier you ran it with. A session you do not have is a 404.
2 - 100^[0-9a-zA-Z._:-]+$Return only invocations that started at or after this time. Defaults to 31 days ago; pass it to search further back.
Return only invocations that started at or before this time. Defaults to now, and must be after since; an earlier until is a 400.
Opaque pagination cursor. Return only items positioned after it; pass a value obtained from a previous page to fetch the next one.
Maximum number of traces to return. A page can be shorter, so page while next_cursor is present.
1 <= x <= 100Response
OK
This page of invocations, newest first. It can hold fewer than limit, or none at all, while next_cursor is present.
Show child attributes
Show child attributes
Cursor for the next page. Pass it as after, with no filters or with every filter this listing used repeated exactly, to fetch the following traces. Present whenever there may be more traces, however few this page returned; omitted only once there are none left.