Kalshi odds API · affiliate 25 · REST + WebSocket
Kalshi odds API.
Prediction markets, as odds.
Kalshi sports contracts as American odds beside DraftKings, FanDuel, and the rest of the 25 books, with order-book depth in US dollars.
Free key · 20,000 data points a day · No credit card
RequestPython 3 · requests
import os
from datetime import datetime, timezone
import requests
key = os.environ["THERUNDOWN_API_KEY"]
api = "https://therundown.io/api/v2"
headers = {"X-TheRundown-Key": key}
# Next game date across the NFL (2), MLB (3), NBA (4), and NHL (6)
dates = requests.get(
f"{api}/sports/dates",
params={"sport_ids": "2,3,4,6", "format": "epoch"},
headers=headers,
timeout=30,
).json()
now = datetime.now(timezone.utc).timestamp()
upcoming = [
(sport_id, stamp)
for sport_id, body in dates.items()
for stamp in body.get("dates") or []
if stamp > now
]
sport_id, stamp = min(upcoming, key=lambda row: row[1], default=("2", now))
date = datetime.fromtimestamp(stamp, timezone.utc).date().isoformat()
# Kalshi next to DraftKings: moneyline, spread, and total
odds = requests.get(
f"{api}/sports/{sport_id}/events/{date}",
params={"market_ids": "1,2,3", "affiliate_ids": "25,19", "main_line": "true"},
headers=headers,
timeout=30,
)
print(odds.text)Response200 · trimmed
{
"events": [{
"event_id": "9cd666660847e644ecea84fc24cf9f58",
"sport_id": 2,
"event_date": "2026-10-04T13:30:00Z",
"markets": [{
"market_id": 1,
"name": "moneyline",
"participants": [{
"id": 70,
"type": "TYPE_TEAM",
"name": "Indianapolis Colts",
"lines": [{
"prices": {
"25": {
"price": -208,
"liquidity_usd": 2422299.71,
"source_id": "KXNFLGAME-26OCT04INDWAS-IND",
"updated_at": "2026-10-02T22:39:32Z"
},
"19": { "price": -205, "updated_at": "2026-10-03T14:28:27Z" }
}
}]
}]
}]
}]
}Colts at Commanders, October 4, 2026, trimmed to one side of one market. On Kalshi, liquidity_usd is approximate resting order-book depth.
Markets
Kalshi beyond the main line.
Kalshi lists sports contracts across football, basketball, baseball, hockey, soccer, tennis, and MMA. These are the market types it posts, each beside every sportsbook.
- Game linesMoneyline, spread, and total
1 · 2 · 3Starter - Alternate linesAlternate spreads, totals, and player lines
omit main_lineStarter - Halves and inningsNFL 1st half spread and total; MLB first five, 1st 3, 1st 7, and 1st inning
5 · 6 · 780 · 791 · 795 · 1442 · 1443 · 766Starter - Team totalsNFL and MLB team totals
94Starter - Player propsNFL yards, receptions, and passing TDs; MLB hits, total bases, RBIs, home runs, strikeouts, and outs; NHL points and assists
51 · 53 · 57 · 58 · 52 · 12 · 11 · 18 · 72 · 19 · 973 · 29 · 39Starter - Touchdown scorersAnytime and 2+ touchdowns
55 · 286Starter - Game propsMLB extra innings
756Starter - In-gameLive game lines while Kalshi trades them
41 · 42 · 43Starter - FuturesChampionship, conference, and division winners; MVP and other awards in the NFL, NBA, MLB, and NHL; win totals; playoffs
/sports/{id}/futuresUltra
Market IDs Kalshi priced on the October 4, 2026 NFL, NBA, MLB, and NHL slates, plus its alternates, in-game lines, and futures. Coverage varies by league and game.
Books
All 25 books. One schema.
Compare Kalshi with 20 sportsbooks, the other prediction markets, and 2 exchanges in one response.
Sportsbooks · 20
- DraftKingsFree19
- FanDuelFree23
- BetMGMFree22
- Pinnacle3
- Circa Sports32
- BookMaker7
- BetCRIS9
- Bovada2
- theScore Bet24
- Unibet21
- HardRock28
- Bet10533
- Heritage Sports34
- BetOnline6
- SportsBetting4
- LowVig11
- Bodog12
- Intertops14
- Matchbook16
- YouWager18
Prediction markets · 3
- Kalshi25
- Polymarket26
- Polymarket US31
Exchanges · 2
- ProphetX29
- Novig30
Live from GET /api/v2/affiliates. Coverage varies by league, game, and market.
Free vs paid
Test free. Kalshi starts at $49.
No Kalshi. Free keys return DraftKings, FanDuel, and BetMGM, pre-match and five minutes delayed.
Kalshi from $49 a month, beside every sportsbook, with player markets and history. Futures on Ultra.
Questions
Before you build.
Plans, markets, books, and IDs for the Kalshi odds API.
- Is Kalshi on the free plan?
- No. Free keys return DraftKings, FanDuel, and BetMGM. Kalshi starts on Starter ($49 a month) with a 60-second delay. Pro cuts that to 30 seconds, and Ultra is real-time.
- Which Kalshi markets are available?
- Game lines; alternate spreads, totals, and player lines; NFL 1st half and MLB first-five and inning lines; team totals; player props in the NFL, MLB, and NHL; anytime and 2+ touchdown scorers; in-game lines; and futures for championships, conferences, divisions, awards, win totals, and playoffs. Futures start on Ultra.
- How are Kalshi prices formatted?
- As American odds in the same price field every sportsbook uses, with the Kalshi market ticker in source_id and approximate resting order-book depth in liquidity_usd.
- Should Kalshi count toward a sportsbook consensus?
- No. Kalshi is a prediction market. Show its prices beside sportsbook odds, and keep them out of best-price and consensus math.
- What is the Kalshi affiliate ID?
- 25. Polymarket is 26, Polymarket US is 31, ProphetX is 29, and Novig is 30. GET /api/v2/affiliates lists all 25 books.