Analytics
Understand market signals, routing decisions and modeled outcomes.
SandboxThis is the simulated Earn API. Position creation and withdrawal change sandbox records; they do not sign a wallet transaction.
Authentication · Errors · Amounts and units
Uplift vs baselines
GET /analytics/uplift
Routed portfolio value versus passive baselines (Aave-only and hold-original-vault). The concept’s primary proof point.
Parameters
| Name | Location | Type | Required | Description |
| --- | --- | --- | --- | --- |
| user_id | query | string | No | Scope to a user |
| asset | query | "USDC", "USDT" | No | Filter by asset |
Response · 200
| Field | Type | Required | Description |
|---|---|---|---|
object |
string |
Yes | |
data |
UpliftReport | Yes | |
meta |
object |
No |
For failed requests, inspect error.code, error.message and the request ID. Error handling.
Decision log
GET /analytics/decisions
Explainable log of routing and rebalance decisions: inputs, alternatives considered, expected uplift and rationale.
Parameters
| Name | Location | Type | Required | Description |
| --- | --- | --- | --- | --- |
| user_id | query | string | No | Filter by user |
| position_id | query | string | No | Filter by position |
| asset | query | "USDC", "USDT" | No | Filter by asset |
| limit | query | integer | No | Page size (1-500, default 100) |
| cursor | query | string | No | Opaque cursor returned as meta.next_cursor |
Response · 200
| Field | Type | Required | Description |
|---|---|---|---|
object |
"list" |
Yes | |
data |
Decision[] | Yes | |
meta |
ListMeta | Yes |
For failed requests, inspect error.code, error.message and the request ID. Error handling.
Risk-adjusted signals
GET /analytics/signals
Per-vault risk-adjusted APY (APY discounted by risk tier and volatility) with a naive trend forecast and a recommendation. Ranked.
Parameters
| Name | Location | Type | Required | Description |
| --- | --- | --- | --- | --- |
| asset | query | "USDC", "USDT" | No | Filter by asset |
Response · 200
| Field | Type | Required | Description |
|---|---|---|---|
object |
"list" |
Yes | |
data |
Signal[] | Yes | |
meta |
ListMeta | Yes |
For failed requests, inspect error.code, error.message and the request ID. Error handling.
Market regime
GET /analytics/regime
Classifies the current rate regime (rising/falling/stable/volatile) from recent yield trend and volatility.
Parameters
| Name | Location | Type | Required | Description |
| --- | --- | --- | --- | --- |
| asset | query | "USDC", "USDT" | No | Restrict to one asset |
Response · 200
| Field | Type | Required | Description |
|---|---|---|---|
object |
string |
Yes | |
data |
Regime | Yes | |
meta |
object |
No |
For failed requests, inspect error.code, error.message and the request ID. Error handling.
Strategy advisor
GET /analytics/advisor
Template-generated (non-LLM) strategy summary: regime, top risk-adjusted opportunities, portfolio uplift and rationale bullets.
Response · 200
| Field | Type | Required | Description |
|---|---|---|---|
object |
string |
Yes | |
data |
Advisor | Yes | |
meta |
object |
No |
For failed requests, inspect error.code, error.message and the request ID. Error handling.