Results Service
Results Service
Section titled “Results Service”The Results service provides access to race results, lap data, event logs, and result search functionality.
const resultsService = iracing.results;Methods
Section titled “Methods”get(params)
Section titled “get(params)”Get results for a specific subsession.
Returns: Promise<ResultsGetResponse>
Parameters:
subsessionId: number(required) - The subsession IDincludeLicenses?: boolean- Include license information
Description: Returns the complete results for a specific race subsession.
const results = await iracing.results.get({ subsessionId: 12345678, includeLicenses: true});
console.log(`Session: ${results.sessionName}`);console.log(`Track: ${results.track.trackName}`);eventLog(params)
Section titled “eventLog(params)”Get the event log for a session.
Returns: Promise<ResultsEventLogResponse>
Parameters:
subsessionId: number(required) - The subsession IDsimsessionNumber: 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.
const eventLog = await iracing.results.eventLog({ subsessionId: 12345678, simsessionNumber: 2 // Race session});
eventLog.forEach(event => { console.log(`Lap ${event.lapNumber}: ${event.eventDescription}`);});lapChartData(params)
Section titled “lapChartData(params)”Get lap chart data for a session.
Returns: Promise<ResultsLapChartDataResponse>
Parameters:
subsessionId: number(required) - The subsession IDsimsessionNumber: number(required) - The sim session number
Description: Returns lap chart data showing positions over time, useful for creating position charts.
const lapChart = await iracing.results.lapChartData({ subsessionId: 12345678, simsessionNumber: 2});
console.log('Lap chart data:', lapChart);lapData(params)
Section titled “lapData(params)”Get detailed lap data for a session.
Returns: Promise<ResultsLapDataResponse>
Parameters:
subsessionId: number(required) - The subsession IDsimsessionNumber: number(required) - The sim session numbercustId?: number- Filter to a specific driverteamId?: number- Filter to a specific team
Description: Returns detailed lap-by-lap data including lap times, positions, and incidents.
// Get all lap data for a raceconst allLaps = await iracing.results.lapData({ subsessionId: 12345678, simsessionNumber: 2});
// Get lap data for a specific driverconst driverLaps = await iracing.results.lapData({ subsessionId: 12345678, simsessionNumber: 2, custId: 123456});searchSeries(params?)
Section titled “searchSeries(params?)”Search for official series results.
Returns: Promise<ResultsSearchHostedResponse>
Parameters:
seasonYear?: number- Season yearseasonQuarter?: number- Season quarter (1-4)startRangeBegin?: string- Start of date range (ISO format)startRangeEnd?: string- End of start date rangefinishRangeBegin?: string- Start of finish date rangefinishRangeEnd?: string- End of finish date rangecustId?: number- Filter to a specific driverteamId?: number- Filter to a specific teamseriesId?: number- Filter to a specific seriesraceWeekNum?: number- Filter to a specific race weekofficialOnly?: boolean- Only official sessionseventTypes?: number[]- Filter by event typescategoryIds?: number[]- Filter by category IDs
Description: Searches for official series race results with extensive filtering options.
// Search for a driver's recent racesconst results = await iracing.results.searchSeries({ custId: 123456, seasonYear: 2024, seasonQuarter: 3});
// Search a specific seriesconst seriesResults = await iracing.results.searchSeries({ seriesId: 234, raceWeekNum: 5, officialOnly: true});searchHosted(params?)
Section titled “searchHosted(params?)”Search for hosted session results.
Returns: Promise<ResultsSearchSeriesResponse>
Parameters:
startRangeBegin?: string- Start of date range (ISO format)startRangeEnd?: string- End of start date rangefinishRangeBegin?: string- Start of finish date rangefinishRangeEnd?: string- End of finish date rangecustId?: number- Filter to a specific driverteamId?: number- Filter to a specific teamhostCustId?: number- Filter by session hostsessionName?: string- Filter by session nameleagueId?: number- Filter to a specific leagueleagueSeasonId?: number- Filter to a specific league seasoncarId?: number- Filter by cartrackId?: number- Filter by trackcategoryIds?: number[]- Filter by category IDs
Description: Searches for hosted session results with filtering options.
// Search by leagueconst leagueResults = await iracing.results.searchHosted({ leagueId: 1234, leagueSeasonId: 5678});
// Search by hostconst hostedResults = await iracing.results.searchHosted({ hostCustId: 123456, startRangeBegin: '2024-01-01T00:00:00Z'});seasonResults(params)
Section titled “seasonResults(params)”Get results for an entire season.
Returns: Promise<ResultsSeasonResultsResponse>
Parameters:
seasonId: number(required) - The season IDeventType?: number- Filter by event typeraceWeekNum?: number- Filter to a specific race week
Description: Returns all results for a given season, optionally filtered by event type and race week.
// Get all season resultsconst results = await iracing.results.seasonResults({ seasonId: 3456});
// Get results for a specific weekconst weekResults = await iracing.results.seasonResults({ seasonId: 3456, raceWeekNum: 5});Common Use Cases
Section titled “Common Use Cases”Analyze a Race
Section titled “Analyze a Race”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 };}See Also
Section titled “See Also”- Stats Service - Season standings and statistics
- Season Service - Season schedules
- Hosted Service - Active hosted sessions
- Services Overview - All available services