Skip to main content
client.data.core.getHolders reveals which wallets hold outcome tokens for the supplied markets. Great for leaderboards and liquidity dashboards.

Request

const breakdown = await client.data.core.getHolders(params);

Parameters

NameTypeRequiredDefaultNotes
marketstring[]Condition IDs (0x + 64 hex).
limitnumber (0–500)100Holders per outcome token.
minBalancenumber (0–999999)1Minimum balance filter.

Response

type HolderData = {
  token: string;
  holders: Array<{
    proxyWallet: string;
    bio: string;
    asset: string;
    pseudonym: string;
    amount: number;
    displayUsernamePublic: boolean;
    outcomeIndex: number;
    name: string;
    profileImage: string;
    profileImageOptimized: string;
  }>;
};

Usage example

const breakdown = await client.data.core.getHolders({
  market: ["0x49252732f0bfe99f2ab09366230607eb9562fa6a56557a10ddcd7dd2198cf588"],
  limit: 10,
});

breakdown.forEach((entry) => {
  console.log(`Token ${entry.token} has ${entry.holders.length} visible holders`);
});

Failure modes

  • Missing market → validation error.
  • limit > 500 or malformed condition IDs → validation error.