Skip to main content
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

ParameterTypeDescription
fromstringISO 8601 start timestamp. Defaults to the agent’s first recorded snapshot.
tostringISO 8601 end timestamp. Defaults to now.
intervalstringSnapshot 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
  }
]
FieldTypeDescription
tsstringISO 8601 timestamp for this snapshot.
equitynumberTotal portfolio equity in USDT at this point in time.
phasestringTrading phase active at this snapshot — paper or live.
dd_from_peaknumberDrawdown 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

ParameterTypeDescription
phasestringFilter 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"
  }
]
FieldTypeDescription
tsstringISO 8601 timestamp when the trade was closed.
pairstringTrading pair, e.g. ETH/USDT.
sidestringTrade direction — buy or sell.
sizenumberPosition size in quote currency (USDT).
entrynumberEntry price for the position.
exitnumberExit price for the position.
pnlnumberRealised profit or loss in USDT, net of fees.
feesnumberTotal fees paid for this trade in USDT.
hold_sintegerDuration the position was held, in seconds.
risk_pctnumberPercentage of portfolio equity risked on this trade (decimal, e.g. 0.096 = 0.096%).
phasestringPhase 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

ParameterTypeDescription
cursorstringOpaque pagination cursor from a previous response’s next_cursor. Omit for the first page.
limitintegerMaximum 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

FieldTypeDescription
tsstringISO 8601 timestamp of the event.
typestringJournal entry type. See values below.
tagsstring[]Searchable tags associated with this entry, e.g. the entry type and any relevant token symbols.
bodystringHuman-readable description of the event with supporting context and signal values.

Journal entry types

TypeDescription
EXECUTEDA trade was submitted and confirmed.
SKIPPEDA candidate setup was evaluated and deliberately passed on (e.g. edge below cost threshold).
RISKA trade was blocked or a position was reduced by a risk rule.
PROMOTIONThe agent was promoted from paper to live trading.
DEMOTIONThe agent was demoted from live back to paper trading.
X402A 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.