Call of Duty API.
The CDL, normalized like the rest.

Call of Duty esports runs on the CDL — a franchise league with a compact calendar — and its player data sits behind the same problems as every other title: scattered stats, no public book feed, and identity that breaks on nicknames. KashRock serves the COD player directory, match index and settled prop grades on the same canonical schema as CS2.

Why a COD API needs a schema

COD coverage is concentrated: one franchised league, a dozen teams, maps and modes that change per series. That makes identity easy to get wrong — the same player shows up under different nicks across books, and map-scope rules differ from CS2. The schema handles it the same way.

Practical rule: COD roles matter for props — an SMG's kill line prices differently than an AR's, and the directory carries the role so you don't guess.

What we normalize today

Canonical player, team and match ids with COD-prefixed market keys where books post them. The player directory carries role and franchise team, and prop grades resolve to the same kr_match_id the schedule uses.

Core COD endpoints

Paths under /v7/cod/. Same client and filters as the other eight titles.

EndpointPurposeKey filters
GET /v7/cod/playersPlayer directory — nick, team, roleq, id, include
GET /v7/cod/matchesSchedule / live / completedstatus, date, team
GET /v7/cod/propsDFS player props when listedbook, market
GET /v7/cod/resultsSettled prop grades (kills, deaths)grade, from, to
GET /v7/cod/teamsTeam directory, form, rosterid, q, include

Canonical IDs

  • —kr_pl_* player ids survive nick and roster changes
  • —kr_tm_* franchise team ids dedupe org branding
  • —kr_match_id joins props, lines and results to one series

Sample COD player record

A real COD directory record — aBeZy on 100 Thieves, role SMG, under one canonical player id.

FieldExampleUsed for
player_idkr_pl_643cbe6404f5Canonical player key — not the nickname
nicknameaBeZyDisplay name as books list it
team_idkr_tm_ee907e7666aaStable franchise team id
roleSMGSMG / AR / Flex
GET /v7/cod/players?q=abezy
{
  "source": "kashrock",
  "sport": "cod",
  "players": [
    {
      "player_id": "kr_pl_643cbe6404f5",
      "nickname": "aBeZy",
      "slug": "abezy",
      "team": "100 Thieves",
      "team_id": "kr_tm_ee907e7666aa",
      "role": "SMG"
    }
  ]
}

Comparing COD sources

The CDL site and broadcast carry standings context. Use KashRock when you need canonical ids, the match index and settled prop grades in one place.

SourceSchemaBest use
CDL site / broadcastStandings and show contextEditorial
Community stat trackersK/D and mode splitsResearch
KashRock COD APINormalized ids + book marketsApps, grading, models

Settlement patterns

COD prop grades settle from the match record — kills and deaths markets land on /results with the book's settlement rules version attached.

Operational practices

  • —COD boards follow the CDL calendar — expect gaps between events
  • —Use /results for settled grades instead of re-scoring yourself
  • —Filter players by role when comparing kill markets

Quick reference

GET /v7/cod/players for the directory, /matches for schedule, /results for settled grades. Transparent pricing.

If you need a normalized feed instead of another UI wrapper, the Esports API exposes live boards, schedules, and history on one schema — with the IDs and outcome patterns that keep backtests and grading honest. Start free on Sandbox, or see published pricing.

Frequently asked questions

Does the Call of Duty API have DFS props?

When DFS books post COD boards — kills, deaths, fantasy points — they appear on GET /v7/cod/props on the same schema as CS2. COD boards are seasonal around the CDL schedule; when nothing is listed the books object reports it honestly.

Are COD props graded?

Yes. COD is one of the titles with a wired grading source — settled offers land on GET /v7/cod/results with hit, miss or push, the actual stat, and opening/closing line.

What does the COD player directory include?

Canonical kr_pl_* ids, nickname and slug, current franchise team with kr_tm_* id, and role (SMG, AR, Flex) — the same record shape as every other title.