Upscale
Menu
On this page

Get all accounts of current user risk status

Try it out ↓
GET/accounts/risk-status
Get all accounts of current user risk statusAccounts

The per-account risk snapshot, for every account of the caller at once.

  • Authenticated with an API key, only accounts that have api_trading enabled are included.
  • Interactive sessions share one budget here with the single-account risk status; an API key is limited by its own read limits instead.
Base URL https://api.upscale.trade

Authorization

bearerhttp · bearerrequired

Personal API key, prefixed with usk_.

Examples

curl --request GET 'https://api.upscale.trade/accounts/risk-status' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_KEY'

Responses

401

Unauthorized

429

Rate limit of the API key exceeded (api_key_rate_limit_exceeded). Retry-After says when to come back; the body carries the bucket (read / write), the window that tripped, its limit and retryAt.

defaultResponseapplication/json

Array of AccountsRiskStatusResponse

accountIdstring · uuidrequired

Trader account the snapshot belongs to.

pattern
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$
Example: 00000000-0000-4000-8000-000000000000
tradingDaysnumberrequired

Number of days the account has traded on — counted against the minimum trading days of the challenge.

Example: 0
currentBalancestring · int32required

Account balance without the unrealised pnl of open positions, fp9 raw.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
currentEquitystring · int32required

Balance plus the unrealised pnl of open positions, fp9 raw. This is what drawdown rules are measured against.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
dayStartEquitystring · int32required

Equity the current trading day opened at, fp9 raw — the base of the daily drawdown limit.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
maxEquitystring · int32 · nullablerequired

Highest equity the account has ever reached, fp9 raw — the base of the trailing drawdown. Null before the first trade.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
periodStartEquitystring · int32 · nullablerequired

Equity the current withdrawal period opened at, fp9 raw. Null while no period is running.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
maxPeriodDailyEquityDeltastring · int32 · nullablerequired

Largest single-day equity gain inside the current period, fp9 raw — the numerator of the consistency rule. Null while no day has closed in profit.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
maxPeriodDailyEquityDeltaAtstring · date-time · nullablerequired

Day that produced maxPeriodDailyEquityDelta. Null together with it.

Example: 2026-05-01T12:30:00.000Z
consistencyRuleAppliesbooleanrequired

Whether the consistency rule is part of the rules of this account in its current phase.

Example: true
consistencyRuleMetboolean[]required

Whether the rule is currently satisfied. Null while the period is not in profit and the ratio cannot be computed.

Array items · boolean

boolean

View example
[
  true
]
consistencyRuleRatiostring · int32 · nullablerequired

Share of the period profit made on its best day, fp9 raw fraction. Null together with consistencyRuleMet.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
consistencyRuleLimitstring · int32required

Largest share of period profit one day may account for, fp9 raw fraction (300000000 = 30%). A ratio above it fails the rule.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
payoutBaselineBalancestring · int32required

Balance the next payout is measured from, fp9 raw. Equal to the initial account size until the first payout moves it.

pattern
^(?:-?[1-9][0-9]*|0)$
Example: 1000000000
isPayoutBaselineRequirementMetbooleanrequired

Whether equity is above payoutBaselineBalance — the condition for being eligible to request a payout.

Example: true