Leagues

GET https://rugby.highlightly.net/leagues Rugby API
GET https://sports.highlightly.net/rugby/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 competition is covered, or to fetch just its record. Narrow further with season, or 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 { "season": 2024 }. The same year filters this endpoint as season, and also filters matches and highlights.

Country

Each league carries a country with its code, name and logo. Six Nations U20, for example, is listed under Europe with the code EU.

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. 2024
leagueNameoptional string No description in the spec.e.g. Six Nations U20
countryCodeoptional string Country code specified by the ISO 3166 standard.e.g. EU
countryNameoptional string No description in the spec.e.g. Europe

Request

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

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

Response

dataRugbyLeagueResponse[]required9 fields
idnumberrequired
logostring
namestringrequired
countryRugbyCountryResponserequired3 fields
codestringrequiredCountry code specified by the ISO 3166 standard.
namestringrequired
logostringrequired
seasonsRugbySeasonResponse[]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": 48440,
      "logo": "https://example.com/logos/league/48440.png",
      "name": "Six Nations U20",
      "country": {
        "code": "EU",
        "name": "Europe",
        "logo": "https://example.com/logos/country/EU.png"
      },
      "seasons": [
        {
          "season": 2024
        }
      ]
    }
  ],
  "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.