These three endpoints give you a complete picture of what the agent has done and how its portfolio has evolved over time. The equity endpoint streams a time-series of portfolio value that you can chart across any date range. The trades endpoint provides a flat list of every closed trade, filterable by paper or live phase, with full per-trade attribution including PnL, fees, hold time, and risk taken. The journal is the agent’s structured narrative log — every decision the agent made, including entries it skipped and orders the risk layer blocked, recorded with context about why.
GET /agents//equity
Returns a time-ordered array of equity snapshots for the agent. Use the from, to, and interval query parameters to control the date range and granularity.
GET http://localhost:8000/agents/current/equity?from=2025-06-01T00:00:00Z&to=2025-06-22T23:59:59Z&interval=1h
Query parameters
| Parameter | Type | Description |
|---|
from | string | ISO 8601 start timestamp. Defaults to the agent’s first recorded snapshot. |
to | string | ISO 8601 end timestamp. Defaults to now. |
interval | string | Snapshot interval, e.g. 1h, 4h, 1d. Defaults to the native resolution. |
Response
[
{
"ts": "2025-06-22T14:00:00Z",
"equity": 1042.50,
"phase": "paper",
"dd_from_peak": 0.012
}
]
| Field | Type | Description |
|---|
ts | string | ISO 8601 timestamp for this snapshot. |
equity | number | Total portfolio equity in USDT at this point in time. |
phase | string | Trading phase active at this snapshot — paper or live. |
dd_from_peak | number | Drawdown from the portfolio’s all-time peak at this snapshot, as a decimal fraction (e.g. 0.012 = 1.2% below peak). |
GET /agents//trades
Returns a flat list of all closed trades. Use the phase query parameter to filter to paper-only, live-only, or both.
GET http://localhost:8000/agents/current/trades?phase=paper
Query parameters
| Parameter | Type | Description |
|---|
phase | string | Filter trades by phase: paper, live, or all. Defaults to all. |
Response
[
{
"ts": "2025-06-22T14:05:30Z",
"pair": "ETH/USDT",
"side": "buy",
"size": 100.00,
"entry": 3421.50,
"exit": 3498.20,
"pnl": 2.24,
"fees": 0.42,
"hold_s": 7200,
"risk_pct": 0.096,
"phase": "paper"
}
]
| Field | Type | Description |
|---|
ts | string | ISO 8601 timestamp when the trade was closed. |
pair | string | Trading pair, e.g. ETH/USDT. |
side | string | Trade direction — buy or sell. |
size | number | Position size in quote currency (USDT). |
entry | number | Entry price for the position. |
exit | number | Exit price for the position. |
pnl | number | Realised profit or loss in USDT, net of fees. |
fees | number | Total fees paid for this trade in USDT. |
hold_s | integer | Duration the position was held, in seconds. |
risk_pct | number | Percentage of portfolio equity risked on this trade (decimal, e.g. 0.096 = 0.096%). |
phase | string | Phase during which this trade was executed — paper or live. |
GET /agents//journal
Returns a paginated log of agent journal entries in reverse-chronological order. Use cursor and limit to page through history. The journal captures every significant agent decision — executed trades, skipped setups, risk interventions, and phase transitions.
GET http://localhost:8000/agents/current/journal?limit=50
Query parameters
| Parameter | Type | Description |
|---|
cursor | string | Opaque pagination cursor from a previous response’s next_cursor. Omit for the first page. |
limit | integer | Maximum number of entries to return. Defaults to 50. |
Response
{
"entries": [
{
"ts": "2025-06-22T14:05:30Z",
"type": "EXECUTED",
"tags": ["EXECUTED", "ETH"],
"body": "Bought ETH/USDT at 3421.50 — RSI 23, price 5.2% below 48h SMA."
},
{
"ts": "2025-06-22T13:45:00Z",
"type": "SKIPPED",
"tags": ["SKIPPED", "CAKE"],
"body": "Skipped CAKE entry: expected edge 0.4% < 3× cost 0.6%."
}
],
"next_cursor": "cur_abc123"
}
Entry fields
| Field | Type | Description |
|---|
ts | string | ISO 8601 timestamp of the event. |
type | string | Journal entry type. See values below. |
tags | string[] | Searchable tags associated with this entry, e.g. the entry type and any relevant token symbols. |
body | string | Human-readable description of the event with supporting context and signal values. |
Journal entry types
| Type | Description |
|---|
EXECUTED | A trade was submitted and confirmed. |
SKIPPED | A candidate setup was evaluated and deliberately passed on (e.g. edge below cost threshold). |
RISK | A trade was blocked or a position was reduced by a risk rule. |
PROMOTION | The agent was promoted from paper to live trading. |
DEMOTION | The agent was demoted from live back to paper trading. |
X402 | A payment-gated resource was accessed and an x402 micropayment was made. |
To build a filtered view, request the full journal and filter client-side on the type field, or search the tags array for specific token symbols. Cursor-based pagination ensures you can stream the full history incrementally without missing entries.