Get highlight by ID

GET https://hockey.highlightly.net/highlights/{id} Hockey API
GET https://sports.highlightly.net/hockey/highlights/{id} All Sports API

Retrieve one highlight by its id. The response is an array holding that highlight.

Use this to check whether a highlight you have already stored still exists, or whether its information has been updated since you fetched it. Clips are hosted on third party platforms and can be removed or edited after aggregation, so a highlight you cached last week may no longer resolve.

The full match the clip belongs to comes back with it, including the period by period score, so a stored highlight can be re-rendered in context without a second request.

Parameters

Parameter Type Description
idrequired numberpath Requested highlight id.

Request

curl --request GET \
  --url 'https://hockey.highlightly.net/highlights/{id}' \
  --header 'x-rapidapi-key: YOUR_API_KEY'
const response = await fetch('https://hockey.highlightly.net/highlights/{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://hockey.highlightly.net/highlights/{id}',
    headers={
        'x-rapidapi-key': os.environ['HIGHLIGHTLY_API_KEY'],
    },
    timeout=10,
)

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

Response

idnumberrequired
typestringrequired
imgUrlstringPreview picture of the highlight.
titlestringrequired
descriptionstring
urlstringrequiredUrl location of the video highlight.
embedUrlstringUrl of embeddable video highlight.
matchHockeyMatchResponserequired29 fields
idnumberrequired
weekstring
datestringrequired
countryHockeyCountryResponserequired3 fields
codestringrequiredCountry code specified by the ISO 3166 standard.
namestringrequired
logostringrequired
awayTeamHockeyTeamResponserequired3 fields
idnumberrequired
logostring
namestringrequired
homeTeamHockeyTeamResponserequired3 fields
idnumberrequired
logostring
namestringrequired
leagueHockeyMatchLeagueResponserequired4 fields
idnumberrequired
seasonnumberrequired
namestringrequired
logostring
stateHockeyMatchStateResponserequired8 fields
descriptionstringrequiredCurrent state of the game.Not started1st period2nd period3rd periodOver timePenaltiesBreak timeAwardedPostponedCancelledInterruptedAbandonedFinishedTo be announcedFinished after penaltiesFinished after over timeUnknown
scoreHockeyMatchScoreResponserequired6 fields
currentstringHome - Away score for the match.
overTimestringHome - Away score in overtime.
penaltiesstringHome - Away score in penalties.
firstPeriodstringHome - Away score in 1st period.
secondPeriodstringHome - Away score in 2nd period.
thirdPeriodstringHome - Away score in 3rd period.
channelstringChannel title of a given highlight.
sourcestringAggregation source from social media and other equivalent platforms.
categorystringAssumed highlight category

Example response

200 application/json
[
  {
    "id": 16,
    "type": "VERIFIED",
    "imgUrl": "https://example.com/images/preview/16.png",
    "title": "DEL: Frankfurt Lowen vs Kolner",
    "description": "Game recap of the match.",
    "url": "https://example.com/highlight/13efe2g4t542",
    "embedUrl": "https://example.com/embed/13efe2g4t542",
    "match": {
      "id": 291869956,
      "week": "1",
      "date": "2023-10-13T17:30:00.000Z",
      "country": {
        "code": "DE",
        "name": "Germany",
        "logo": "https://example.com/logos/country/DE.png"
      },
      "awayTeam": {
        "id": 223746,
        "logo": "https://example.com/logos/team/223746.png",
        "name": "Frankfurt Lowen"
      },
      "homeTeam": {
        "id": 223746,
        "logo": "https://example.com/logos/team/223746.png",
        "name": "Frankfurt Lowen"
      },
      "league": {
        "id": 16953,
        "season": 2023,
        "name": "DEL",
        "logo": "https://example.com/logos/league/16953.png"
      },
      "state": {
        "description": "1st period",
        "score": {
          "current": "4 - 4",
          "overTime": "6 - 4",
          "penalties": "17 - 33",
          "firstPeriod": "2 - 0",
          "secondPeriod": "2 - 1",
          "thirdPeriod": "5 - 2"
        }
      }
    },
    "channel": "Ligue 1 Uber Eats",
    "source": "youtube",
    "category": "match-highlights"
  }
]

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.