owlsinsight-com Player stats API

The Player stats API from owlsinsight-com — 4 operation(s) for player stats.

Operations 4

GET /api/v1/{sport}/stats Returns per-game team stats, score and status for every game on a date: live… #
GET /api/v1/{sport}/stats/averages Returns a player's rolling averages over the last 5, 10 and 20 games from… #
GET /api/v1/{sport}/stats/h2h Returns head-to-head history and recent form for one scoreboard event #
GET /api/v1/{sport}/stats/match Returns full detail for one event: score, status, team stats, lineups and… #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/owlsinsight-com:owlsinsight-com-player-stats-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

owlsinsight-com-player-stats-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'Generated from the Owls Insight API manifest and the owls-insight-ts SDK types. Schemas are deliberately lenient: every field is optional, enums are open (x-extensible-enum), and unknown fields may appear. Decode accordingly.'
  title: Owls Insight Player stats API
  version: 0.78.0
  x-owls-manifest-commit: c93b0756
servers:
- url: https://api.owlsinsight.com
security:
- bearerAuth: []
tags:
- name: Player stats
paths:
  /api/v1/{sport}/stats:
    get:
      description: 'Returns per-game team stats, score and status for every game on a date: live, scheduled and finished.


        Covers the current US Eastern day''s matches: live, scheduled and finished (a finished match stays for 24 hours from its start). Use the history endpoints for older games.


        date is compared with each game''s start time in US Eastern time.


        score is null for a scheduled game. For soccer it never includes penalty shootout goals: soccerDetail carries regulation, extraTime, penalties and decidedBy.


        NFL, NCAAF and NBA give the period in status.period and its label in status.detail: Q1 to Q4, Halftime (period 2), or OT (period 5 for every overtime; overtimes are not numbered). NHL gives P1 to P3, Intermission between periods (around the restart, status.period can already be the next period), OT (period 4 for every overtime) or SO (period 5). Owls Insight has no game clock for these sports, so status.displayClock is null. Soccer status.detail is the half (1st Half, 2nd Half) and the match minute is status.displayClock, e.g. 67 or 45+2. A phase without a label, soccer half-time included, reads Live with status.period null, as does college basketball. MLB gives the inning in status.period and status.detail (e.g. Top 7th); in extra innings status.detail reads Top Extra Inning, Bot Extra Inning, or Extra Inning when the half is unknown, with status.period null, because extra innings are not numbered. On /scores/live, a baseball linescore period 10 is every extra inning combined.


        A teamStats pair the source did not measure is null or absent, never 0.'
      operationId: getStats
      parameters:
      - in: path
        name: sport
        required: true
        schema:
          type: string
          x-extensible-enum:
          - mlb
          - nba
          - ncaab
          - ncaaf
          - nfl
          - nhl
          - soccer
          - tennis
      - description: Game date as YYYY-MM-DD or YYYYMMDD. Defaults to the current date in US Eastern time.
        in: query
        name: date
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StatsResponse'
          description: OK
      summary: 'Returns per-game team stats, score and status for every game on a date: live…'
      tags:
      - Player stats
      x-owls-access: Rookie and above
      x-owls-sdk-method: getStats
  /api/v1/{sport}/stats/averages:
    get:
      description: 'Returns a player''s rolling averages over the last 5, 10 and 20 games from published game logs, optionally restricted to games against one opponent.


        Fetched fresh on every request.


        404 when the player is not found, has no game log for the season, or has no games against the opponent.'
      operationId: getPlayerAverages
      parameters:
      - in: path
        name: sport
        required: true
        schema:
          type: string
          x-extensible-enum:
          - nba
          - ncaab
      - description: Player name, up to 100 characters.
        in: query
        name: playerName
        required: true
        schema:
          type: string
      - description: Opponent team, up to 100 characters. Limits the averages to head-to-head games.
        in: query
        name: opponent
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlayerAveragesResponse'
          description: OK
      summary: Returns a player's rolling averages over the last 5, 10 and 20 games from…
      tags:
      - Player stats
      x-owls-access: Rookie and above
      x-owls-sdk-method: getPlayerAverages
  /api/v1/{sport}/stats/h2h:
    get:
      description: 'Returns head-to-head history and recent form for one scoreboard event.


        404 when the eventId is not on the live scoreboard or has no head-to-head data.'
      operationId: getH2H
      parameters:
      - in: path
        name: sport
        required: true
        schema:
          type: string
          x-extensible-enum:
          - mlb
          - nba
          - ncaab
          - ncaaf
          - nfl
          - nhl
          - soccer
          - tennis
      - description: Event id from the live scores or /stats response.
        in: query
        name: eventId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/H2HResponse'
          description: OK
      summary: Returns head-to-head history and recent form for one scoreboard event
      tags:
      - Player stats
      x-owls-access: Rookie and above
      x-owls-sdk-method: getH2H
  /api/v1/{sport}/stats/match:
    get:
      description: 'Returns full detail for one event: score, status, team stats, lineups and incidents.


        Covers live matches and the current US Eastern day''s scheduled and finished matches; 404 otherwise.'
      operationId: getMatchStats
      parameters:
      - in: path
        name: sport
        required: true
        schema:
          type: string
          x-extensible-enum:
          - mlb
          - nba
          - ncaab
          - ncaaf
          - nfl
          - nhl
          - soccer
          - tennis
      - description: Event id from the live scores or /stats response.
        in: query
        name: eventId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchStatsResponse'
          description: OK
      summary: 'Returns full detail for one event: score, status, team stats, lineups and…'
      tags:
      - Player stats
      x-owls-access: Rookie and above
      x-owls-sdk-method: getMatchStats
components:
  schemas:
    MatchIncident:
      properties:
        assistPlayerName:
          type: string
        minute:
          format: double
          type: number
        playerName:
          type: string
        playerOut:
          type: string
        teamSide:
          type: string
          x-extensible-enum:
          - away
          - home
        type:
          type: string
          x-extensible-enum:
          - goal
          - ownGoal
          - penalty
          - redCard
          - substitution
          - yellowCard
      type: object
      x-owls-required:
      - minute
      - type
      - playerName
      - teamSide
    GameLogEntry:
      properties:
        gameDate:
          type: string
        homeAway:
          type: string
          x-extensible-enum:
          - away
          - home
        opponent:
          type:
          - string
          - 'null'
        stats:
          properties:
            assists:
              format: double
              type: number
            blocks:
              format: double
              type: number
            fg:
              properties:
                attempted:
                  format: double
                  type: number
                made:
                  format: double
                  type: number
              type: object
              x-owls-required:
              - made
              - attempted
            fouls:
              format: double
              type: number
            freeThrow:
              properties:
                attempted:
                  format: double
                  type: number
                made:
                  format: double
                  type: number
              type: object
              x-owls-required:
              - made
              - attempted
            minutes:
              type:
              - string
              - 'null'
            plusMinus:
              format: double
              type: number
            points:
              format: double
              type: number
            rebounds:
              format: double
              type: number
            steals:
              format: double
              type: number
            threePoint:
              properties:
                attempted:
                  format: double
                  type: number
                made:
                  format: double
                  type: number
              type: object
              x-owls-required:
              - made
              - attempted
            turnovers:
              format: double
              type: number
          type: object
          x-owls-required:
          - minutes
          - points
          - rebounds
          - assists
          - steals
          - blocks
          - turnovers
          - fouls
          - plusMinus
          - fg
          - threePoint
          - freeThrow
        teamScore:
          format: double
          type: number
      type: object
      x-owls-required:
      - gameDate
      - opponent
      - homeAway
      - teamScore
      - stats
    TennisSetStats:
      properties:
        set:
          format: double
          type: number
        stats:
          additionalProperties:
            anyOf:
            - $ref: '#/components/schemas/HomeAway'
            - type: 'null'
          type: object
      type: object
      x-owls-required:
      - set
      - stats
    StatsGame:
      description: 'One match from GET /api/v1/{sport}/stats: live, scheduled or finished today.'
      properties:
        eventId:
          type: string
        lastUpdated:
          description: Last time the score or state changed.
          type:
          - string
          - 'null'
        name:
          type: string
        score:
          description: 'Null for a scheduled match (never a 0-0). Soccer: excludes shootout goals.'
          properties:
            away:
              format: double
              type: number
            home:
              format: double
              type: number
          type:
          - object
          - 'null'
          x-owls-required:
          - home
          - away
        soccerDetail:
          $ref: '#/components/schemas/SoccerScoreDetail'
        startTime:
          type:
          - string
          - 'null'
        status:
          $ref: '#/components/schemas/ScoreStatus'
        teamStats:
          additionalProperties:
            properties:
              away: {}
              home: {}
            type: object
            x-owls-required:
            - home
            - away
          description: A pair is null (or absent) when the source did not measure it, never a fake 0.
          type: object
      type: object
      x-owls-required:
      - eventId
      - name
      - startTime
      - teamStats
      - status
      - score
      - lastUpdated
    ComputedAverages:
      properties:
        apg:
          format: double
          type: number
        bpg:
          format: double
          type: number
        fgPct:
          format: double
          type: number
        ftPct:
          format: double
          type: number
        gamesPlayed:
          format: double
          type: number
        minutesAvg:
          format: double
          type: number
        plusMinusAvg:
          format: double
          type: number
        ppg:
          format: double
          type: number
        rpg:
          format: double
          type: number
        spg:
          format: double
          type: number
        threePct:
          format: double
          type: number
        topg:
          format: double
          type: number
      type: object
      x-owls-required:
      - gamesPlayed
      - ppg
      - rpg
      - apg
      - spg
      - bpg
      - topg
      - fgPct
      - threePct
      - ftPct
      - minutesAvg
      - plusMinusAvg
    MatchStatsResponse:
      properties:
        data:
          properties:
            eventId:
              type: string
            incidents:
              items:
                $ref: '#/components/schemas/MatchIncident'
              type: array
            lastUpdated:
              description: Last time the score or state changed.
              type:
              - string
              - 'null'
            lineups:
              $ref: '#/components/schemas/LineupsData'
            name:
              type: string
            score:
              description: 'Null for a scheduled match (never a 0-0). Soccer: excludes shootout goals.'
              properties:
                away:
                  format: double
                  type: number
                home:
                  format: double
                  type: number
              type:
              - object
              - 'null'
              x-owls-required:
              - home
              - away
            soccerDetail:
              $ref: '#/components/schemas/SoccerScoreDetail'
            sport:
              type: string
            startTime:
              type:
              - string
              - 'null'
            status:
              $ref: '#/components/schemas/ScoreStatus'
            teamStats:
              additionalProperties:
                properties:
                  away: {}
                  home: {}
                type: object
                x-owls-required:
                - home
                - away
              type: object
            tennisStats:
              $ref: '#/components/schemas/TennisStatsPayload'
          type: object
          x-owls-required:
          - status
          - score
          - lastUpdated
          - eventId
          - sport
          - name
          - startTime
          - teamStats
          - lineups
          - incidents
        meta:
          properties:
            sport:
              type: string
            timestamp:
              type:
              - string
              - 'null'
          type: object
          x-owls-required:
          - sport
          - timestamp
        success:
          type: boolean
      type: object
      x-owls-required:
      - success
      - data
    ScoreStatus:
      properties:
        detail:
          type: string
        displayClock:
          type:
          - string
          - 'null'
        period:
          format: double
          type:
          - number
          - 'null'
        state:
          type: string
          x-extensible-enum:
          - in
          - post
          - pre
      type: object
      x-owls-required:
      - state
      - detail
      - displayClock
      - period
    PlayerLineup:
      properties:
        country:
          type: string
        jersey:
          format: double
          type: number
        name:
          type: string
        playerId:
          type: string
        playerUrl:
          type: string
        rating:
          format: double
          type: number
        starter:
          type: boolean
      type: object
      x-owls-required:
      - name
      - starter
    H2HResponse:
      properties:
        data:
          properties:
            eventId:
              type: string
            h2h:
              $ref: '#/components/schemas/H2HData'
            sport:
              type: string
          type: object
          x-owls-required:
          - eventId
          - sport
          - h2h
        success:
          type: boolean
      type: object
      x-owls-required:
      - success
      - data
    LineupsData:
      properties:
        away:
          items:
            $ref: '#/components/schemas/PlayerLineup'
          type: array
        home:
          items:
            $ref: '#/components/schemas/PlayerLineup'
          type: array
      type: object
      x-owls-required:
      - home
      - away
    HomeAway:
      properties:
        away:
          format: double
          type:
          - number
          - 'null'
        home:
          format: double
          type:
          - number
          - 'null'
      type: object
      x-owls-required:
      - home
      - away
    SoccerScoreDetail:
      description: 'Soccer result breakdown. `home.score`/`away.score` (and `score` on the stats

        endpoints) are the score of the match itself, after extra time when it was

        played, and NEVER include shootout goals; the shootout is only in `penalties`.'
      properties:
        decidedBy:
          description: How a finished match was decided. Absent while in play.
          type: string
          x-extensible-enum:
          - extra_time
          - penalties
          - regulation
        extraTime:
          description: Score at the end of extra time. Only when extra time was played.
          properties:
            away:
              format: double
              type: number
            home:
              format: double
              type: number
          type: object
          x-owls-required:
          - home
          - away
        penalties:
          description: Penalty shootout score. Only when a shootout was played.
          properties:
            away:
              format: double
              type: number
            home:
              format: double
              type: number
          type: object
          x-owls-required:
          - home
          - away
        regulation:
          description: Score at the end of normal time.
          properties:
            away:
              format: double
              type: number
            home:
              format: double
              type: number
          type: object
          x-owls-required:
          - home
          - away
      type: object
    StatsResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/StatsGame'
          type: array
        meta:
          properties:
            date:
              type: string
            gameCount:
              format: double
              type: number
            notice:
              type: string
            scheduledAndFinishedAsOf:
              description: When the scheduled and finished data was refreshed.
              type:
              - string
              - 'null'
            sport:
              type: string
            timestamp:
              description: When the live data was refreshed.
              type:
              - string
              - 'null'
          type: object
          x-owls-required:
          - sport
          - date
          - gameCount
        success:
          type: boolean
      type: object
      x-owls-required:
      - success
      - data
      - meta
    TennisStatsPayload:
      properties:
        match:
          additionalProperties:
            anyOf:
            - $ref: '#/components/schemas/HomeAway'
            - type: 'null'
          type: object
        sets:
          items:
            $ref: '#/components/schemas/TennisSetStats'
          type: array
      type: object
      x-owls-required:
      - match
    H2HData:
      properties:
        awayCountry:
          type: string
        awayRanking:
          format: double
          type: number
        awaySlug:
          type: string
        headToHead:
          items:
            $ref: '#/components/schemas/RecentGame'
          type: array
        homeCountry:
          type: string
        homeRanking:
          format: double
          type: number
        homeSlug:
          type: string
        lastGamesAway:
          items:
            $ref: '#/components/schemas/RecentGame'
          type: array
        lastGamesHome:
          items:
            $ref: '#/components/schemas/RecentGame'
          type: array
        surfaceFilter:
          type: string
      type: object
      x-owls-required:
      - lastGamesHome
      - lastGamesAway
      - headToHead
    RecentGame:
      properties:
        awayTeam:
          type: string
        date:
          format: double
          type: number
        homeSide:
          type: boolean
        homeTeam:
          type: string
        matchId:
          type: string
        result:
          type: string
          x-extensible-enum:
          - d
          - l
          - w
        score:
          type: string
        surface:
          type: string
        tournament:
          type: string
      type: object
      x-owls-required:
      - matchId
      - date
      - tournament
      - homeTeam
      - awayTeam
      - score
      - result
      - homeSide
    PlayerAveragesResponse:
      properties:
        data:
          properties:
            averages:
              description: L5/L10/L20 rolling windows (computed by Owls Insight)
              properties:
                last10:
                  anyOf:
                  - $ref: '#/components/schemas/ComputedAverages'
                  - type: 'null'
                last20:
                  anyOf:
                  - $ref: '#/components/schemas/ComputedAverages'
                  - type: 'null'
                last5:
                  anyOf:
                  - $ref: '#/components/schemas/ComputedAverages'
                  - type: 'null'
              type: object
              x-owls-required:
              - last5
              - last10
              - last20
            gameLogs:
              items:
                $ref: '#/components/schemas/GameLogEntry'
              type: array
            monthly:
              description: Per-month averages from ESPN
              items:
                properties:
                  averages:
                    additionalProperties:
                      type: string
                    type: object
                  month:
                    type: string
                type: object
                x-owls-required:
                - month
                - averages
              type:
              - array
              - 'null'
            opponent:
              type:
              - string
              - 'null'
            player:
              properties:
                name:
                  type: string
                position:
                  type: string
                team:
                  type: string
              type: object
              x-owls-required:
              - name
              - team
              - position
            seasonAverages:
              additionalProperties:
                type: string
              description: ESPN's pre-computed season averages (label → value, e.g. "PTS" → "17.6")
              type:
              - object
              - 'null'
            seasonTotals:
              additionalProperties:
                type: string
              description: ESPN's pre-computed season totals (label → value, e.g. "PTS" → "704")
              type:
              - object
              - 'null'
          type: object
          x-owls-required:
          - player
          - opponent
          - seasonAverages
          - seasonTotals
          - monthly
          - averages
          - gameLogs
        success:
          type: boolean
      type: object
      x-owls-required:
      - success
      - data
  securitySchemes:
    bearerAuth:
      description: Your Owls Insight API key.
      scheme: bearer
      type: http
x-owls-v2-books:
- book: 4casters
  sports:
  - cfl
  - esports
  - mlb
  - mma
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - soccer
  - tennis
  - wnba
  wsEvent: 4casters-v2-update
- book: 888sport
  sports:
  - mlb
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - soccer
  - tennis
  - wnba
  wsEvent: null
- book: ballybet
  sports:
  - aussie-rules
  - boxing
  - cricket
  - cycling
  - darts
  - formula1
  - golf
  - handball
  - mlb
  - mma
  - motorsport
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - rugby-league
  - rugby-union
  - snooker
  - soccer
  - specials
  - surfing
  - table-tennis
  - tennis
  - wnba
  wsEvent: ballybet-v2-update
- book: bet105
  sports:
  - alpine-skiing
  - archery
  - athletics
  - aussie-rules
  - badminton
  - bandy
  - baseball
  - basketball
  - basketball-3x3
  - biathlon
  - bowls
  - boxing
  - cfl
  - chess
  - cricket
  - curling
  - cycling
  - darts
  - esports
  - fencing
  - field-hockey
  - floorball
  - football
  - formula1
  - futsal
  - gaelic-sports
  - golf
  - greyhounds
  - handball
  - hockey
  - horse-racing
  - hurling
  - judo
  - kabaddi
  - kbo
  - lacrosse
  - mlb
  - mma
  - motorbikes
  - motorsport
  - nascar
  - nba
  - ncaab
  - ncaaf
  - netball
  - nfl
  - nhl
  - npb
  - olympics
  - padel
  - pool
  - rugby-league
  - rugby-union
  - sailing
  - ski-jumping
  - snooker
  - soccer
  - softball
  - speedway
  - squash
  - sumo
  - supercars
  - surfing
  - table-tennis
  - taekwondo
  - tennis
  - triathlon
  - trotting
  - ultimate
  - volleyball
  - water-polo
  - wnba
  wsEvent: bet105-v2-update
- book: bet365
  sports:
  - mlb
  - nba
  - nfl
  - nhl
  - soccer
  wsEvent: bet365-v2-update
- book: betonline
  sports:
  - mlb
  - nba
  - ncaaf
  - nfl
  - nhl
  - soccer
  - tennis
  wsEvent: betonline-realtime
- book: betrivers
  sports:
  - aussie-rules
  - boxing
  - cricket
  - cycling
  - darts
  - formula1
  - golf
  - handball
  - mlb
  - mma
  - motorsport
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - rugby-league
  - rugby-union
  - snooker
  - soccer
  - specials
  - surfing
  - table-tennis
  - tennis
  - wnba
  wsEvent: betrivers-v2-update
- book: betus
  sports:
  - alpine-skiing
  - archery
  - athletics
  - aussie-rules
  - badminton
  - bandy
  - baseball
  - basketball
  - basketball-3x3
  - biathlon
  - bowls
  - boxing
  - cfl
  - chess
  - cricket
  - curling
  - cycling
  - darts
  - esports
  - fencing
  - field-hockey
  - floorball
  - football
  - formula1
  - futsal
  - gaelic-sports
  - golf
  - greyhounds
  - handball
  - hockey
  - horse-racing
  - hurling
  - judo
  - kabaddi
  - kbo
  - lacrosse
  - mlb
  - mma
  - motorbikes
  - motorsport
  - nascar
  - nba
  - ncaab
  - ncaaf
  - netball
  - nfl
  - nhl
  - npb
  - olympics
  - padel
  - pool
  - rugby-league
  - rugby-union
  - sailing
  - ski-jumping
  - snooker
  - soccer
  - softball
  - speedway
  - squash
  - sumo
  - supercars
  - surfing
  - table-tennis
  - taekwondo
  - tennis
  - triathlon
  - trotting
  - ultimate
  - volleyball
  - water-polo
  - wnba
  wsEvent: betus-v2-update
- book: bookmaker
  sports:
  - alternative-sports
  - aussie-rules
  - baseball
  - basketball
  - boxing
  - cricket
  - darts
  - e-gaming
  - entertainment
  - esports
  - football
  - futsal
  - futures
  - golf
  - ice-hockey
  - mma
  - motorsport
  - politics
  - rugby
  - soccer
  - surfing
  - table-tennis
  - tennis
  wsEvent: null
- book: bovada
  sports:
  - mlb
  - mma
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  wsEvent: null
- book: draftkings
  sports:
  - mlb
  - mma
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - soccer
  - wnba
  wsEvent: draftkings-v2-update
- book: fanaticsmarkets
  sports:
  - boxing
  - cs2
  - dota2
  - golf
  - lol
  - mlb
  - mma
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - soccer
  - tennis
  - valorant
  - wnba
  wsEvent: fanaticsmarkets-v2-update
- book: fanduel
  sports:
  - mlb
  - mma
  - nba
  - ncaaf
  - nfl
  - nhl
  - soccer
  - tennis
  - wnba
  wsEvent: fanduel-v2-update
- book: hardrock
  sports:
  - AMERICAN_FOOTBALL
  - AUSSIE_RULES
  - BASEBALL
  - BASKETBALL
  - BOXING
  - CRICKET
  - DARTS
  - HANDBALL
  - ICE_HOCKEY
  - MMA
  - RUGBY
  - SNOOKER
  - SOCCER
  - TABLE_TENNIS
  - TENNIS
  - VOLLEYBALL
  wsEvent: null
- book: kalshi
  sports:
  - cs2
  - dota2
  - lol
  - mlb
  - mma
  - nba
  - ncaaf
  - nfl
  - nhl
  - overwatch
  - pubg
  - rainbow6
  - rocketleague
  - soccer
  - tennis
  - valorant
  - wnba
  wsEvent: kalshi-v2-update
- book: lowvig
  sports:
  - boxing
  - cricket
  - darts
  - golf
  - mlb
  - mma
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - soccer
  - table-tennis
  - tennis
  - wnba
  wsEvent: lowvig-v2-update
- book: mybookie
  sports:
  - mlb
  - nba
  wsEvent: mybookie-v2-update
- book: novig
  sports:
  - mlb
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  wsEvent: null
- book: pinnacle
  sports:
  - esports
  - handball
  - mlb
  - mma
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - soccer
  - tennis
  - wnba
  wsEvent: pinnacle-v2-update
- book: polymarket
  sports:
  - cs2
  - dota2
  - lol
  - mlb
  - mma
  - nba
  - ncaaf
  - nfl
  - nhl
  - overwatch
  - pubg
  - rainbow6
  - rocketleague
  - soccer
  - tennis
  - valorant
  - wnba
  wsEvent: polymarket-v2-update
- book: propbuilder
  sports:
  - mlb
  - nba
  - ncaaf
  - nfl
  - nhl
  - wnba
  wsEvent: propbuilder-v2-update
- book: stake
  sports:
  - baseball
  - basketball
  - cs2
  - ice-hockey
  - mma
  - soccer
  - table-tennis
  - tennis
  wsEvent: null
- book: thescore
  sports:
  - mlb
  - nba
  - ncaaf
  - nfl
  - nhl
  - soccer
  - tennis
  wsEvent: null
- book: thunderpick
  sports:
  - american-football
  - baseball
  - basketball
  - cs2
  - dota2
  - lol
  - soccer
  - tennis
  - valorant
  wsEvent: thunderpick-v2-update
- book: tippmixpro
  sports:
  - boxing
  - cs2
  - dota2
  - lol
  - mlb
  - mma
  - nba
  - ncaab
  - ncaaf
  - nfl
  - nhl
  - soccer
  - tennis
  - valorant
  wsEvent: tippmixpro-v2-update
- book: underdog
  sports:
  - cs2
  - kbo
  - lol
  - mlb
  - mma
  - nba
  - ncaaf
  - nfl
  - nhl
  - npb
  - pga
  - soccer
  - tennis
  - valorant
  - wnba
  wsEvent: null
- book: versus
  sports:
  - afl
  - badminton
  - basketball
  - boxing
  - cricket
  - darts
  - esports
  - golf
  - handball
  - mlb
  - mma
  - nfl
  - nhl
  - padel
  - soccer
  - table-tennis
  - tennis
  - volleyball
  wsEvent: versus-v2-update