Skip to content

Results Service

The Results service provides access to race results, lap data, event logs, and result search functionality.

const resultsService = iracing.results;

Get results for a specific subsession.

Returns: Promise<ResultsGetResponse>

Parameters:

  • subsessionId: number (required) - The subsession ID
  • includeLicenses?: boolean - Include license information

Description: Returns the complete results for a specific race subsession.


Get the event log for a session.

Returns: Promise<ResultsEventLogResponse>

Parameters:

  • subsessionId: number (required) - The subsession ID
  • simsessionNumber: number (required) - The sim session number (e.g. 0 for practice, 1 for qualifying, 2 for race)

Description: Returns the event log with incidents, flags, and other race events.


Get lap chart data for a session.

Returns: Promise<ResultsLapChartDataResponse>

Parameters:

  • subsessionId: number (required) - The subsession ID
  • simsessionNumber: number (required) - The sim session number

Description: Returns lap chart data showing positions over time, useful for creating position charts.


Get detailed lap data for a session.

Returns: Promise<ResultsLapDataResponse>

Parameters:

  • subsessionId: number (required) - The subsession ID
  • simsessionNumber: number (required) - The sim session number
  • custId?: number - Filter to a specific driver
  • teamId?: number - Filter to a specific team

Description: Returns detailed lap-by-lap data including lap times, positions, and incidents.


Search for official series results.

Returns: Promise<ResultsSearchHostedResponse>

Parameters:

  • seasonYear?: number - Season year
  • seasonQuarter?: number - Season quarter (1-4)
  • startRangeBegin?: string - Start of date range (ISO format)
  • startRangeEnd?: string - End of start date range
  • finishRangeBegin?: string - Start of finish date range
  • finishRangeEnd?: string - End of finish date range
  • custId?: number - Filter to a specific driver
  • teamId?: number - Filter to a specific team
  • seriesId?: number - Filter to a specific series
  • raceWeekNum?: number - Filter to a specific race week
  • officialOnly?: boolean - Only official sessions
  • eventTypes?: number[] - Filter by event types
  • categoryIds?: number[] - Filter by category IDs

Description: Searches for official series race results with extensive filtering options.


Search for hosted session results.

Returns: Promise<ResultsSearchSeriesResponse>

Parameters:

  • startRangeBegin?: string - Start of date range (ISO format)
  • startRangeEnd?: string - End of start date range
  • finishRangeBegin?: string - Start of finish date range
  • finishRangeEnd?: string - End of finish date range
  • custId?: number - Filter to a specific driver
  • teamId?: number - Filter to a specific team
  • hostCustId?: number - Filter by session host
  • sessionName?: string - Filter by session name
  • leagueId?: number - Filter to a specific league
  • leagueSeasonId?: number - Filter to a specific league season
  • carId?: number - Filter by car
  • trackId?: number - Filter by track
  • categoryIds?: number[] - Filter by category IDs

Description: Searches for hosted session results with filtering options.


Get results for an entire season.

Returns: Promise<ResultsSeasonResultsResponse>

Parameters:

  • seasonId: number (required) - The season ID
  • eventType?: number - Filter by event type
  • raceWeekNum?: number - Filter to a specific race week

Description: Returns all results for a given season, optionally filtered by event type and race week.

async function analyzeRace(subsessionId: number) {
const [results, laps, eventLog] = await Promise.all([
iracing.results.get({ subsessionId }),
iracing.results.lapData({ subsessionId, simsessionNumber: 2 }),
iracing.results.eventLog({ subsessionId, simsessionNumber: 2 }),
]);
return { results, laps, eventLog };
}