Get a key

History tape

Quote tape and settlement for one contract. Vault only — no live source fan-out on the request path.

GET/v6/esports/history/contract
ParamTypeRequiredDescription
market_keystring—Canonical market key. Required unless prop_id + book.
prop_idstring—Use with book when you do not have market_key.
bookstring—Book slug. Required with prop_id.
cURLGET
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://kashrock.up.railway.app/v6/esports/history/contract?market_key=kr_mk_bb9dc1e03b45f0d4"
200 · live
{
  "prop_id": "kr_prop_90f5d48848af",
  "market_key": "kr_mk_bb9dc1e03b45f0d4",
  "contract": {
    "book": "underdog",
    "event_id": "kr_ev_d2a547772dc4",
    "market_definition_id": "kr_md_lol_kills_maps_1_2_v1"
  },
  "quote_tape": [
    {
      "side": "over",
      "line": 6.5,
      "price_american": -121,
      "market_status": "open",
      "is_latest": true
    }
  ]
}

Closing mainlines

Opening and closing match winner, map winner, total maps, and map handicap for one match. Vault prints only — not the in-play Redis shift log. Builder+. Unknown match is 404; known match with no quotes is 200 with an empty markets list.

GET/v6/esports/{sport}/matches/{slug_or_kr_match_id}/lines/history
ParamTypeRequiredDescription
sportpath—cs2, valorant, lol, dota2, …
slug_or_kr_match_idpath—From get_matches / get_match. Never a foreign numeric id.
marketquery—Optional. match_winner | map_winner | total_maps | map_handicap | correct_score. Omit = all. For correct_score every listed final score is a side with its own open, close and quote tape.
bookquery—Optional book slug.
cURLGET
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://kashrock.up.railway.app/v6/esports/cs2/matches/esport-berg-vs-oldboys-pl-16-09-2026/lines/history?market=match_winner"
200 · closing
{
  "source": "kashrock",
  "sport": "cs2",
  "kr_match_id": "kr_cs2_esport-berg-vs-oldboys-pl-16-09-2026",
  "match_slug": "esport-berg-vs-oldboys-pl-16-09-2026",
  "event_id": "kr_ev_df690c2c50d9",
  "markets": [
    {
      "market": "match_winner",
      "map_number": null,
      "line": null,
      "books": [
        {
          "book": "sleeper",
          "opening": {
            "side": "home",
            "name": "OLDBOYS-",
            "american": -104,
            "observed_at": "2026-09-15T12:03:32Z"
          },
          "closing": {
            "side": "home",
            "name": "OLDBOYS-",
            "american": -335,
            "observed_at": "2026-09-15T17:53:12Z"
          },
          "sides": [
            {
              "side": "home",
              "name": "OLDBOYS-",
              "opening": {
                "american": -104,
                "observed_at": "2026-09-15T12:03:32Z"
              },
              "closing": {
                "american": -335,
                "observed_at": "2026-09-15T17:53:12Z"
              }
            },
            {
              "side": "away",
              "name": "Esport BERG",
              "opening": {
                "american": 153,
                "observed_at": "2026-09-15T12:03:32Z"
              },
              "closing": {
                "american": 355,
                "observed_at": "2026-09-15T18:53:50Z"
              }
            }
          ]
        }
      ]
    }
  ]
}