Kalshi API.
Prediction-market mainlines for better models.

Quick answer: Kalshi exposes trade APIs; KashRock normalizes its esports markets into the same prop schema as DFS and sportsbooks — query GET /v6/esports/{sport}/props?book=kalshi, or read consensus on GET /v6/esports/{sport}/lines.

We pull Kalshi esports match and map markets into the same normalized schema as sportsbooks and DFS books. Use prediction-market probabilities as a clean prior so your model stays calibrated: GET /v6/esports/{sport}/props?book=kalshi and consensus GET /v6/esports/{sport}/lines.

Does Kalshi have an API?

Kalshi exposes trade APIs; KashRock normalizes its esports markets into the same prop schema as DFS and sportsbooks — query GET /v6/esports/{sport}/props?book=kalshi, or read consensus on GET /v6/esports/{sport}/lines.

What you get

  • —Match/map mainlines as probabilities and American odds.
  • —Same prop shape as Thunderpick and Polymarket for cross-venue joins.
  • —Helps models avoid single-venue bias when sportsbook lines skew.

Endpoints

One key covers Kalshi and the other 24 books — every row comes back on the same schema, so nothing about the read is Kalshi-specific.

EndpointWhat it returnsKey filter
GET /v6/esports/cs2/props?book=kalshiLive Kalshi board, normalized to the shared prop schemabook=kalshi
GET /v6/esports/{sport}/linesConsensus lines with Kalshi priced alongside the other venuessport
GET /v7/metaThe registry entry for Kalshi — key, kind, and supported marketskey=kalshi

A live Kalshi prop

A real Kalshi row from production — the same shape every other book returns, with the canonical propId that lets you line-shop across venues.

GET /v6/esports/cs2/props?book=kalshi
{
  "source": "kashrock",
  "sport": "cs2",
  "props": [
    {
      "propId": "prop_60314492f9bf8781",
      "player_name": "BOJONG",
      "stat_type": "MONEYLINE",
      "line": null,
      "odds": 178,
      "direction": "home",
      "team": "BOJONG",
      "book_name": "Kalshi",
      "event_time": "2026-09-11T19:30:00Z"
    }
  ]
}

Kalshi via KashRock vs scraping it yourself

  • —The app's internal endpoints change without notice — the normalized schema does not
  • —Player, stat, line, direction, and team arrive already mapped to canonical KashRock ids
  • —The same propId lines Kalshi up next to every other book for comparison
  • —One API key and one auth header replace per-source session handling

Start in minutes

  • —Create a free Sandbox key on Pricing — $0, no card, 500 requests every UTC day
  • —Call GET /v6/esports/cs2/props?book=kalshi with the key in the X-API-Key header
  • —Filter by stat_type, player, or match — the response is the board as KashRock serves it

Quick reference

FieldValue
Book keybook=kalshi
EndpointGET /v6/esports/cs2/props?book=kalshi
Row shapepropId, player_name, stat_type, line, direction, odds, team, event_time
Free tierSandbox $0 — 500 requests / UTC day
Consensus linesHobby and up, from $29/mo

Consensus product: Esports Consensus API. Also: Polymarket API and Thunderpick API. Docs: /lines.

Frequently asked questions

Is there a Kalshi esports API for builders?

Kalshi exposes trade APIs; KashRock normalizes esports markets into the same prop schema as DFS and sportsbooks via GET /v6/esports/{sport}/props?book=kalshi, and folds them into GET /v6/esports/{sport}/lines consensus.

Why pull Kalshi for modeling?

Prediction markets price match/map outcomes in probability space. Feeding those mainlines into your model (with sportsbook odds) reduces single-venue bias and improves calibration.

Free tier?

Sandbox is $0/mo. Cross-venue consensus lines (Kalshi + Polymarket + Thunderpick) are on Hobby+.

How do I call Kalshi esports markets?

GET /v6/esports/{sport}/props?book=kalshi for its board rows, and GET /v6/esports/{sport}/lines for the consensus where Kalshi prices sit next to sportsbook and Polymarket odds.

What does each Kalshi row contain?

propId, the selection, stat_type, line, direction, odds as American prices and implied probability, team, and event_time — the same prop schema as every other venue.

Can I compare Kalshi to a sportsbook price?

Yes. Kalshi markets land on the same kr_match_id as the books, so GET /v6/esports/{sport}/lines puts the crowd price and the book price on one row.

KashRock is an independent data provider and is not affiliated with, endorsed by, or sponsored by Kalshi. We expose publicly available market data in a normalized schema for informational and analytical use.