The platform enum
Anywhere aplatform field or filter appears, the values are lowercase:
polymarketkalshi
platform filter (whale-trades history, smart-money flows, explore) also accept all.
Capability matrix
This mirrors the liveGET /api/v1/platforms response, which is the source of truth. Query it at runtime rather than hard-coding coverage.
| Capability | Polymarket | Kalshi |
|---|---|---|
| Trader grade | Supported | Unsupported |
| P&L | Supported | Partial |
| Strategy classification | Supported | Unsupported |
| Position timeline | Supported | Partial |
| Whale signal | Supported | Unsupported |
| Insider radar | Supported | Unsupported |
| Market snapshot | Supported | Partial |
supported means the feature is fully populated. partial means some fields are present but not all (Kalshi market snapshots carry last price but no order-book top-of-book, for example). unsupported means the feature does not apply to that platform and returns no data.
Polymarket-only features
Two surfaces are Polymarket-only today, independent of anyplatform filter you pass:
- Whale trades (
/whale-trades,/whale-trades/history). The whale-trade feed is built from Polymarket fills only. Aplatform=kalshifilter returns nothing. - Large positions (
/large-positions). The large-position scanner runs against Polymarket markets only.
What works on both
These read paths return both Polymarket and Kalshi data:- Trader profiles and P&L (
/trader/{address},/trader/{address}/pnl), with the per-platform caveats above. - Positions board (
/positions). - Market intel and smart-money flows (
/market/{condition_id}/intel,/markets/smart-money-flows). - Market search and explore (
/markets/search,/markets/explore).
unsupported sources surface as unavailable), so you can detect coverage gaps in code instead of guessing.