Fully Typed
Complete TypeScript types for all API endpoints with IntelliSense support and compile-time safety.
Fully Typed
Complete TypeScript types for all API endpoints with IntelliSense support and compile-time safety.
Auto-Generated
SDK automatically generated from the official iRacing API documentation for always up-to-date methods.
Smart Caching
Response caching with automatic expiration based on API response headers. (Coming soon)
Error Handling
Comprehensive error handling with specific error types for maintenance mode, rate limiting, and authentication.
import { IRacingDataClient } from 'iracing-data-client';
// Initialize the Data Clientconst iracing = new IRacingDataClient({ auth: { type: 'password-limited', clientId: process.env.IRACING_CLIENT_ID, clientSecret: process.env.IRACING_CLIENT_SECRET, username: process.env.IRACING_USERNAME, password: process.env.IRACING_PASSWORD, },});
// Get all tracksconst tracks = await iracing.track.get();console.log(`Found ${tracks.length} tracks`);
// Get member dataconst member = await iracing.member.get({ custIds: [123456] });The SDK provides access to all iRacing Data API endpoints through organized service classes:
Installation
Learn how to install and configure the Data Client in your project. Get Started →
Authentication
Set up authentication with your iRacing credentials. Learn More →
API Reference
Explore the complete API documentation for all services. Browse API →
Examples
See real-world examples of using the Data Client. View Examples →