Skip to content

League Service

The League service provides comprehensive access to league management, rosters, seasons, standings, and sessions.

const leagueService = iracing.league;

Get detailed information about a league.

Returns: Promise<LeagueGetResponse>

Parameters:

  • leagueId: number (required) - The league ID
  • includeLicenses?: boolean - Include license information for members

Description: Returns detailed information about a specific league.


Search the league directory.

Returns: Promise<LeagueDirectoryResponse>

Parameters:

  • search?: string - Search term for league name
  • tag?: string - Filter by tag
  • restrictToMember?: boolean - Only leagues you belong to
  • restrictToRecruiting?: boolean - Only leagues currently recruiting
  • restrictToFriends?: boolean - Only leagues with friends
  • restrictToWatched?: boolean - Only watched leagues
  • minimumRosterCount?: number - Minimum number of members
  • maximumRosterCount?: number - Maximum number of members
  • lowerbound?: number - Lower bound for pagination
  • upperbound?: number - Upper bound for pagination
  • sort?: string - Sort field
  • order?: string - Sort order

Description: Searches the league directory with various filtering and sorting options.


Get league membership information.

Returns: Promise<LeagueMembershipResponse>

Parameters:

  • custId?: number - Customer ID (defaults to authenticated user)
  • includeLeague?: boolean - Include full league details

Description: Returns the leagues that a member belongs to.


Get a league’s roster.

Returns: Promise<LeagueRosterResponse>

Parameters:

  • leagueId: number (required) - The league ID
  • includeLicenses?: boolean - Include license information

Description: Returns the full member roster for a league.


Get a league’s seasons.

Returns: Promise<LeagueSeasonsResponse>

Parameters:

  • leagueId: number (required) - The league ID
  • retired?: boolean - Include retired seasons

Description: Returns all seasons for a league, optionally including retired ones.


Get standings for a league season.

Returns: Promise<LeagueSeasonStandingsResponse>

Parameters:

  • leagueId: number (required) - The league ID
  • seasonId: number (required) - The season ID
  • carClassId?: number - Filter by car class
  • carId?: number - Filter by car

Description: Returns the points standings for a specific league season.


Get sessions for a league season.

Returns: Promise<LeagueSeasonSessionsResponse>

Parameters:

  • leagueId: number (required) - The league ID
  • seasonId: number (required) - The season ID
  • resultsOnly?: boolean - Only return sessions with results

Description: Returns all scheduled and completed sessions for a league season.


Get points systems for a league.

Returns: Promise<LeagueGetPointsSystemsResponse>

Parameters:

  • leagueId: number (required) - The league ID
  • seasonId?: number - Filter to a specific season

Description: Returns the custom points systems configured for a league.


Get the customer’s league sessions.

Returns: Promise<LeagueCustLeagueSessionsResponse>

Parameters:

  • mine?: boolean - Only show your sessions
  • packageId?: number - Filter by content package

Description: Returns league sessions relevant to the authenticated member.

async function getLeagueOverview(leagueId: number) {
const [league, roster, seasons] = await Promise.all([
iracing.league.get({ leagueId }),
iracing.league.roster({ leagueId }),
iracing.league.seasons({ leagueId }),
]);
return {
name: league.leagueName,
memberCount: roster.members.length,
activeSeasons: seasons.filter(s => !s.retired),
};
}