Live Scores API

Pro+

Real-time match scores and events with WebSocket support

Overview

The Live Scores API provides real-time match data including live scores, minute-by-minute events, match statistics, lineups, substitutions, cards, and goals. Supports both REST polling and WebSocket streaming.

Update Delay:~5 seconds (REST) / Real-time (WebSocket)
Coverage:All major leagues + 150+ others

REST Endpoints

GET
/live/matches

Get all currently live matches

curl https://api.over15ai.com/v1/live/matches \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "data": [
    {
      "id": "760486",
      "status": "live",
      "minute": 67,
      "homeTeam": {
        "name": "Netherlands",
        "score": 2
      },
      "awayTeam": {
        "name": "Romania",
        "score": 1
      },
      "events": [
        {
          "type": "goal",
          "minute": 12,
          "team": "home",
          "player": "Memphis Depay"
        }
      ]
    }
  ]
}

GET
/live/:matchId

Get live data for specific match

curl https://api.over15ai.com/v1/live/760486 \
  -H "Authorization: Bearer YOUR_API_KEY"

WebSocket API

Connection

Real-time updates via WebSocket

const ws = new WebSocket('wss://ws.over15ai.com/v1/live')

// Authenticate
ws.send(JSON.stringify({
  type: 'auth',
  token: 'YOUR_API_KEY'
}))

// Subscribe to match
ws.send(JSON.stringify({
  type: 'subscribe',
  matchId: '760486'
}))

// Listen for updates
ws.onmessage = (event) => {
  const data = JSON.parse(event.data)
  console.log('Live update:', data)
}

Event Types

goal- Goal scored
card- Yellow or red card
substitution- Player substitution
penalty- Penalty awarded/taken
var- VAR decision

Rate Limits

⚠️ High Traffic Feature

Live Scores API has higher rate limits than other endpoints due to real-time nature. WebSocket connections count as single ongoing request.

REST PollingEvery 30 seconds minimum
WebSocketUnlimited (1 connection per API key)