Skip to main content
GET
Wallet leaderboard ranked by realised PnL or volume

Authorizations

X-Api-Key
string
header
required

Partner / integrator key — format ps_live_<keyId>_<secret>. Partner keys are issued by PredictStreet; a user can also create keys bound to their own wallet from their account settings in the web app. Never ship to a browser. multi_wallet partners must additionally send X-User-Wallet: 0x<40-hex> on every authenticated request to declare the acting wallet. See the API keys guide for scope taxonomy, partner kinds, rate limits, and rotation procedure.

Query Parameters

period
enum<string>
default:today

Which period to rank — defaults to today.

Available options:
today,
week,
month,
all
sort
enum<string>
default:pnl

Sort field. pnl (default) ranks wallets with any activity by realised PnL desc; volume ranks wallets with volume above 0 by notional traded desc. rank always reflects the active sort.

Available options:
pnl,
volume

Optional case-insensitive prefix. A 0x-hex value matches either the wallet (EOA) or the vault address; anything else searches usernames.

limit
integer
default:20

Page size, 1–50; defaults to 20.

Required range: 1 <= x <= 50
cursor
string

Opaque cursor returned by a previous page.

Response

OK

period
enum<string>
required
Available options:
today,
week,
month,
all
snapshotAt
string<date-time>
required

Wall-clock at which the recompute cron sampled the data feeding this page. Frontends can render "snapshot 2 min ago" directly off this field.

total
integer
required

Entries on the board for this period, capped at 1000 (the board lists the top 1000 places only). With search, the matches within that top. Independent of the page slice — use it for the page count.

entries
object[]
required
nextCursor
string | null
required

Opaque keyset cursor for the next page; null on the last page.

me
object | null
required

The authenticated caller's row for the same period. Populated when the request is authenticated and the wallet has a deployed vault. Carries the exact rank even outside the top 1000, so me.rank can exceed total; rank is null when the caller has no place on this board. null for anonymous traffic, for callers without a deployed vault, and for closed or restricted accounts.