Live sports data API

One API call for match, market, injuries, and opening lines.

Structured live sports data with a fixed public contract. Every response returns the same seven sections: match, teams, intel, injuries, opening lines, market, and metadata.

Get sandbox access Read the docs
Sandbox is free · 4 published sample IDs · Live docs · MCP server available

Seven sections land in every response.

Each section is always present and returned in the same order. The public v1 contract is schema-checked and release-gated.

match

Identity and status

Match ID, kickoff time, venue, status, period, and clock. The anchor for everything else in the response.

teams

Home and away

Team names, abbreviations, records, and logo URLs. Both sides, every call.

intel

Pre-match context

Rolling scoring averages, recent form, and trending directions. The context layer behind the line.

injuries

Absences and impact

Who's out, who's questionable, and a summary of the expected impact on the game.

opening_lines

Where the line opened

Opening spread, total, and moneyline. The reference point for measuring where the market has moved.

market

Current consensus

Current spread, total, and moneyline from the consensus feed. Updated each refresh cycle.

metadata

API version and coverage

API version, response time, and a coverage map showing which sections resolved for this match.

This is the actual shape.

Abbreviated for readability. Full payload in the docs.

// GET /api/match-context?match_id={match_id}

{
  // 1. match
  "match": {
    "id": "b193b51f-cbed-4398-a297-237dd3322607",
    "home_team": "Arsenal",
    "away_team": "Man City",
    "league": "eng.1",
    "status": "scheduled",
    "kickoff": "2026-03-15T16:30:00Z"
  },

  // 2. teams
  "teams": {
    "home": { "name": "Arsenal", "record": "22-4-3", "logo": "https://..." },
    "away": { "name": "Man City", "record": "18-6-5", "logo": "https://..." }
  },

  // 3. intel
  "intel": {
    "home_avg_total": 2.8,
    "away_avg_total": 3.1,
    "sample": 10
  },

  // 4. injuries
  "injuries": [
    { "player": "Saka", "status": "questionable", "detail": "hamstring" }
  ],

  // 5. opening_lines
  "opening_lines": {
    "spread": -0.5,
    "total": 2.5,
    "moneyline_home": -120
  },

  // 6. market
  "market": {
    "spread": -0.25,
    "total": 2.5,
    "moneyline_home": -110
  },

  // 7. metadata
  "metadata": {
    "api_version": "v1",
    "response_ms": 182,
    "coverage": { "intel": true, "injuries": true, "market": true }
  }
}

What's live and what's coming.

Sport Leagues Status
Basketball NBA, NCAAB Live
Football NFL Live
Baseball MLB Live
Hockey NHL Live
Soccer EPL, La Liga, Serie A, Bundesliga, Ligue 1, MLS + 8 more Live

One plan covers every sport.

No per-league pricing. No upsells to unlock endpoints. Every plan gets the full payload shape across every league.

Sandbox
Free
Evaluate the data before you commit.
  • Published sample match IDs
  • 1,000 requests per month
  • Full v1 payload
  • Email support
Start free
Desk
Custom
For teams with throughput needs.
  • Everything in Trader
  • Custom request limits
  • Dedicated refresh
  • Direct Slack channel
Talk to us

Sandbox access, live docs, and published sample IDs.

First call takes under a minute.

Get sandbox access