/accounts/with-risk-statusКаждый счёт вызывающего в виде полной записи — челлендж, фаза, статус, балансы и включённые опции — с прикреплённым к нему снимком риска.
- При аутентификации с помощью API-ключа включаются только аккаунты, у которых включён
api_trading. - Интерактивные сессии здесь совместно используют один бюджет с эндпоинтами статуса риска; а API-ключ вместо этого ограничен своими собственными лимитами на чтение.
https://api.upscale.tradeПримеры
curl --request GET 'https://api.upscale.trade/accounts/with-risk-status' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY'const response = await fetch("https://api.upscale.trade/accounts/with-risk-status", {
method: "GET",
headers: {
"Accept": "application/json",
"Authorization": "Bearer YOUR_API_KEY"
},
});
console.log(response.status, await response.text());import requests
response = requests.request(
"GET",
"https://api.upscale.trade/accounts/with-risk-status",
headers={"Accept":"application/json","Authorization":"Bearer YOUR_API_KEY"},
timeout=30,
)
print(response.status_code, response.text)Ответы
Неавторизовано
Превышен лимит частоты запросов API-ключа (api_key_rate_limit_exceeded). Retry-After указывает, когда вернуться; тело содержит бакет (read / write), окно, которое сработало, его лимит и retryAt.
defaultОтветapplication/json
Body[0].challengeId must be array Body[0].profitTarget must be array Body[0].maxDailyDrawdown must be array
Массив AccountWithRiskStatusResponse
accountIdstring · uuidобязательноИдентификатор торгового счёта.
- 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})$
00000000-0000-4000-8000-000000000000userIdstring · uuidобязательноВладелец счёта.
- 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})$
00000000-0000-4000-8000-000000000000paymentIdstring · uuid · nullableобязательноПлатёж, с помощью которого был приобретён челлендж, связанный с этим счётом. Null для счетов, которые не были приобретены.
- 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})$
00000000-0000-4000-8000-000000000000challengeIdstring[]обязательноЧеллендж, который проходит счёт. Null для демо-счетов и турнирных счетов.
Элементы массива · string
string
tournamentIdstring · uuid · nullableобязательноТурнир, для которого был создан аккаунт. Null вне турнирных аккаунтов.
- 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})$
00000000-0000-4000-8000-000000000000typestring · enumобязательноТип аккаунта: платный челлендж (real), аккаунт demo или участие tournament.
"demo" "real" "tournament"demoinitialPhasestringобязательноФаза, в которой аккаунт начал работу.
active_evaluationcurrentPhasestringобязательноФаза, в которой аккаунт находится сейчас: active_evaluation, active_verification, funded или funded_success, как только у него будет достаточно прибыльных дней.
active_evaluationstatusstring · enumобязательноСтатус аккаунта. Торговля возможна при active; статусы trading_locked_* позволяют только закрывать, а остальные полностью останавливают торговлю.
"pending" "active" "failed" "frozen" "suspended" "closed" "trading_locked_by_funded_limit" "trading_locked_by_instant_funded_limit" "phase_transition_pending" "transition_review"activeprofitTargetstring[]обязательноПрибыль, необходимая для прохождения текущей фазы, в процентах от начального баланса. Null, когда у фазы нет цели.
Элементы массива · string
string
maxDailyDrawdownstring[]обязательноДневной лимит просадки текущей фазы, в процентах от эквити на начало дня. Null, когда у фазы нет дневного лимита.
Элементы массива · string
string
maxTotalDrawdownstring[]обязательноОбщий лимит просадки текущей фазы, в процентах от начального баланса. Null, когда у фазы нет общего лимита.
Элементы массива · string
string
maxTrailingTotalDrawdownstring[]обязательноЛимит трейлинг-просадки текущей фазы, в процентах от максимального достигнутого эквити. Null, когда у фазы нет лимита трейлинг-просадки.
Элементы массива · string
string
drawdownBasestring · int32 · nullableобязательноЭквити, от которого измеряется просадка финансируемой фазы, fp9 в исходном виде. Null, пока просадка измеряется от начального баланса.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000maxDrawdownStopstring · int32 · nullableобязательноУровень equity, при котором просадка на этапе финансирования приводит к провалу счета, fp9 raw. Null, пока он выводится из начального баланса.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000minTradingDaysnumber[]обязательноТорговые дни, необходимые до того, как текущий этап может быть пройден. Null, когда у этапа нет минимума.
Элементы массива · number
number
suspendedUntilstring · date-time · nullableобязательноКогда приостановка счета снимается. Null, когда он не приостановлен.
2023-10-01T00:00:00.000ZaccountBalancestring · int32обязательноБаланс без нереализованного pnl открытых позиций, fp9 raw.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000initialAccountBalancestring · int32обязательноБаланс, с которым был открыт счет, fp9 raw — номинальный размер челленджа.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000maxEquitystring · int32 · nullableобязательноНаибольшее значение средств, которого достиг счёт, fp9 в сыром виде. Null до первой сделки.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000dayStartEquitystring · int32 · nullableобязательноСредства на открытии текущего торгового дня, fp9 в сыром виде.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000profitableDaysnumberобязательноПрибыльные дни, засчитанные в текущем периоде вывода.
0prevPeriodProfitableDaysnumberобязательноПрибыльные дни, засчитанные в предыдущем периоде вывода.
0createdAtstring · date-timeобязательноКогда счёт был создан.
2026-05-01T12:30:00.000ZfailureReasonstring · enum · nullableобязательноПравило, которое привело к провалу аккаунта. Null, пока аккаунт не провален.
"max_total_drawdown" "max_trailing_total_drawdown" "max_daily_drawdown" nullmax_total_drawdownfundedAtstring · date-time · nullableобязательноКогда аккаунт достиг этапа финансирования. Null до этого.
2026-05-01T12:30:00.000ZfailedAtstring · date-time · nullableобязательноКогда аккаунт провалился. Null, пока он не провален.
2026-05-01T12:30:00.000ZtransitionReviewAtstring · date-time · nullableобязательноКогда переход фазы был отправлен на ручную проверку. Null, когда никакая проверка не ожидается.
2026-05-01T12:30:00.000ZcurrentWithdrawalPeriodStartedAtstring · date-time · nullableобязательноНачало текущего периода вывода. Null, пока такой период не запущен.
2026-05-01T12:30:00.000ZfundedLimitUnlockedAtstring · date-time · nullableобязательноКогда счёт в последний раз вышел из блокировки управляемого капитала; торговые дни периода отсчитываются отсюда. Null, если он никогда не был заблокирован.
2026-05-01T12:30:00.000ZmaxWithdrawalAmountstring · int32обязательноНаибольшая сумма, которая может быть выведена со счёта прямо сейчас, fp9 в исходном виде.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000payoutBaselineBalancestring · int32обязательноБаланс, от которого рассчитывается следующая выплата, fp9 в исходном виде. Равен начальному балансу, пока первая выплата его не изменит.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000isActiveWithdrawalInPeriodbooleanобязательноНаходится ли запрос на вывод уже в обработке за текущий период.
trueprofitSplitPercentnumberобязательноДоля прибыли, выплачиваемая трейдеру, в процентах.
80debtstring · int32обязательноНепогашенный долг по промо-скидке счёта, fp9 в исходном виде. Удерживается из следующей выплаты; 0, когда её нет.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000dailyDrawdownProtectionobject · nullableобязательноЕжедневная защита от просадки счёта. Null, когда у счёта нет этой опции.
Объект · 1 поле
usedAtstring · date-time · nullableобязательноКогда защита была израсходована. Null, пока она всё ещё доступна.
2026-05-01T12:30:00.000ZПосмотреть пример
{
"usedAt": "2026-05-01T12:30:00.000Z"
}aiFailedReportbooleanобязательноБыл ли сформирован автоматический отчёт о сбое этого счёта.
trueapiTradingbooleanобязательноМожно ли торговать на счёте с личным API-ключом. Запросы, сделанные с ключом, отклоняются на счетах, где это false.
trueavailableMarketsstring · enumобязательноКатегория рынка, в которой аккаунт может торговать: crypto, rwa или all.
"crypto" "rwa" "all"cryptoantifraudStatusstring · enumобязательноСостояние антифрода аккаунта; всё, кроме normal, помечает его для проверки.
"normal" "test_account" "balance_exceeded" "manually_flagged" "manually_cleared"normaltradingLockReasonstring[]обязательноПочему торговля заблокирована: auto при достижении лимита управляемого капитала на промоакции, иначе причина, указанная администратором. Null, когда аккаунт не заблокирован.
Элементы массива · string
string
Посмотреть пример
[
"string"
]tournamentobject · nullableобязательноТурнир, к которому относится аккаунт. Null для аккаунтов вне турнира.
Объект · 5 поля
idstring · uuidобязательноИдентификатор турнира.
- 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})$
00000000-0000-4000-8000-000000000000statusstring · enumобязательноСтадия, в которой находится турнир.
"active" "completed"activestartDatestring · date-timeобязательноКогда турнир открывается для торговли.
2026-05-01T12:30:00.000ZendDatestring · date-timeобязательноКогда турнир закрывается.
2026-05-01T12:30:00.000ZfinalRecalcDonebooleanобязательноБыли ли пересчитаны итоговые турнирные таблицы после закрытия.
trueПосмотреть пример
{
"id": "00000000-0000-4000-8000-000000000000",
"status": "active",
"startDate": "2026-05-01T12:30:00.000Z",
"endDate": "2026-05-01T12:30:00.000Z",
"finalRecalcDone": true
}restoreobjectобязательноМожно ли восстановить проваленный финансируемый счёт и до какого момента.
Объект · 2 поля
restoreAvailablebooleanобязательноМожно ли восстановить неудачный финансируемый аккаунт прямо сейчас.
truerestoreAvailableUntilstring · date-time · nullableобязательноКогда закрывается окно восстановления. Null, когда окна нет.
2026-05-01T12:30:00.000ZПосмотреть пример
{
"restoreAvailable": true,
"restoreAvailableUntil": "2026-05-01T12:30:00.000Z"
}riskStatusobjectобязательноАктуальный снимок риска этого счёта, та же полезная нагрузка, которую возвращают эндпоинты статуса риска.
Объект · 15 поля
accountIdstring · uuidобязательноСчёт трейдера, к которому относится снимок.
- 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})$
00000000-0000-4000-8000-000000000000tradingDaysnumberобязательноКоличество дней, в течение которых счёт торговал, — учитывается для минимального количества торговых дней челленджа.
0currentBalancestring · int32обязательноБаланс счёта без нереализованного PnL открытых позиций, fp9 в исходном виде.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000currentEquitystring · int32обязательноБаланс плюс нереализованный PnL открытых позиций, fp9 в исходном виде. Именно относительно этого измеряются правила просадки.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000dayStartEquitystring · int32обязательноЭквити на момент открытия текущего торгового дня, fp9 в исходном виде — база дневного лимита просадки.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000maxEquitystring · int32 · nullableобязательноНаивысшее эквити, которого когда-либо достигал счёт, fp9 в исходном виде — база следящей просадки. Null до первой сделки.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000periodStartEquitystring · int32 · nullableобязательноЭквити на момент открытия текущего периода вывода, fp9 в исходном виде. Null, пока не идёт ни один период.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000maxPeriodDailyEquityDeltastring · int32 · nullableобязательноНаибольший однодневный прирост эквити внутри текущего периода, fp9 в сыром виде — числитель правила согласованности. Null, пока ни один день не закрылся с прибылью.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000maxPeriodDailyEquityDeltaAtstring · date-time · nullableобязательноДень, в котором был получен maxPeriodDailyEquityDelta. Null вместе с ним.
2026-05-01T12:30:00.000ZconsistencyRuleAppliesbooleanобязательноЯвляется ли правило согласованности частью правил этого счёта в его текущей фазе.
trueconsistencyRuleMetboolean · nullableобязательноВыполняется ли правило в настоящее время. Null, пока период не в прибыли и коэффициент не может быть вычислен.
trueconsistencyRuleRatiostring · int32 · nullableобязательноДоля прибыли за период, полученная в его лучший день, fp9 в виде необработанной дроби. Null вместе с consistencyRuleMet.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000consistencyRuleLimitstring · int32обязательноНаибольшая доля прибыли за период, которую может составлять один день, fp9 в виде необработанной дроби (300000000 = 30%). Если коэффициент превышает её, правило не выполняется.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000payoutBaselineBalancestring · int32обязательноБаланс, от которого отсчитывается следующая выплата, fp9 в необработанном виде. Равен начальному размеру счёта, пока первая выплата не сдвинет его.
- pattern
- ^(?:-?[1-9][0-9]*|0)$
1000000000isPayoutBaselineRequirementMetbooleanобязательноПревышает ли собственный капитал payoutBaselineBalance — условие для права запросить выплату.
trueПосмотреть пример
{
"accountId": "00000000-0000-4000-8000-000000000000",
"tradingDays": 0,
"currentBalance": "1000000000",
"currentEquity": "1000000000",
"dayStartEquity": "1000000000",
"maxEquity": "1000000000",
"periodStartEquity": "1000000000",
"maxPeriodDailyEquityDelta": "1000000000",
"maxPeriodDailyEquityDeltaAt": "2026-05-01T12:30:00.000Z",
"consistencyRuleApplies": true,
"consistencyRuleMet": true,
"consistencyRuleRatio": "1000000000",
"consistencyRuleLimit": "1000000000",
"payoutBaselineBalance": "1000000000",
"isPayoutBaselineRequirementMet": true
}