Get match by ID

GET https://basketball.highlightly.net/matches/{id} Basketball API
GET https://sports.highlightly.net/basketball/matches/{id} All Sports API

Retrieve detailed information for one match.

Detail
Every match field on the list route, plus five blocks

The match id comes from matches.

The match carries every field a match has on the list route, and adds venue, forecast, predictions, statistics and news. The response is an array holding the match, with no pagination or plan object around it.

Venue and forecast

venue names the city, the arena name, the country and its capacity. forecast carries a status such as cloudy and a temperature already formatted with its unit, as in 11.97°C.

Predictions

predictions splits into prematch and live, and each is a list rather than a single entry.

Every prediction carries its type, the modelType that produced it, a generatedAt timestamp, a readable description and the probabilities behind it. probabilities holds home and away percentage strings, plus draw when present.

Team statistics on the match

statistics is a list of entries. Each holds the team and a nested statistics list of metrics, and each metric is a displayName such as Field Goals with its value.

For team statistics from a dedicated route, use match statistics.

Parameters

Parameter Type Description
idrequired numberpath Requested match id.

Request

curl --request GET \
  --url 'https://basketball.highlightly.net/matches/{id}' \
  --header 'x-rapidapi-key: YOUR_API_KEY'
const response = await fetch('https://basketball.highlightly.net/matches/{id}', {
  headers: {
    'x-rapidapi-key': process.env.HIGHLIGHTLY_API_KEY
  }
})

if (!response.ok) {
  throw new Error(`Highlightly responded ${response.status}`)
}

const data = await response.json()
import os
import requests

response = requests.get(
    'https://basketball.highlightly.net/matches/{id}',
    headers={
        'x-rapidapi-key': os.environ['HIGHLIGHTLY_API_KEY'],
    },
    timeout=10,
)

response.raise_for_status()
data = response.json()

Response

idnumberrequired
weekstring
stagestringrequired
datestringrequired
countryBasketballCountryResponserequired3 fields
codestringrequiredCountry code specified by the ISO 3166 standard.
namestringrequired
logostringrequired
awayTeamBasketballTeamResponserequired3 fields
idnumberrequired
logostring
namestringrequired
homeTeamBasketballTeamResponserequired3 fields
idnumberrequired
logostring
namestringrequired
leagueBasketballMatchLeagueResponserequired4 fields
idnumberrequired
seasonnumberrequired
namestringrequired
logostring
stateBasketballMatchStateResponserequired9 fields
descriptionstringrequiredState of the match.Not startedFirst quarterSecond quarterThird quarterFourth quarterOver timeBreak timeHalf timeFinishedFinished after over timePostponedCancelledSuspendedAwardedAbandonedUnknownTo be announced
clocknumberCurrent minute of the current period.
scoreBasketballMatchScoreResponserequired6 fields
currentstringHome - Away score for the match. Includes overtime as well.
q1stringHome - Away score in 1st quarter.
q2stringHome - Away score in 2nd quarter.
q3stringHome - Away score in 3rd quarter.
q4stringHome - Away score in 4th quarter.
overTimestringHome - Away score in overtime.
venueDetailedMatchVenueResponse4 fields
citystring
namestring
countrystring
capacitystring
forecastDetailedMatchForecastResponse2 fields
statusstring
temperaturestring
predictionsPredictionResponse18 fields
prematchPrediction[]required8 fields
typestringrequired
modelTypestringrequired
generatedAtstringrequired
descriptionstringrequired
probabilitiesPredictionProbabilitiesrequired3 fields
homestringrequired
drawstring
awaystringrequired
livePrediction[]required8 fields
typestringrequired
modelTypestringrequired
generatedAtstringrequired
descriptionstringrequired
probabilitiesPredictionProbabilitiesrequired3 fields
homestringrequired
drawstring
awaystringrequired
statisticsBasketballMatchStatisticsResponse[]required7 fields
teamBasketballTeamResponserequired3 fields
idnumberrequired
logostring
namestringrequired
statisticsBasketballMatchStatisticsResponseItem[]required2 fields
valuenumberrequired
displayNamestringrequired
newsNews[]4 fields
urlstringrequired
imagestringrequired
titlestringrequired
datePublishedstringrequired

Example response

200 application/json
[
  {
    "id": 318831338,
    "week": "50",
    "stage": "Final",
    "date": "2024-03-31T11:35:00.000Z",
    "country": {
      "code": "AU",
      "name": "Australia",
      "logo": "https://example.com/logos/country/AU.png"
    },
    "awayTeam": {
      "id": 7592,
      "logo": "https://example.com/logos/team/7592.png",
      "name": "Adelaide"
    },
    "homeTeam": {
      "id": 7592,
      "logo": "https://example.com/logos/team/7592.png",
      "name": "Adelaide"
    },
    "league": {
      "id": 1635,
      "season": 2023,
      "name": "NBL",
      "logo": "https://example.com/logos/league/1635.png"
    },
    "state": {
      "description": "Finished",
      "clock": 9,
      "score": {
        "current": "105 - 104",
        "q1": "22 - 15",
        "q2": "17 - 33",
        "q3": "11 - 27",
        "q4": "33 - 14",
        "overTime": "22 - 15"
      }
    },
    "venue": {
      "city": "Swansea",
      "name": "Liberty Stadium",
      "country": "Wales",
      "capacity": "20827"
    },
    "forecast": {
      "status": "cloudy",
      "temperature": "11.97°C"
    },
    "predictions": {
      "prematch": [
        {
          "type": "prematch",
          "modelType": "three-way",
          "generatedAt": "2025-03-12T19:00:20.000Z",
          "description": "Team A is most likely to win the game against Team B.`",
          "probabilities": {
            "home": "30.22%",
            "draw": "0.00%",
            "away": "69.78%"
          }
        }
      ],
      "live": [
        {
          "type": "prematch",
          "modelType": "three-way",
          "generatedAt": "2025-03-12T19:00:20.000Z",
          "description": "Team A is most likely to win the game against Team B.`",
          "probabilities": {
            "home": "30.22%",
            "draw": "0.00%",
            "away": "69.78%"
          }
        }
      ]
    },
    "statistics": [
      {
        "team": {
          "id": 7592,
          "logo": "https://example.com/logos/team/7592.png",
          "name": "Adelaide"
        },
        "statistics": [
          {
            "value": 30,
            "displayName": "Field Goals"
          }
        ]
      }
    ],
    "news": [
      {
        "url": "https://football-italia.net/watch-milan-reijnders-scores-16th-goal-2024-25/?utm_source=365Scores&utm_medium=link&utm_campaign=Contact%2bus%2bat%2b365scores%2bfor%2bmore%2btraffic",
        "image": "https://icdn.football-italia.net/wp-content/uploads/2025/03/netherlands-v-spain-uefa-nations.jpg",
        "title": "Celebrating Fernando Torres: A Spanish Football Icon",
        "datePublished": "2025-03-20T19:29:02Z"
      }
    ]
  }
]

Values are the examples declared in the OpenAPI spec, not a captured live response.

Errors

Status Description
400 Bad request descriptive error.
500 Internal server error.