Skip to main content
GET
/
api
/
v1
/
account_overviews
Get account overview
curl --request GET \
  --url https://api.mainnet.aptoslabs.com/decibel/api/v1/account_overviews \
  --header 'Authorization: Bearer <token>'
{
  "cross_account_leverage_ratio": 40.99,
  "cross_margin_ratio": 0.01,
  "maintenance_margin": 115.29,
  "margin_deficit": -12.06,
  "perp_equity_balance": 10064.88,
  "total_margin": 9998.72,
  "unrealized_funding_cost": -87.84,
  "unrealized_pnl": 154,
  "usdc_cross_withdrawable_balance": 9843.79,
  "usdc_isolated_withdrawable_balance": 0,
  "all_time_return": 123,
  "average_cash_position": 123,
  "average_leverage": 123,
  "cross_account_position": 123,
  "liquidation_fees_paid": 45.5,
  "liquidation_losses": -500,
  "max_drawdown": 123,
  "net_deposits": 30277044.96,
  "pnl_90d": 123,
  "realized_pnl": 1250.5,
  "sharpe_ratio": 123,
  "vault_equity": 259.73,
  "volume": 123,
  "weekly_win_rate_12w": 123
}

Documentation Index

Fetch the complete documentation index at: https://docs.decibel.trade/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer token from Geomi. See Authentication for setup instructions.

Query Parameters

account
string
required

User account address

volume_window
enum<string>

Volume time window (e.g., "7d", "14d", "30d", "90d"). Omit to exclude volume data. Time window for volume queries

Available options:
7d,
14d,
30d,
90d
include_performance
boolean
default:false

Include performance metrics

performance_lookback_days
integer<int32>
default:90

Performance lookback window in days.

Required range: x >= 0

Response

Account overview retrieved successfully

cross_account_leverage_ratio
number<double>
required
Example:

40.99

cross_margin_ratio
number<double>
required
Example:

0.01

maintenance_margin
number<double>
required
Example:

115.29

margin_deficit
number<double>
required

Cross-margin deficit: 0 when healthy, negative when the account has a margin hole. When negative, new deposits will partially fill this deficit before becoming available to trade. For example, deficit = -12 means a $185 deposit yields only $173 available (the first $12 fills the hole). Formula: min(0, margin_balance - margin_for_free_collateral + min(0, unrealized_pnl - funding) - order_margin)

Example:

-12.06

perp_equity_balance
number<double>
required
Example:

10064.88

total_margin
number<double>
required
Example:

9998.72

unrealized_funding_cost
number<double>
required
Example:

-87.84

unrealized_pnl
number<double>
required
Example:

154

usdc_cross_withdrawable_balance
number<double>
required
Example:

9843.79

usdc_isolated_withdrawable_balance
number<double>
required
Example:

0

all_time_return
number<double> | null
average_cash_position
number<double> | null
average_leverage
number<double> | null
cross_account_position
number<double> | null
liquidation_fees_paid
number<double> | null

Total fees paid during margin call liquidations (always positive). Fee rate is configurable per market (default 0.5%, max 2% of notional). This is already included in realized_pnl but shown separately for transparency. Null for accounts that have never been margin called.

Example:

45.5

liquidation_losses
number<double> | null

Net collateral balance changes from liquidations (vault/BLP accounts only). Regular users: always null - their liquidation loss is in realized_pnl via BackStopLiquidation trades. Vault accounts: positive = margin received from liquidated users (profit), negative = bad debt covered when users were underwater (loss).

Example:

-500

max_drawdown
number<double> | null
net_deposits
number<double> | null

Net deposits (total deposits - total withdrawals) in USDC. Used to verify all_time_return: all_time_return = ((equity - net_deposits) / net_deposits) * 100

Example:

30277044.96

pnl_90d
number<double> | null
realized_pnl
number<double> | null
Example:

1250.5

sharpe_ratio
number<double> | null
vault_equity
number<double> | null

Total USDC value of vault shares held by this account. NULL when not yet available (e.g., WebSocket updates before real-time vault tracking).

Example:

259.73

volume
number<double> | null
weekly_win_rate_12w
number<double> | null