Get match by ID

GET https://rugby.highlightly.net/matches/{id} Rugby API
GET https://sports.highlightly.net/rugby/matches/{id} All Sports API

Retrieve detailed information for one match.

Detail
Everything on the list route, plus five blocks

The match id comes from matches.

This route returns everything the list route does, and adds venue, referee, forecast, predictions and lineups.

Lineups

lineups splits into home and away, and each side splits again into initialLineup and substitutions. That is the whole matchday squad in one response, with the starting side separated from the bench.

Every player carries a name, a shortName and a shirtNumber. A player can also carry a countryName, a birth date, a height already formatted with its unit as in 183 cm, and a position.

Positions

Position Role
Forward Competes for possession in scrums and rucks.
Back Handles attacking and passing play.
Full Back Defends deep and returns kicks.
Prop Front row player in the scrum.

When the position is not specified or unclear, position is null or absent.

Venue, referee and forecast

venue names the city, the ground name, the country and its capacity. referee carries a name and a nationality. 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 its probabilities. probabilities always carries home and away as percentage strings, and can also carry draw.

Use generatedAt to tell how current a prediction is, and show it next to the numbers rather than presenting a probability with no time attached.

Parameters

Parameter Type Description
idrequired numberpath Requested match id.

Request

curl --request GET \
  --url 'https://rugby.highlightly.net/matches/{id}' \
  --header 'x-rapidapi-key: YOUR_API_KEY'
const response = await fetch('https://rugby.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://rugby.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
datestringrequired
countryRugbyCountryResponserequired3 fields
codestringrequiredCountry code specified by the ISO 3166 standard.
namestringrequired
logostringrequired
awayTeamRugbyTeamResponserequired3 fields
idnumberrequired
logostring
namestringrequired
homeTeamRugbyTeamResponserequired3 fields
idnumberrequired
logostring
namestringrequired
leagueRugbyMatchLeagueResponserequired4 fields
idnumberrequired
seasonnumberrequired
namestringrequired
logostring
stateRugbyMatchStateResponserequired2 fields
descriptionstringrequiredState of the match.Not startedFirst halfHalf timeSecond halfExtra timeBreak timePenaltiesSuspendedInterruptedFinishedFinished after extra timePostponedCancelledAbandonedAwardedUnknownTo be announced
scorestringHome - Away match score.
venueDetailedMatchVenueResponse4 fields
citystring
namestring
countrystring
capacitystring
refereeDetailedMatchRefereeResponse2 fields
namestring
nationalitystring
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
lineupsRugbyMatchLineupsResponse34 fields
homeRugbyMatchLineupsrequired16 fields
initialLineupRugbyMatchLineupPlayer[]required7 fields
namestringrequired
shortNamestringrequired
countryNamestring
birthstring
heightstring
positionstringFull BackBackForwardProp
shirtNumbernumberrequired
substitutionsRugbyMatchLineupPlayer[]required7 fields
namestringrequired
shortNamestringrequired
countryNamestring
birthstring
heightstring
positionstringFull BackBackForwardProp
shirtNumbernumberrequired
awayRugbyMatchLineupsrequired16 fields
initialLineupRugbyMatchLineupPlayer[]required7 fields
namestringrequired
shortNamestringrequired
countryNamestring
birthstring
heightstring
positionstringFull BackBackForwardProp
shirtNumbernumberrequired
substitutionsRugbyMatchLineupPlayer[]required7 fields
namestringrequired
shortNamestringrequired
countryNamestring
birthstring
heightstring
positionstringFull BackBackForwardProp
shirtNumbernumberrequired

Example response

200 application/json
[
  {
    "id": 36125734,
    "week": "14",
    "date": "2024-03-30T15:00:00.000Z",
    "country": {
      "code": "EU",
      "name": "Europe",
      "logo": "https://example.com/logos/country/EU.png"
    },
    "awayTeam": {
      "id": 384585,
      "logo": "https://example.com/logos/team/90990.png",
      "name": "Italy U20"
    },
    "homeTeam": {
      "id": 384585,
      "logo": "https://example.com/logos/team/90990.png",
      "name": "Italy U20"
    },
    "league": {
      "id": 48440,
      "season": 2024,
      "name": "Six Nations U20",
      "logo": "https://example.com/logos/league/48440.png"
    },
    "state": {
      "description": "Finished",
      "score": "47 - 14"
    },
    "venue": {
      "city": "Swansea",
      "name": "Liberty Stadium",
      "country": "Wales",
      "capacity": "20827"
    },
    "referee": {
      "name": "Brace, Andrew",
      "nationality": "Ireland"
    },
    "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%"
          }
        }
      ]
    },
    "lineups": {
      "home": {
        "initialLineup": [
          {
            "name": "Andrew Porter",
            "shortName": "A. Porter",
            "countryName": "Ireland",
            "birth": "1996-01-16T00:00:00.000Z",
            "height": "183 cm",
            "position": "Forward",
            "shirtNumber": 1
          }
        ],
        "substitutions": [
          {
            "name": "Andrew Porter",
            "shortName": "A. Porter",
            "countryName": "Ireland",
            "birth": "1996-01-16T00:00:00.000Z",
            "height": "183 cm",
            "position": "Forward",
            "shirtNumber": 1
          }
        ]
      },
      "away": {
        "initialLineup": [
          {
            "name": "Andrew Porter",
            "shortName": "A. Porter",
            "countryName": "Ireland",
            "birth": "1996-01-16T00:00:00.000Z",
            "height": "183 cm",
            "position": "Forward",
            "shirtNumber": 1
          }
        ],
        "substitutions": [
          {
            "name": "Andrew Porter",
            "shortName": "A. Porter",
            "countryName": "Ireland",
            "birth": "1996-01-16T00:00:00.000Z",
            "height": "183 cm",
            "position": "Forward",
            "shirtNumber": 1
          }
        ]
      }
    }
  }
]

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.