Skip to main content

About MyFantasyLeague

MyFantasyLeague (MFL) is a fantasy football platform known for deeply customizable leagues and a complete public API. Connecting a league to Serval lets workflows read everything about it — rules, rosters, free agents, projections, standings, transactions — and act for your franchise: submit lineups, claim players on waivers or with FAAB bids, make immediate add/drops, manage injured reserve and the taxi squad, propose and answer trades, and make picks in a live draft. The MyFantasyLeague integration is currently in beta. Authentication Serval signs in to MFL with a franchise owner’s username and password, and stores the password encrypted. It exchanges those credentials for MFL’s MFL_USER_ID session cookie and reuses that cookie across calls, signing in again automatically when it expires or the password changes. Workflow authors never handle the credentials. Serval identifies itself with a User-Agent registered under MFL’s API client program, which grants higher rate limits than anonymous clients get. Everything Serval can do is bounded by what that MFL account can do in the league: it acts as that owner’s franchise, and commissioner-only operations work only if the account is the league commissioner. League hosts MFL serves each league from a numbered server (for example www47.myfantasyleague.com) and can move leagues between servers. Serval discovers the league’s current host automatically when you connect and pins requests to it; site-wide data (the player database, injuries, ADP) is read from MFL’s shared API host.

What the MyFantasyLeague integration enables

Get your credentials

  1. Use the MFL account that owns your franchise (or create a dedicated one and add it as an owner of the franchise you want Serval to manage).
  2. Find your League ID — the 4- or 5-digit number in your league’s URL, for example 17268 in https://www47.myfantasyleague.com/2026/home/17268.
  3. Note the season year your league is playing under (for example 2026).

Connect MyFantasyLeague to Serval

  1. In Serval, go to Settings → Integrations and choose MyFantasyLeague.
  2. Enter the account’s Username and Password.
  3. Enter the League ID and Season.
  4. Save the connection. Serval looks the league up, discovers which MFL server hosts it, and verifies the account can access it.

Gotchas and troubleshooting

Most league data and every team action require the connected account to be an owner in the configured league. If the connection test fails with a “requires logged in user” message, the credentials are fine but the account isn’t an owner in that league ID — or the league ID or season is wrong.
A connection is scoped to a single league and season. If you play in several leagues, connect each one separately; at the start of a new season, update the connection’s season (league IDs usually carry over year to year).
MFL answers a rejected call with an error payload rather than an error status. Serval reads the payload and raises the failure, so a permission problem surfaces as a failed step instead of an empty result. If a step fails with a message quoting MFL, that message came from MFL.
MFL rate-limits by IP and asks clients not to retry failed calls aggressively. Serval retries reads after backing off, but never retries a write (waiver claim, lineup, trade, draft pick) on its own — a timed-out write may still have been applied, so check the result before resubmitting.
MFL occasionally moves leagues between its numbered servers. Reads keep working, but if team actions start failing after a move, open the integration’s settings and save them again — Serval re-discovers the league’s host on every save.
MFL updates its player database at most once per day and asks clients to read it no more than daily. Workflows that need it often should store it and refresh with the SINCE parameter rather than re-reading it on every run.
The MyFantasyLeague integration is marked beta in the connect screen. Behavior and available capabilities may change.

Need help? Contact support@serval.com for assistance with your MyFantasyLeague integration.