Get organization analytics
Retrieve aggregate analytics and statistics for your organization’s trading accounts in a single call.
What you get
| Section | Description |
|---|---|
| summary | Total accounts, total traders, active lockouts |
| accounts.byStatus | Counts per status: not_started, in_progress, passed, failed, expired |
| accounts.byType | Counts per type: evaluation, sim_funded, competition |
| accounts.passRate | Pass rate = passed / (passed + failed) × 100 |
| accounts.passRateIncludingExpired | Stricter: passed / (passed + failed + expired) × 100 |
| accounts.avgCompletionDays | Average days to complete (pass or fail) |
| accounts.avgTimeToPassDays | Average days to pass |
| revenue | Total revenue, purchase count, average per account |
| payouts | Total paid out, payout count, average/largest payout, payout ratio (paid out ÷ revenue) |
| risk | Open profit liability across in-progress accounts, accounts in profit vs drawdown, lockout breakdown |
| violations | Violation reason breakdown for failed accounts |
| performance | Average P&L, drawdown, trades, win rate |
Filters
| Parameter | Type | Example | Description |
|---|---|---|---|
startDate | ISO 8601 | 2026-01-01 | Only accounts created on or after this date |
endDate | ISO 8601 | 2026-03-31 | Only accounts created on or before this date |
type | string | evaluation | Only accounts of this type (evaluation, sim_funded, competition) |
All filters are optional. Omit all for all-time analytics across all account types.
Null values
Fields like passRate, avgCompletionDays, avgRevenuePerAccount, and performance return null when there is insufficient data to compute them (e.g. no completed accounts, no purchases, no performance data). This avoids misleading zero values.
Error codes
| HTTP | Code | When |
|---|---|---|
| 400 | VALIDATION_ERROR | startDate/endDate is not valid ISO 8601, or type is not evaluation, sim_funded, or competition |
| 401 | UNAUTHORIZED | Missing or invalid Bearer token / API key |
| 403 | FORBIDDEN | Token does not belong to any organization |
| 500 | ANALYTICS_ERROR | Internal error (database query failure) |
Examples
# All-time analytics (API key)
curl -X GET "https://api.hyperprop.com/platform/v1/organization/analytics" \
-H "X-API-Key: hp_live_your_key_here"
# Q1 2026 evaluations only (API key)
curl -X GET "https://api.hyperprop.com/platform/v1/organization/analytics?startDate=2026-01-01&endDate=2026-03-31&type=evaluation" \
-H "X-API-Key: hp_live_your_key_here"
# Using Bearer token (dashboard)
curl -X GET "https://api.hyperprop.com/platform/v1/organization/analytics" \
-H "Authorization: Bearer eyJhbGciOi..."
Authentication: Accepts either Authorization: Bearer <jwt> (dashboard) or X-API-Key: hp_live_... (programmatic).
Authorizations
JWT Bearer token for user session auth. Format: "Bearer {token}". Used by User and Organization endpoints.
Query Parameters
Filter accounts created on or after this date (ISO 8601). Examples: 2026-01-01, 2026-01-01T00:00:00.000Z
Filter accounts created on or before this date (ISO 8601). Examples: 2026-03-31, 2026-03-31T23:59:59.999Z
Filter by account type. Only accounts of this type are included in all metrics.
evaluation, sim_funded, competition Related topics
Get purchases for your organizationGet your organization profileGet organization audit logGet traders for your organizationGet trading plans for your organization