Markets
Kalshi and Polymarket in one normalized shape — search, live state, movers and cross-venue comparison. Every endpoint here costs 3 credits.
search-markets
POST /search-markets · market (3 credits)
Search World Cup markets across both venues, normalized.
| Body field | Type | Description |
|---|---|---|
query | string | free-text market search |
team | string | markets involving a team |
source | string | "kalshi" or "polymarket" (default: both) |
status | string | market status (e.g. "open") |
limit | int | max markets returned (default 20) |
force_live | bool | bypass the cache, hit the venues live |
bash
curl -X POST https://api.machina.gg/world-cup/v1/search-markets \
-H "X-Api-Token: $KEY" -H "Content-Type: application/json" \
-d '{"team": "Brazil", "status": "open"}'Response: data.markets[] with venue, market id/ticker, outcome, price and metadata — take market_id into /get-market-state or /explain-market-move.
get-market-state
POST /get-market-state · market (3 credits)
Live state of one market: price, order-book depth, optional candles and trades history.
| Body field | Type | Description |
|---|---|---|
market_id | string | required — id/ticker from search-markets |
include_book | bool | order-book depth (default true) |
include_history | bool | price-history candles |
include_trades | bool | recent trades |
history_hours | int | history window (default 24) |
history_interval | string | candle interval (e.g. "1h") |
market-movers
POST /market-movers · market (3 credits)
Biggest price moves across open markets in a time window.
| Body field | Type | Description |
|---|---|---|
window_hours | int | move window (default 24) |
limit | int | max movers returned |
compare-market-sources
POST /compare-market-sources · market (3 credits)
The same outcome priced across Kalshi vs Polymarket — spot venue disagreement.
| Body field | Type | Description |
|---|---|---|
query | string | the outcome/market to compare |
market_type | string | optional market-type filter |
include_reasoning | bool | include the comparison rationale |

