Leagues

GET https://hockey.highlightly.net/leagues Hockey API
GET https://sports.highlightly.net/hockey/leagues All Sports API

Retrieve a list of leagues.

Refresh interval
Multiple times a day
Pagination
limit and offset, 100 per page

Use the leagueName query parameter to check whether a specific league is covered, or to fetch just its record. Narrow further with countryCode or countryName, both of which come from countries.

limit sets how many leagues come back. When the number of matching leagues exceeds it, request the next page by increasing offset. See Pagination and limits.

Seasons

Each league carries a seasons list. That list is what makes this endpoint the entry point for most queries, since standings requires a leagueId and a season together, and this is where you learn which seasons a league has.

Each entry in seasons is an object whose season is a year, such as 2023. The same value filters matches and highlights.

Junior leagues are leagues here too, each with its own id and its own seasons list.

Parameters

Parameter Type Description
limitoptional numberdefault 100 No description in the spec.e.g. 100
offsetoptional numberdefault 0 No description in the spec.e.g. 0
seasonoptional number No description in the spec.e.g. 2023
leagueNameoptional string No description in the spec.e.g. DEL
countryCodeoptional string Country code specified by the ISO 3166 standard.e.g. DE
countryNameoptional string No description in the spec.e.g. Germany

Request

curl --request GET \
  --url 'https://hockey.highlightly.net/leagues?season=2023&leagueName=DEL' \
  --header 'x-rapidapi-key: YOUR_API_KEY'
const params = new URLSearchParams({
  season: '2023',
  leagueName: 'DEL'
})
const response = await fetch(`https://hockey.highlightly.net/leagues?${params}`, {
  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/leagues',
    params={
        'season': '2023',
        'leagueName': 'DEL',
    },
    headers={
        'x-rapidapi-key': os.environ['HIGHLIGHTLY_API_KEY'],
    },
    timeout=10,
)

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

Response

dataHockeyLeagueResponse[]required9 fields
idnumberrequired
logostring
namestringrequired
countryHockeyCountryResponserequired3 fields
codestringrequiredCountry code specified by the ISO 3166 standard.
namestringrequired
logostringrequired
seasonsHockeySeasonResponse[]required1 field
seasonnumberrequired
paginationPaginationResponserequired3 fields
totalCountnumberrequiredAvailable number of items, relevant to the provided query.
offsetnumberrequired
limitnumberrequired
planPlanResponserequired2 fields
tierstringrequiredYour current API subscription tier.
messagestringrequiredExplanation message regarding your current tier.

Example response

200 application/json
{
  "data": [
    {
      "id": 16953,
      "logo": "https://example.com/logos/league/16953.png",
      "name": "DEL",
      "country": {
        "code": "DE",
        "name": "Germany",
        "logo": "https://example.com/logos/country/DE.png"
      },
      "seasons": [
        {
          "season": 2023
        }
      ]
    }
  ],
  "pagination": {
    "totalCount": 490,
    "offset": 20,
    "limit": 100
  },
  "plan": {
    "tier": "BASIC",
    "message": "Some results might be hidden with FREE tier. Check your API coverage for more information: https://rapidapi.com/highlightly-api-highlightly-api-default/api/sport-highlights-api/details"
  }
}

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.