Providers and scope
Choose providers
Section titled “Choose providers”markets: { categories: ["music"], category: "music_culture", providers: ["kalshi"] }| Need | Setting |
|---|---|
| Polymarket only (like denpa.ai) | providers: ["polymarket"] (default) |
| Kalshi station | providers: ["kalshi"] — ids are kalshi-<TICKER> |
| both exchanges | providers: ["polymarket", "kalshi"] |
| your own questions | manual markets, resolved through the hub’s claim |
The protocol feed (/api/v1/signals/external) is two exchanges: Polymarket carries sports and politics; Kalshi carries music_culture. A categorised getMarketFeed({ category }) defaults to both.
Scope the clock
Section titled “Scope the clock”The hosted program clock programs Polymarket categories; a Kalshi-scoped fork shows permanent TV-static unless it scopes, runs its own clock, or replaces /broadcast.
export default createForkBroadcastPage(config, { categories: ["music", "film"] });Learn where liquidity is
Section titled “Learn where liquidity is”Sports (FIFA, NBA) first; thin verticals like fashion are event-reactive (no persistent markets between events) and become dedicated forks later on the same core. Always ship a mock or stub fallback when the live market count is 0.
Reads vs writes
Section titled “Reads vs writes”- Reads: CORS-open —
/api/polymarket/ · /api/broadcast/ · /api/network/ · /api/situations · /api/embed/ · /api/card/. Fetch from the browser or the server. - Writes: never from the browser. Your server route proxies
POST /api/predictionswith yourdk_key. See File a signal from your server. - THE WIRE (
/api/wire) is server-side only.