StatsHub Docs
APIAPI v2V2 endpoint referenceValue bets

/value-bets

Pages the same ranked board as /api/value-bets-v2.

GET
/value-bets

Pages the same ranked board as /api/value-bets-v2.

It used to rank and page in SQL on an estimate of the displayed edge. The estimate and the card's edge disagreed often enough that a card worth 86% could open page two while page one ended at 85%, so the ranking now comes from valueBetV2Board, which sorts on the edge the card shows.

Authorization

X-Internal-Key<token>

Shared service key. Operations using it also require X-Telegram-User-Id.

In: header

X-Telegram-User-Id<token>

Telegram user represented by an authenticated internal service.

In: header

Query Parameters

page?integer
Formatint64
pageSize?string
date?string
direction?string
eventIds?string
group?string
inPredictedLineup?string
includePredictions?string
kickoffWindow?string
line?string
marketType?string
maxEV?string
maxLastGameWithTeam?string
maxOdds?string
minEV?string
minOdds?string
minSources?integer
Formatint64
mode?string
requireGroups?string
requireHorizons?string
search?string
showAll?string
showLive?string
source?string
specificDate?string
startedLastGame?string
superSub?string
uniqueTournamentIds?string

Header Parameters

X-Internal-Key?string
X-Telegram-User-Id?string

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X GET "https://example.com/value-bets"
{  "data": [    {      "activityInfo": {        "inPredictedLineup": true,        "lastGameWithTeam": 0,        "startedLastGame": true      },      "alertsSupported": true,      "avgOverEdge": 0,      "avgUnderEdge": 0,      "awayTeamId": 0,      "awayTeamName": "string",      "bestOverOdds": 0,      "bestUnderOdds": 0,      "bookmakers": [        {          "overOdds": 0,          "source": "string",          "underOdds": 0        }      ],      "groupKey": "string",      "hitRates": {        "l10": 0,        "l20": 0,        "l30": 0      },      "homeTeamId": 0,      "homeTeamName": "string",      "horizonFallback": true,      "isPredictionOnly": true,      "jerseyNumber": 0,      "last30Stats": [        0.1      ],      "line": 0,      "marketType": "string",      "matchDate": 0,      "matchId": 0,      "matchInternalId": 0,      "matchOdds": {        "away": 0,        "draw": 0,        "home": 0      },      "matchSlug": "string",      "models": [        {          "extraLongFairUnderOdds": 0,          "longFairUnderOdds": 0,          "mediumFairUnderOdds": 0,          "shortFairUnderOdds": 0        }      ],      "multiClub": true,      "playerId": 0,      "playerName": "string",      "position": "string",      "recentGames": [        {          "hasSuperSub": true,          "isHome": true,          "minutesPlayed": 0,          "opponentId": 0,          "opponentName": "string",          "position": "string",          "stat": 0.1,          "uniqueTournamentId": 0        }      ],      "sampleSize": 0,      "scannerEdge": 0,      "scannerFairOdds": 0,      "scannerModelName": "string",      "teamId": 0,      "teamName": "string",      "uniqueTournamentId": 0,      "windowHorizon": "string"    }  ],  "pagination": {    "currentPage": 0,    "hasNextPage": true,    "hasPreviousPage": true,    "pageSize": 0,    "totalCount": 0,    "totalPages": 0  }}