Commissioner Tools

Syncing League Data

The Sync page at Commissioner → Sync League Data is how all historical and current season data gets into the app. There are two separate sync processes: one for Sleeper (current era) and one for ESPN (historical).

Syncing Sleeper Data

What it syncs: All seasons linked through the Sleeper league chain — standings, rosters, matchups, transactions, draft picks, and player data.

Steps:

  1. Go to Commissioner → Sync League Data.
  2. In the Sleeper section, enter your Sleeper League ID.
  3. Find this in the Sleeper app: League Settings → League ID (a long number).
  4. Click Sync Sleeper.

The app walks backwards through the previous_league_id chain automatically, so entering the most recent season's ID will pull every prior season as well.

Tip: Sync takes 10–30 seconds depending on how many seasons exist. The page will redirect when done.

When to Sync

  • Once per week during the season keeps all matchup and transaction data current.
  • The app runs an automatic sync every 30 minutes for the current season, so manual syncs are mostly needed after major events (end of season, playoffs) or when something looks out of date.

Importing ESPN Historical Data

What it imports: Seasons from the ESPN Fantasy API — standings, matchups, and rosters for 2015, 2016, and 2017.

ESPN private leagues require authentication cookies from your browser to access the API.

Steps:

  1. In the ESPN section of the Sync page, enter:
  2. ESPN League ID — found in the ESPN app URL: fantasy.espn.com/football/league?leagueId=XXXXXXX
  3. espn_s2 Cookie — a long authentication token from your browser
  4. SWID Cookie — a shorter identity token from your browser

  5. Click Import ESPN.

Getting Your ESPN Cookies

You must be logged into ESPN in your browser. The cookies are found in your browser's developer tools.

Chrome or Edge:

  1. Go to espn.com and log in.
  2. Press F12 to open DevTools → go to the Application tab.
  3. Under Storage → Cookies, click on https://www.espn.com.
  4. Find espn_s2 and SWID in the list and copy their values.

Firefox:

  1. Go to espn.com and log in.
  2. Press F12Storage tab → Cookieshttps://www.espn.com.
  3. Copy the espn_s2 and SWID values.

Safari:

  1. Enable Developer menu: Safari → Settings → Advanced → check "Show Develop menu."
  2. Go to espn.com and log in.
  3. Develop → Show Web Inspector → Storage tab → Cookies.
  4. Copy espn_s2 and SWID.

Keep these values private. Anyone with your ESPN cookies can access your ESPN account. Do not share them.

Important: Deploy Order

On a fresh deployment, sync ESPN data before setting up the Discord webhook. Importing ESPN will add historical transactions that you don't want announced to Discord. See the Discord guide for the correct deploy order.

Re-importing ESPN

Re-running the import on an already-populated database is safe — the import uses update_or_create and will not duplicate data. It will update anything that changed (useful if manager links were corrected).


Unknown Accounts After Sync

After syncing, the Manager Accounts page may show an Unknown Accounts section. These are teams where ownership could not be determined — typically:

  • A manager who left mid-season (no Sleeper user ID associated)
  • A duplicate ESPN owner entry (mid-season team takeover in ESPN)

Their stats are preserved in full. See the Managing Accounts guide for how to set aliases for these accounts.

Previous

Commissioner Overview

Next

Discord Integration