UefaSDK 0.0.3

dotnet add package UefaSDK --version 0.0.3
                    
NuGet\Install-Package UefaSDK -Version 0.0.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="UefaSDK" Version="0.0.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="UefaSDK" Version="0.0.3" />
                    
Directory.Packages.props
<PackageReference Include="UefaSDK" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add UefaSDK --version 0.0.3
                    
#r "nuget: UefaSDK, 0.0.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package UefaSDK@0.0.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=UefaSDK&version=0.0.3
                    
Install as a Cake Addin
#tool nuget:?package=UefaSDK&version=0.0.3
                    
Install as a Cake Tool

About

UefaSDK provides unofficial high level abstraction to get scores for UEFA club competitions and associated federations domestic leagues.

Club competitions included:

  • UEFA Champions League,
  • UEFA Europa League,
  • UEFA Conference League,
  • UEFA Youth League,
  • UEFA Women's Champions League.

Domestic leagues included:

  • Albanian Super League,
  • Andorran Premier Division,
  • Armenian Premier League,
  • Austrian Bundesliga,
  • Azerbaijani Premier League,
  • Belgian First League,
  • Bosnian-Herzegovinian Premier League,
  • Bulgarian A League,
  • Croatian First League,
  • Cypriot First Division,
  • Czech First League,
  • Danish Super League,
  • Dutch First Division,
  • Estonian First League,
  • Faroese Premier Division,
  • Finnish Premier League,
  • French Ligue 1,
  • Georgian Premier League,
  • German Bundesliga,
  • Gibraltarian Premier League,
  • Greek Super League,
  • Hungarian First League,
  • Icelandic Premier League,
  • Israeli Premier League,
  • Italian Serie A,
  • Kazakh Premier League,
  • Kosovan Superliga,
  • Latvian First Division,
  • Liechtensteiner Cup,
  • Lithuanian First Division,
  • Luxembourger First Division,
  • Maltese Premier League,
  • Moldovan First Division,
  • Montenegrin First League,
  • Macedonian First League,
  • Northern Irish Premiership,
  • Norwegian Premier Division,
  • Polish First Division,
  • Portuguese First Division,
  • Irish Premier Division,
  • Romanian First Division,
  • San Marinese Championship,
  • Scottish Premiership,
  • Serbian Super League,
  • Slovak First League,
  • Slovene First League,
  • Spanish Liga,
  • Swedish First Division,
  • Swiss Super League,
  • Turkish Super League,
  • Ukrainian Premier League,
  • Welsh Premier League.

How to Use

Club competitions (UEFA Champions League)
using UefaSDK;
using UefaSDK.Clubs;

public class Program
{
    public static Task Main(string[] args)
    {
        return new Program().Run(args);
    }

    async Task Run(string[] args)
    {
        // cluns competition
        Console.WriteLine("=== CLUBS COMPETITION ===");
        await RunClubs(args);
        
        // read key
        Console.WriteLine("Ready for input...");
        Console.ReadLine();
    }

    private async Task RunClubs(string[] args)
    {
        // create competition
        Competition competition = new ClubsCompetition(CompetitionId.UefaEuropaLeague, CompetitionSeasonYear.Y20242025);
            
        // print
        Console.WriteLine($"Competition : {competition.Name}");
            
        // today games
        var todayGames = await competition.Games();
        
        // specific date games
        // var todayGames = await competition.Games(new DateTime(2025, 2, 11));
            
        // print
        Console.WriteLine($"Number of today games : {todayGames.Count}");

        foreach (var game in todayGames)
        {
            Console.WriteLine($"=== {DateTime.Parse(game.DateTime).ToString("dddd, dd MMMM yyyy hh:mm tt")} ===");
            Console.WriteLine($"{game.Home.Name} - {game.Away.Name} {game.Score.Home} : {game.Score.Away} {game.Phase} - {game.Venue}, {game.Location} - Att: {game.Attendance}");
        }
        
        // game days
        var gameDays = await competition.GameDays();
        
        // print
        Console.WriteLine($"All game days for {competition.Name}");

        var days = string.Join(", ", gameDays);
        Console.WriteLine(days);
    }
}
Domestic leagues (Polish First Division)
using UefaSDK;
using UefaSDK.Domestic;

namespace UefaSDKApplication;

public class Program
{
    public static Task Main(string[] args)
    {
        return new Program().Run(args);
    }

    async Task Run(string[] args)
    {
        // domestic league
        Console.WriteLine("=== DOMESTIC LEAGUE ===");
        await RunDomestic(args);
        
        // read key
        Console.WriteLine("Ready for input...");
        Console.ReadLine();
    }

    private async Task RunDomestic(string[] args)
    {
        // create competition
        Competition competition = new DomesticLeague(CompetitionId.PolishFirstDivision, CompetitionSeasonYear.Y20242025);
            
        // print
        Console.WriteLine($"Competition : {competition.Name}");
            
        // today games
        var todayGames = await competition.Games();
        
        // specific date games
        // var todayGames = await competition.Games(new DateTime(2025, 2,9));
            
        // print
        Console.WriteLine($"Number of today games : {todayGames.Count}");

        foreach (var game in todayGames)
        {
            Console.WriteLine($"=== {DateTime.Parse(game.DateTime).ToString("dddd, dd MMMM yyyy hh:mm tt")} ===");
            Console.WriteLine($"{game.Home.Name} - {game.Away.Name} {game.Score.Home} : {game.Score.Away} {game.Phase} - {game.Venue}, {game.Location} - Att: {game.Attendance}");
        }
        
        // game days
        var gameDays = await competition.GameDays();
        
        // print
        Console.WriteLine($"All game days for {competition.Name}");

        var days = string.Join(", ", gameDays);
        Console.WriteLine(days);
    }
}

Main Types

The main types provided by this library are:

  • UefaSDK.Clubs
    • ClubsCompetition - implements UEFA club competitions.
  • UefaSDK.Domestic
    • DomesticLeague - implements UEFA domestic leagues.
  • UefaSDK
    • CompetitionId - defines UEFA API competition ids required for both clubs and domestic leagues.
    • CompetitionSeasonYear - defines season for the competition.
      • NOTE: Usually football season is played through the two years eg. 2024/2025. However Georgia, Iceland, Kazakhstan, Latvia, Lithuania, Norway, Ireland domestic leagues play their season within a single calendar year. A single year id shall be used for that countries.
    • Game - implements game.
    • Score - implements game score.
    • Team - implements team.

License

MIT

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.0.3 197 7/9/2025
0.0.2 262 3/3/2025
0.0.1 167 2/12/2025

0.0.3 : Changes:
- Add 2025/2026 season identifier.
0.0.2 : Changes:
- Add Id property to Game class. Id represents game id as of UEFA API.
- Fix score attribute handling in UEFA API response.
0.0.1 : Initial version.