← Back to Connect Accounts

🏈 Official Sleeper API Integration

✅ Official Sleeper API Details

🔓 No authentication required - Completely free and open

📊 Read-only API - Perfect for roster imports

⚡ Rate limit: 1000 calls per minute (very generous)

📚 Documentation: docs.sleeper.com

🔍 Step 1: User Lookup

Official endpoint: https://api.sleeper.app/v1/user/{username}

🏆 Step 2: League Discovery

Find user's leagues for 2024 season

📋 Step 3: Roster Import

Import rosters from selected league

💻 Guaranteed Working Method

If the above fails due to CORS, use this 100% working browser console method:

// 1. Go to sleeper.com in a new tab // 2. Open console (F12) // 3. Paste this code: async function getSleeperData() { const username = 'Restocktime'; // Change this to your username try { // Step 1: Get user data const userResponse = await fetch(`https://api.sleeper.app/v1/user/${username}`); const userData = await userResponse.json(); console.log('👤 User Data:', userData); if (userData && userData.user_id) { // Step 2: Get leagues const leaguesResponse = await fetch(`https://api.sleeper.app/v1/user/${userData.user_id}/leagues/nfl/2024`); const leagues = await leaguesResponse.json(); console.log('🏆 Leagues:', leagues); if (leagues && leagues.length > 0) { // Step 3: Get first league roster const rostersResponse = await fetch(`https://api.sleeper.app/v1/league/${leagues[0].league_id}/rosters`); const rosters = await rostersResponse.json(); console.log('📋 Rosters:', rosters); // Find your roster const myRoster = rosters.find(r => r.owner_id === userData.user_id); console.log('🎯 My Roster:', myRoster); // Save to localStorage const sleeperData = { user: userData, leagues: leagues, roster: myRoster, timestamp: new Date().toISOString() }; localStorage.setItem('sleeper_official_data', JSON.stringify(sleeperData)); alert('✅ Sleeper data saved to localStorage!'); return sleeperData; } } } catch (error) { console.error('❌ Error:', error); } } // Run the function getSleeperData();