AltSportsData

List Leagues

Retrieve a paginated list of sports leagues

List Leagues

Retrieve a paginated list of sports leagues with optional filtering.

Endpoint

GET /v1/leagues

Authentication

Required. Use Bearer token or X-API-Key header.

Query Parameters

ParameterTypeRequiredDescription
sport_typestringNoFilter by sport type
archetypestringNoFilter by league archetype
tierstringNoFilter by tier classification
countrystringNoFilter by country code (ISO 3166-1)
limitintegerNoNumber of results (1-100, default: 100)
offsetintegerNoPagination offset (default: 0)

Example Request

import { AltSportsData } from 'altsportsdata';

const client = new AltSportsData({ apiKey: 'YOUR_API_KEY' });

const leagues = await client.leagues.list({
  sportType: 'Soccer',
  tier: 'elite',
  country: 'GB',
  limit: 10
});

console.log(leagues.data);
from altsportsdata import AltSportsData

client = AltSportsData(api_key='YOUR_API_KEY')

leagues = client.leagues.list(
    sport_type='Soccer',
    tier='elite',
    country='GB',
    limit=10
)

print(leagues.data)
curl -X GET "https://api.altsportsdata.com/v1/leagues?sport_type=Soccer&tier=elite&limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"
const url = new URL("https://api.altsportsdata.com/v1/leagues");
url.searchParams.append("sport_type", "Soccer");
url.searchParams.append("tier", "elite");
url.searchParams.append("limit", "10");

const response = await fetch(url, {
  headers: {
    "Authorization": "Bearer YOUR_API_KEY"
  }
});

const leagues = await response.json();
console.log(leagues.data);
require 'net/http'
require 'json'

uri = URI('https://api.altsportsdata.com/v1/leagues')
uri.query = URI.encode_www_form({
  sport_type: 'soccer',
  limit: 10
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer YOUR_API_KEY'

response = http.request(request)
data = JSON.parse(response.body)
<?php
$url = 'https://api.altsportsdata.com/v1/leagues?' . 
       http_build_query([
           'sport_type' => 'soccer',
           'limit' => 10
       ]);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer YOUR_API_KEY'
]);

$response = curl_exec($ch);
$data = json_decode($response, true);
curl_close($ch);
?>
using System;
using System.Net.Http;
using System.Threading.Tasks;

var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY");

var url = "https://api.altsportsdata.com/v1/leagues?sport_type=soccer&limit=10";
var response = await client.GetStringAsync(url);
Console.WriteLine(response);
package main

import (
    "fmt"
    "io"
    "net/http"
)

func main() {
    client := &http.Client{}
    url := "https://api.altsportsdata.com/v1/leagues?sport_type=soccer&limit=10"
    
    req, _ := http.NewRequest("GET", url, nil)
    req.Header.Set("Authorization", "Bearer YOUR_API_KEY")

    resp, _ := client.Do(req)
    defer resp.Body.Close()
    
    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class ListLeagues {
    public static void main(String[] args) throws Exception {
        String urlString = "https://api.altsportsdata.com/v1/leagues?sport_type=soccer&limit=10";
        URL url = new URL(urlString);
        
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setRequestMethod("GET");
        conn.setRequestProperty("Authorization", "Bearer YOUR_API_KEY");

        BufferedReader in = new BufferedReader(
            new InputStreamReader(conn.getInputStream())
        );
        
        String line;
        StringBuilder response = new StringBuilder();
        while ((line = in.readLine()) != null) {
            response.append(line);
        }
        in.close();
        
        System.out.println(response.toString());
    }
}

Example Response

{
  "data": [
    {
      "id": "league_001",
      "name": "Premier League",
      "sport": "soccer",
      "country": "GB",
      "tier": "elite",
      "archetype": "professional",
      "founded": 1992,
      "active": true
    },
    {
      "id": "league_002",
      "name": "La Liga",
      "sport": "soccer",
      "country": "ES",
      "tier": "elite",
      "archetype": "professional",
      "founded": 1929,
      "active": true
    }
  ],
  "meta": {
    "total": 156,
    "page": 1,
    "limit": 10,
    "has_more": true,
    "api_version": "v1",
    "timestamp": "2026-03-07T00:00:00Z"
  }
}

Response Fields

FieldTypeDescription
idstringUnique league identifier
namestringLeague name
sportstringSport type
countrystringCountry code (ISO 3166-1)
tierstringTier classification (elite, professional, amateur)
archetypestringLeague archetype
foundedintegerYear founded
activebooleanWhether league is currently active

On this page