AltSportsData

League Stats

Get aggregated statistics across all leagues

League Stats

Retrieve aggregated statistics and summary data across all leagues in the database.

Endpoint

GET /v1/leagues/stats/summary

Authentication

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

Query Parameters

ParameterTypeRequiredDescription
sportstringNoFilter stats by sport type
tierstringNoFilter stats by tier (T1, T2, T3, T4)
regionstringNoFilter stats by geographic region

Example Request

import { AltSportsData } from 'altsportsdata';

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

const stats = await client.leagues.stats({
  sport: 'Soccer',
  tier: 'T1'
});

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

client = AltSportsData(api_key='YOUR_API_KEY')

stats = client.leagues.stats(
    sport='Soccer',
    tier='T1'
)

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

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

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

uri = URI('https://api.altsportsdata.com/v1/leagues/stats/summary')
uri.query = URI.encode_www_form({
  sport: 'Soccer',
  tier: 'T1'
})

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/stats/summary?' . 
       http_build_query([
           'sport' => 'Soccer',
           'tier' => 'T1'
       ]);

$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/stats/summary?sport=Soccer&tier=T1";
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/stats/summary?sport=Soccer&tier=T1"
    
    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 LeagueStats {
    public static void main(String[] args) throws Exception {
        String urlString = "https://api.altsportsdata.com/v1/leagues/stats/summary?sport=Soccer&tier=T1";
        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": {
    "total_leagues": 247,
    "active_leagues": 231,
    "sports_covered": 42,
    "countries_represented": 87,
    "tier_distribution": {
      "T1": 15,
      "T2": 58,
      "T3": 112,
      "T4": 62
    },
    "sport_breakdown": {
      "Soccer": 89,
      "Basketball": 34,
      "American Football": 12,
      "Baseball": 18,
      "Ice Hockey": 15,
      "Other": 79
    },
    "avg_teams_per_league": 24.3,
    "total_teams": 6014,
    "avg_readiness_score": 687,
    "total_events_tracked": 125483
  },
  "meta": {
    "total": 1,
    "page": 1,
    "limit": 1,
    "has_more": false,
    "api_version": "v1",
    "timestamp": "2026-03-07T06:36:00Z"
  }
}

Response Fields

FieldTypeDescription
total_leaguesintegerTotal number of leagues in database
active_leaguesintegerNumber of currently active leagues
sports_coveredintegerNumber of unique sports represented
countries_representedintegerNumber of countries with leagues
tier_distributionobjectCount of leagues by tier (T1-T4)
sport_breakdownobjectCount of leagues by sport type
avg_teams_per_leaguenumberAverage number of teams per league
total_teamsintegerTotal teams across all leagues
avg_readiness_scoreintegerAverage readiness score (0-1000)
total_events_trackedintegerTotal events in the database

On this page