Upscale
Menu
On this page

Obtener los eventos de la cuenta del trader

Probar ↓
GET/accounts/events
Obtener los eventos de la cuenta del traderCuentas

Eventos del ciclo de vida en todas las cuentas del solicitante, los más recientes primero: compras de desafíos, finalizaciones y fallos, solicitudes de retiro y pagos, bloqueos y desbloqueos de límites financiados, cuentas demo y de torneo que se abren o se cierran.

  • Autenticado con una clave de API, solo se incluyen las cuentas que tienen api_trading habilitado.
  • Paginado mediante limit y offset; la respuesta incluye el recuento total.
URL base https://api.upscale.trade

Autorización

bearerhttp · bearerobligatorio

Clave de API personal, con el prefijo usk_.

Parámetros

Consulta
limitintegeropcional

Tamaño de página: cuántos registros devolver.

Predeterminado: 20

minimum
1
maximum
100
Ejemplo: 20
offsetintegeropcional

Cuántos registros omitir antes de la página.

Predeterminado: 0

minimum
0
maximum
9007199254740991
Ejemplo: 0

Ejemplos

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

Respuestas

200Respuestaapplication/json
dataobject[]obligatorio

Requested page of account events, newest first. The payload shape follows eventType.

Elementos del array · object

Uno de

eventTypestring · enumobligatorio
Permitido: "account_archive_expired"
Ejemplo: account_archive_expired
payloadobjectobligatorio
Objeto · 3 campos
archivedAtstringobligatorio
Ejemplo: string
restoreAvailableUntilstringobligatorio
Ejemplo: string
expiredAtstringobligatorio
Ejemplo: string
Ver ejemplo
{
  "archivedAt": "string",
  "restoreAvailableUntil": "string",
  "expiredAt": "string"
}
idstring · uuidobligatorio

Event identifier.

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})$
Ejemplo: 00000000-0000-4000-8000-000000000000
accountIdstring · uuidobligatorio

Trader account the event happened on.

Ejemplo: 00000000-0000-4000-8000-000000000000
createdAtstring · date-timeobligatorio

When the event happened.

Ejemplo: 2026-05-01T12:30:00.000Z
accountobjectobligatorio

The account as it stands now — not as it was when the event happened.

Objeto · 45 campos
accountIdstring · uuidobligatorio

Trader account identifier.

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})$
Ejemplo: 00000000-0000-4000-8000-000000000000
userIdstring · uuidobligatorio

Owner of the account.

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})$
Ejemplo: 00000000-0000-4000-8000-000000000000
paymentIdstring · uuid · nullableobligatorio

Payment the challenge behind this account was bought with. Null for accounts that were not purchased.

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})$
Ejemplo: 00000000-0000-4000-8000-000000000000
challengeIdstring · nullableobligatorio

Challenge the account runs. Null for demo and tournament accounts.

Ejemplo: challenge1
tournamentIdstring · uuid · nullableobligatorio

Tournament the account was created for. Null outside tournament accounts.

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})$
Ejemplo: 00000000-0000-4000-8000-000000000000
typestring · enumobligatorio

Account kind: a paid challenge (real), a demo account, or a tournament entry.

Permitido: "demo" "real" "tournament"
Ejemplo: demo
initialPhasestringobligatorio

Phase the account started in.

Ejemplo: active_evaluation
currentPhasestringobligatorio

Phase the account is in now: active_evaluation, active_verification, funded, or funded_success once it has enough profitable days.

Ejemplo: active_evaluation
statusstring · enumobligatorio

Account status. Trading is possible on active; the trading_locked_* statuses only allow closing, and the rest stop trading entirely.

Permitido: "pending" "active" "archived" "archive_expired" "failed" "frozen" "suspended" "closed" "trading_locked_by_funded_limit" "trading_locked_by_instant_funded_limit" "phase_transition_pending" "transition_review"
Ejemplo: active
profitTargetstring · nullableobligatorio

Profit the settled balance needs to pass the current phase, in percent of the initial balance — not fp9. Null when the phase has no target.

Ejemplo: 5
maxDailyDrawdownstring · nullableobligatorio

Daily drawdown limit of the current phase, in percent of the initial balance — not fp9. The loss is counted from dayStartEquity. Null when the phase has no daily limit.

Ejemplo: 5
maxTotalDrawdownstring · nullableobligatorio

Total drawdown limit of the current phase, in percent of the initial balance — not fp9. Null when the phase has no total limit.

Ejemplo: 10
maxTrailingTotalDrawdownstring · nullableobligatorio

Trailing drawdown limit of the current phase, in percent of the highest equity reached — not fp9. Null when the phase has no trailing limit.

Ejemplo: 6
drawdownBasestring · fp9 · nullableobligatorio

Equity the funded-phase drawdown is measured from, fp9 raw. Null while it is measured from the initial balance.

pattern
^(?:-?[1-9][0-9]*|0)$
Ejemplo: 1000000000
maxDrawdownStopstring · fp9 · nullableobligatorio

Equity level at which the funded-phase drawdown fails the account, fp9 raw. Null while it is derived from the initial balance.

pattern
^(?:-?[1-9][0-9]*|0)$
Ejemplo: 1000000000
minTradingDaysnumber · nullableobligatorio

Profitable days (profitableDays) required before the current phase can be passed. Null when the phase has no minimum.

Ejemplo: 3
suspendedUntilstring · date-time · nullableobligatorio

When a suspension of the account lifts. Null when it is not suspended.

Ejemplo: 2023-10-01T00:00:00.000Z
accountBalancestring · fp9obligatorio

Balance without the unrealised pnl of open positions, fp9 raw.

pattern
^(?:-?[1-9][0-9]*|0)$
Ejemplo: 1000000000
initialAccountBalancestring · fp9obligatorio

Balance the account was opened with, fp9 raw — the nominal size of the challenge.

pattern
^(?:-?[1-9][0-9]*|0)$
Ejemplo: 1000000000
maxEquitystring · fp9 · nullableobligatorio

Highest equity the account has reached, fp9 raw. Null before the first trade.

pattern
^(?:-?[1-9][0-9]*|0)$
Ejemplo: 1000000000
dayStartEquitystring · fp9 · nullableobligatorio

Equity the current trading day opened at, fp9 raw.

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

Profitable days counted in the current withdrawal period.

Ejemplo: 0
prevPeriodProfitableDaysnumberobligatorio

Profitable days counted in the previous withdrawal period.

Ejemplo: 0
archivedAtstring · date-time · nullableobligatorio

Start of the account archive period.

Ejemplo: 2026-05-01T12:30:00.000Z
archiveRestoreAvailableUntilstring · date-time · nullableobligatorio

Unarchive deadline, independent of paid Restore.

Ejemplo: 2026-05-01T12:30:00.000Z
createdAtstring · date-timeobligatorio

When the account was created.

Ejemplo: 2026-05-01T12:30:00.000Z
failureReasonstring · enum · nullableobligatorio

Rule that failed the account. Null while it has not failed.

Permitido: "archive_expired" "max_total_drawdown" "max_trailing_total_drawdown" "max_daily_drawdown"
Ejemplo: archive_expired
fundedAtstring · date-time · nullableobligatorio

When the account reached the funded phase. Null before that.

Ejemplo: 2026-05-01T12:30:00.000Z
failedAtstring · date-time · nullableobligatorio

When the account failed. Null while it has not.

Ejemplo: 2026-05-01T12:30:00.000Z
transitionReviewAtstring · date-time · nullableobligatorio

When the phase transition was sent for manual review. Null when no review is pending.

Ejemplo: 2026-05-01T12:30:00.000Z
currentWithdrawalPeriodStartedAtstring · date-time · nullableobligatorio

Start of the running withdrawal period. Null while none is running.

Ejemplo: 2026-05-01T12:30:00.000Z
fundedLimitUnlockedAtstring · date-time · nullableobligatorio

When the account last came out of a managed-capital lock; trading days of the period are counted from here. Null when it was never locked.

Ejemplo: 2026-05-01T12:30:00.000Z
maxWithdrawalAmountstring · fp9obligatorio

Largest amount that may be withdrawn from the account right now, fp9 raw.

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

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

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

Whether a withdrawal request is already in flight for the current period.

Ejemplo: true
profitSplitPercentnumberobligatorio

Share of the profit paid out to the trader, in percent.

Ejemplo: 80
debtstring · fp9obligatorio

Outstanding promo-discount debt of the account, fp9 raw. Withheld from the next payout; 0 when there is none.

pattern
^(?:-?[1-9][0-9]*|0)$
Ejemplo: 1000000000
dailyDrawdownProtectionobject · nullableobligatorio

Daily drawdown protection of the account. Null when the account does not carry the option.

Objeto · 1 campo
usedAtstring · date-time · nullableobligatorio

When the protection was consumed. Null while it is still available.

Ejemplo: 2026-05-01T12:30:00.000Z
Ver ejemplo
{
  "usedAt": "2026-05-01T12:30:00.000Z"
}
aiFailedReportbooleanobligatorio

Whether an automated report has been produced for the failure of this account.

Ejemplo: true
apiTradingbooleanobligatorio

Whether the account may be traded with a personal API key. Requests made with a key are refused on accounts where this is false.

Ejemplo: true
availableMarketsstring · enumobligatorio

Market category the account may trade: crypto, rwa, or all.

Permitido: "crypto" "rwa" "all"
Ejemplo: crypto
antifraudStatusstring · enumobligatorio

Antifraud state of the account; anything other than normal marks it for review.

Permitido: "normal" "test_account" "balance_exceeded" "manually_flagged" "manually_cleared"
Ejemplo: normal
tradingLockReasonstring · nullableobligatorio

Why trading is locked: auto for the managed-capital limit hit on promotion, otherwise the reason an administrator gave. Null when the account is not locked.

Ejemplo: string
tournamentobject · nullableobligatorio

Tournament the account belongs to. Null for accounts outside a tournament.

Objeto · 5 campos
idstring · uuidobligatorio

Tournament identifier.

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})$
Ejemplo: 00000000-0000-4000-8000-000000000000
statusstring · enumobligatorio

Stage the tournament is in.

Permitido: "active" "completed"
Ejemplo: active
startDatestring · date-timeobligatorio

When the tournament opens for trading.

Ejemplo: 2026-05-01T12:30:00.000Z
endDatestring · date-timeobligatorio

When the tournament closes.

Ejemplo: 2026-05-01T12:30:00.000Z
finalRecalcDonebooleanobligatorio

Whether final standings have been recomputed after the close.

Ejemplo: true
Ver ejemplo
{
  "id": "00000000-0000-4000-8000-000000000000",
  "status": "active",
  "startDate": "2026-05-01T12:30:00.000Z",
  "endDate": "2026-05-01T12:30:00.000Z",
  "finalRecalcDone": true
}
restoreobjectobligatorio

Whether a failed funded account can be brought back, and until when.

Objeto · 2 campos
restoreAvailablebooleanobligatorio

Whether the failed funded account can be restored right now.

Ejemplo: true
restoreAvailableUntilstring · date-time · nullableobligatorio

When the restore window closes. Null when there is no window.

Ejemplo: 2026-05-01T12:30:00.000Z
Ver ejemplo
{
  "restoreAvailable": true,
  "restoreAvailableUntil": "2026-05-01T12:30:00.000Z"
}
Ver ejemplo
{
  "accountId": "00000000-0000-4000-8000-000000000000",
  "userId": "00000000-0000-4000-8000-000000000000",
  "paymentId": "00000000-0000-4000-8000-000000000000",
  "challengeId": "challenge1",
  "tournamentId": "00000000-0000-4000-8000-000000000000",
  "type": "demo",
  "initialPhase": "active_evaluation",
  "currentPhase": "active_evaluation",
  "status": "active",
  "profitTarget": "5",
  "maxDailyDrawdown": "5",
  "maxTotalDrawdown": "10",
  "maxTrailingTotalDrawdown": "6",
  "drawdownBase": "1000000000",
  "maxDrawdownStop": "1000000000",
  "minTradingDays": 3,
  "suspendedUntil": "2023-10-01T00:00:00.000Z",
  "accountBalance": "1000000000",
  "initialAccountBalance": "1000000000",
  "maxEquity": "1000000000",
  "dayStartEquity": "1000000000",
  "profitableDays": 0,
  "prevPeriodProfitableDays": 0,
  "archivedAt": "2026-05-01T12:30:00.000Z",
  "archiveRestoreAvailableUntil": "2026-05-01T12:30:00.000Z",
  "createdAt": "2026-05-01T12:30:00.000Z",
  "failureReason": "archive_expired",
  "fundedAt": "2026-05-01T12:30:00.000Z",
  "failedAt": "2026-05-01T12:30:00.000Z",
  "transitionReviewAt": "2026-05-01T12:30:00.000Z",
  "currentWithdrawalPeriodStartedAt": "2026-05-01T12:30:00.000Z",
  "fundedLimitUnlockedAt": "2026-05-01T12:30:00.000Z",
  "maxWithdrawalAmount": "1000000000",
  "payoutBaselineBalance": "1000000000",
  "isActiveWithdrawalInPeriod": true,
  "profitSplitPercent": 80,
  "debt": "1000000000",
  "dailyDrawdownProtection": {
    "usedAt": "2026-05-01T12:30:00.000Z"
  },
  "aiFailedReport": true,
  "apiTrading": true,
  "availableMarkets": "crypto",
  "antifraudStatus": "normal",
  "tradingLockReason": "string",
  "tournament": {
    "id": "00000000-0000-4000-8000-000000000000",
    "status": "active",
    "startDate": "2026-05-01T12:30:00.000Z",
    "endDate": "2026-05-01T12:30:00.000Z",
    "finalRecalcDone": true
  },
  "restore": {
    "restoreAvailable": true,
    "restoreAvailableUntil": "2026-05-01T12:30:00.000Z"
  }
}
Ejemplo · account_archive_expired
{
  "eventType": "account_archive_expired",
  "payload": {
    "archivedAt": "string",
    "restoreAvailableUntil": "string",
    "expiredAt": "string"
  },
  "id": "00000000-0000-4000-8000-000000000000",
  "accountId": "00000000-0000-4000-8000-000000000000",
  "createdAt": "2026-05-01T12:30:00.000Z",
  "account": {
    "accountId": "00000000-0000-4000-8000-000000000000",
    "userId": "00000000-0000-4000-8000-000000000000",
    "paymentId": "00000000-0000-4000-8000-000000000000",
    "challengeId": "challenge1",
    "tournamentId": "00000000-0000-4000-8000-000000000000",
    "type": "demo",
    "initialPhase": "active_evaluation",
    "currentPhase": "active_evaluation",
    "status": "active",
    "profitTarget": "5",
    "maxDailyDrawdown": "5",
    "maxTotalDrawdown": "10",
    "maxTrailingTotalDrawdown": "6",
    "drawdownBase": "1000000000",
    "maxDrawdownStop": "1000000000",
    "minTradingDays": 3,
    "suspendedUntil": "2023-10-01T00:00:00.000Z",
    "accountBalance": "1000000000",
    "initialAccountBalance": "1000000000",
    "maxEquity": "1000000000",
    "dayStartEquity": "1000000000",
    "profitableDays": 0,
    "prevPeriodProfitableDays": 0,
    "archivedAt": "2026-05-01T12:30:00.000Z",
    "archiveRestoreAvailableUntil": "2026-05-01T12:30:00.000Z",
    "createdAt": "2026-05-01T12:30:00.000Z",
    "failureReason": "archive_expired",
    "fundedAt": "2026-05-01T12:30:00.000Z",
    "failedAt": "2026-05-01T12:30:00.000Z",
    "transitionReviewAt": "2026-05-01T12:30:00.000Z",
    "currentWithdrawalPeriodStartedAt": "2026-05-01T12:30:00.000Z",
    "fundedLimitUnlockedAt": "2026-05-01T12:30:00.000Z",
    "maxWithdrawalAmount": "1000000000",
    "payoutBaselineBalance": "1000000000",
    "isActiveWithdrawalInPeriod": true,
    "profitSplitPercent": 80,
    "debt": "1000000000",
    "dailyDrawdownProtection": {
      "usedAt": "2026-05-01T12:30:00.000Z"
    },
    "aiFailedReport": true,
    "apiTrading": true,
    "availableMarkets": "crypto",
    "antifraudStatus": "normal",
    "tradingLockReason": "string",
    "tournament": {
      "id": "00000000-0000-4000-8000-000000000000",
      "status": "active",
      "startDate": "2026-05-01T12:30:00.000Z",
      "endDate": "2026-05-01T12:30:00.000Z",
      "finalRecalcDone": true
    },
    "restore": {
      "restoreAvailable": true,
      "restoreAvailableUntil": "2026-05-01T12:30:00.000Z"
    }
  }
}
Ver ejemplo
[
  {
    "eventType": "account_archive_expired",
    "payload": {
      "archivedAt": "string",
      "restoreAvailableUntil": "string",
      "expiredAt": "string"
    },
    "id": "00000000-0000-4000-8000-000000000000",
    "accountId": "00000000-0000-4000-8000-000000000000",
    "createdAt": "2026-05-01T12:30:00.000Z",
    "account": {
      "accountId": "00000000-0000-4000-8000-000000000000",
      "userId": "00000000-0000-4000-8000-000000000000",
      "paymentId": "00000000-0000-4000-8000-000000000000",
      "challengeId": "challenge1",
      "tournamentId": "00000000-0000-4000-8000-000000000000",
      "type": "demo",
      "initialPhase": "active_evaluation",
      "currentPhase": "active_evaluation",
      "status": "active",
      "profitTarget": "5",
      "maxDailyDrawdown": "5",
      "maxTotalDrawdown": "10",
      "maxTrailingTotalDrawdown": "6",
      "drawdownBase": "1000000000",
      "maxDrawdownStop": "1000000000",
      "minTradingDays": 3,
      "suspendedUntil": "2023-10-01T00:00:00.000Z",
      "accountBalance": "1000000000",
      "initialAccountBalance": "1000000000",
      "maxEquity": "1000000000",
      "dayStartEquity": "1000000000",
      "profitableDays": 0,
      "prevPeriodProfitableDays": 0,
      "archivedAt": "2026-05-01T12:30:00.000Z",
      "archiveRestoreAvailableUntil": "2026-05-01T12:30:00.000Z",
      "createdAt": "2026-05-01T12:30:00.000Z",
      "failureReason": "archive_expired",
      "fundedAt": "2026-05-01T12:30:00.000Z",
      "failedAt": "2026-05-01T12:30:00.000Z",
      "transitionReviewAt": "2026-05-01T12:30:00.000Z",
      "currentWithdrawalPeriodStartedAt": "2026-05-01T12:30:00.000Z",
      "fundedLimitUnlockedAt": "2026-05-01T12:30:00.000Z",
      "maxWithdrawalAmount": "1000000000",
      "payoutBaselineBalance": "1000000000",
      "isActiveWithdrawalInPeriod": true,
      "profitSplitPercent": 80,
      "debt": "1000000000",
      "dailyDrawdownProtection": {
        "usedAt": "2026-05-01T12:30:00.000Z"
      },
      "aiFailedReport": true,
      "apiTrading": true,
      "availableMarkets": "crypto",
      "antifraudStatus": "normal",
      "tradingLockReason": "string",
      "tournament": {
        "id": "00000000-0000-4000-8000-000000000000",
        "status": "active",
        "startDate": "2026-05-01T12:30:00.000Z",
        "endDate": "2026-05-01T12:30:00.000Z",
        "finalRecalcDone": true
      },
      "restore": {
        "restoreAvailable": true,
        "restoreAvailableUntil": "2026-05-01T12:30:00.000Z"
      }
    }
  }
]
totalCountnumberobligatorio

Total number of events across all pages.

Ejemplo: 0
401

No autorizado

429

Se superó el límite de velocidad de la clave de API (api_key_rate_limit_exceeded). Retry-After indica cuándo volver; el cuerpo incluye el bucket (read / write), la ventana que se activó, su límite y retryAt.