V6 API

The V6 routes keep serving, with the same response shapes they have always returned. There is no retirement date and no cut-off: if your integration calls V6 today, it keeps working and you do not have to change anything.

V7 is the default for new work. It answers in one call what V6 often needs several for, and it is where new markets and sports land first. Read the V7 API Reference, or Moving To V7 for the route-by-route mapping — on your own schedule.

Quick Start

HTTPS only. Pass your key on every request, with either X-API-Key or Authorization: Bearer.

cURLGET
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://kashrock.up.railway.app/v6/esports/cs2/props"
200 · live prop
{
  "propId": "kr_prop_883ba7a1e090",
  "eventId": "kr_ev_d9410a855f83",
  "offerId": "kr_prop_883ba7a1e090_6_over",
  "book_name": "Betr",
  "player_name": "mezii",
  "stat_type": "CS2_HEADSHOTS_MAPS_1_2",
  "line": 14.5,
  "direction": "over",
  "team": "Team Vitality",
  "opponent": "Lynn Vision Gaming",
  "event_time": "2026-08-16T13:55:00.000Z"
}

Routes

Pass a sport slug as {sport} — one of cs2, valorant, lol, dota2, cod, r6, mlbb or deadlock.

RouteAnswers
/v6/esports/{sport}/propsDFS player props for the sport.
/v6/esports/{sport}/player-propsDFS and sportsbook named-player props.
/v6/esports/{sport}/linesTeam mainlines with a consensus fair price.
/v6/esports/{sport}/gapsThe same prop at different lines across boards.
/v6/esports/{sport}/matchesFixtures, live and finished matches.
/v6/esports/{sport}/matches/{kr_match_id}/boxscorePer-map player stats for a match.
/v6/esports/{sport}/live/gamesMatches in progress, with their KashRock ids.
/v6/esports/{sport}/playersPlayer directory, rankings and research.
/v6/esports/{sport}/teams/{team}A team, its record and recent matches.
/v6/esports/{sport}/resultsSettled prop grades.

IDs

V6 and V7 share one namespace, so an id you stored from a V6 response resolves on V7 and the other way round. Pass KashRock ids — kr_match_id, kr_pl_*, kr_tm_*, kr_prop_* — or a match slug. A bare numeric id is rejected with a 400 that names the id to send instead.