List Leagues
curl --request GET \
--url https://api.polynode.dev/v2/sports/leagues \
--header 'x-api-key: <api-key>'import requests
url = "https://api.polynode.dev/v2/sports/leagues"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.polynode.dev/v2/sports/leagues', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.polynode.dev/v2/sports/leagues",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.polynode.dev/v2/sports/leagues"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.polynode.dev/v2/sports/leagues")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.polynode.dev/v2/sports/leagues")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"count": 170,
"leagues": [
{
"id": 34,
"sport": "nba",
"image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/super+cool+basketball+in+red+and+blue+wow.png",
"resolution": "https://www.nba.com/",
"ordering": "away",
"tags": "1,745,100639",
"series": "10345"
},
{
"id": 39,
"sport": "lol",
"image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/league-of-legends.png",
"resolution": "https://liquipedia.net/leagueoflegends/Main_Page",
"ordering": "home",
"tags": "1,64,102366,100639",
"series": "10311"
}
]
}
List Leagues
All available sports and esports leagues.
GET
/
v2
/
sports
/
leagues
List Leagues
curl --request GET \
--url https://api.polynode.dev/v2/sports/leagues \
--header 'x-api-key: <api-key>'import requests
url = "https://api.polynode.dev/v2/sports/leagues"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.polynode.dev/v2/sports/leagues', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.polynode.dev/v2/sports/leagues",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.polynode.dev/v2/sports/leagues"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.polynode.dev/v2/sports/leagues")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.polynode.dev/v2/sports/leagues")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"count": 170,
"leagues": [
{
"id": 34,
"sport": "nba",
"image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/super+cool+basketball+in+red+and+blue+wow.png",
"resolution": "https://www.nba.com/",
"ordering": "away",
"tags": "1,745,100639",
"series": "10345"
},
{
"id": 39,
"sport": "lol",
"image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/league-of-legends.png",
"resolution": "https://liquipedia.net/leagueoflegends/Main_Page",
"ordering": "home",
"tags": "1,64,102366,100639",
"series": "10311"
}
]
}
Returns every league available for querying. The
sport field is the code you use in all other sports endpoints.
This is your starting point. Call this first, then use the sport code to get teams, games, and scores.
string
required
Your API key.
{
"count": 170,
"leagues": [
{
"id": 34,
"sport": "nba",
"image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/super+cool+basketball+in+red+and+blue+wow.png",
"resolution": "https://www.nba.com/",
"ordering": "away",
"tags": "1,745,100639",
"series": "10345"
},
{
"id": 39,
"sport": "lol",
"image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/league-of-legends.png",
"resolution": "https://liquipedia.net/leagueoflegends/Main_Page",
"ordering": "home",
"tags": "1,64,102366,100639",
"series": "10311"
}
]
}
Common league codes
| Code | League | Type |
|---|---|---|
nba | NBA | Sports |
nhl | NHL | Sports |
mlb | MLB | Sports |
nfl | NFL | Sports |
epl | English Premier League | Sports |
mls | MLS | Sports |
ufc | UFC | Sports |
atp | ATP Tennis | Sports |
wta | WTA Tennis | Sports |
ipl | Indian Premier League (Cricket) | Sports |
lol | League of Legends | Esports |
cs2 | Counter-Strike 2 | Esports |
val | Valorant | Esports |
dota2 | Dota 2 | Esports |
170 leagues total, covering 80+ traditional sports leagues and 90+ esports leagues globally. Use the
sport field as the code for /leagues/{code}/games and /leagues/{code}/teams.Authorizations
Response
200
League list

