Skip to content

Instantly share code, notes, and snippets.

@akeaswaran
Last active June 17, 2026 03:28
Show Gist options
  • Select an option

  • Save akeaswaran/b48b02f1c94f873c6655e7129910fc3b to your computer and use it in GitHub Desktop.

Select an option

Save akeaswaran/b48b02f1c94f873c6655e7129910fc3b to your computer and use it in GitHub Desktop.
ESPN hidden API Docs

ESPN's hidden API endpoints

Football

College Football

Latest News: http://site.api.espn.com/apis/site/v2/sports/football/college-football/news

Latest Scores: http://site.api.espn.com/apis/site/v2/sports/football/college-football/scoreboard

  • query params:

    • calendar: 'blacklist'
    • dates: any date in YYYYMMDD

Game Information: http://site.api.espn.com/apis/site/v2/sports/football/college-football/summary?event=:gameId

  • params:

    • gameId: identifier of some game (EX: 400934572 for 2017 Army vs Navy)

Team Information: http://site.api.espn.com/apis/site/v2/sports/football/college-football/teams/:team

  • params:

    • team: some team abbreviation (EX: 'all' for Allegheny, 'gt' for Georgia Tech, 'wisconsin' for Wisconsin)

Rankings: http://site.api.espn.com/apis/site/v2/sports/football/college-football/rankings

NFL

Scores: http://site.api.espn.com/apis/site/v2/sports/football/nfl/scoreboard

News: http://site.api.espn.com/apis/site/v2/sports/football/nfl/news

All Teams: http://site.api.espn.com/apis/site/v2/sports/football/nfl/teams

Specific Team: http://site.api.espn.com/apis/site/v2/sports/football/nfl/teams/:team

Baseball

MLB

Scores: http://site.api.espn.com/apis/site/v2/sports/baseball/mlb/scoreboard

News: http://site.api.espn.com/apis/site/v2/sports/baseball/mlb/news

All Teams: http://site.api.espn.com/apis/site/v2/sports/baseball/mlb/teams

Specific Team: http://site.api.espn.com/apis/site/v2/sports/baseball/mlb/teams/:team

College Baseball

Scores: https://site.api.espn.com/apis/site/v2/sports/baseball/college-baseball/scoreboard

Hockey

Scores: http://site.api.espn.com/apis/site/v2/sports/hockey/nhl/scoreboard

News: http://site.api.espn.com/apis/site/v2/sports/hockey/nhl/news

All Teams: http://site.api.espn.com/apis/site/v2/sports/hockey/nhl/teams

Specific Team: http://site.api.espn.com/apis/site/v2/sports/hockey/nhl/teams/:team

Basketball

NBA

Scores: http://site.api.espn.com/apis/site/v2/sports/basketball/nba/scoreboard

News: http://site.api.espn.com/apis/site/v2/sports/basketball/nba/news

All Teams: http://site.api.espn.com/apis/site/v2/sports/basketball/nba/teams

Specific Team: http://site.api.espn.com/apis/site/v2/sports/basketball/nba/teams/:team

WNBA

Scores: http://site.api.espn.com/apis/site/v2/sports/basketball/wnba/scoreboard

News: http://site.api.espn.com/apis/site/v2/sports/basketball/wnba/news

All Teams: http://site.api.espn.com/apis/site/v2/sports/basketball/wnba/teams

Specific Team: http://site.api.espn.com/apis/site/v2/sports/basketball/wnba/teams/:team

Women's College Basketball

Scores: http://site.api.espn.com/apis/site/v2/sports/basketball/womens-college-basketball/scoreboard

News: http://site.api.espn.com/apis/site/v2/sports/basketball/womens-college-basketball/news

All Teams: http://site.api.espn.com/apis/site/v2/sports/basketball/womens-college-basketball/teams

Specific Team: http://site.api.espn.com/apis/site/v2/sports/basketball/womens-college-basketball/teams/:team

Men's College Basketball

Scores: http://site.api.espn.com/apis/site/v2/sports/basketball/mens-college-basketball/scoreboard

News: http://site.api.espn.com/apis/site/v2/sports/basketball/mens-college-basketball/news

All Teams: http://site.api.espn.com/apis/site/v2/sports/basketball/mens-college-basketball/teams

Specific Team: http://site.api.espn.com/apis/site/v2/sports/basketball/mens-college-basketball/teams/:team

Soccer

Scores: http://site.api.espn.com/apis/site/v2/sports/soccer/:league/scoreboard

  • params:

    • league: some league abbreviation (EX: 'eng.1' for EPL, 'usa.1' for MLS)

Latest News: http://site.api.espn.com/apis/site/v2/sports/soccer/:league/news

List of Team Information: http://site.api.espn.com/apis/site/v2/sports/soccer/:league/teams

Will update with more information as I find more...

@Anibal00

Anibal00 commented Feb 1, 2026

Copy link
Copy Markdown

Is there any way to get the depth charts of nba teams? https://www.espn.com/nba/depth/_/type/full or https://www.espn.com/nba/team/depth/_/name/gsw

@propsdaily

Copy link
Copy Markdown

Is there any way to get the depth charts of nba teams? https://www.espn.com/nba/depth/_/type/full or https://www.espn.com/nba/team/depth/_/name/gsw

@Anibal00 You should be able to do something like this:
https://site.api.espn.com/apis/site/v2/sports/basketball/nba/teams/25/depthcharts where 25 is the team ID.

@Anibal00

Anibal00 commented Feb 2, 2026

Copy link
Copy Markdown

Is there any way to get the depth charts of nba teams? https://www.espn.com/nba/depth/_/type/full or https://www.espn.com/nba/team/depth/_/name/gsw

@Anibal00 You should be able to do something like this: https://site.api.espn.com/apis/site/v2/sports/basketball/nba/teams/25/depthcharts where 25 is the team ID.

thank you

@aacampos76

aacampos76 commented Feb 5, 2026

Copy link
Copy Markdown

Is there any way to get the scoreboards of nba games from the previous day? These NBA endpoints are still working?_

@bburwell

bburwell commented Feb 5, 2026

Copy link
Copy Markdown

Is there any way to get the scoreboards of nba games from the previous day? These NBA endpoints are still working?_

Have you tried just appending yesterday's date like this: https://site.api.espn.com/apis/site/v2/sports/basketball/nba/scoreboard?dates=20250204 or use a range

@ThanhNguyenDn1

Copy link
Copy Markdown

Hello, I am currently using the following URL format to retrieve player avatar images by player ID:

https://a.espncdn.com/i/headshots/soccer/players/full/258909.png

However, I noticed that this URL does not return images for all player IDs. Could you please provide the correct URL format or the recommended way to reliably retrieve the avatar image for each player?

@propsdaily

Copy link
Copy Markdown

Just curious if anyone has been able to pull stats by period in the boxscores? Like 1Q Points in NBA for example. Or does ESPN only have full game stats?

@bburwell

bburwell commented Mar 1, 2026

Copy link
Copy Markdown

Just curious if anyone has been able to pull stats by period in the boxscores? Like 1Q Points in NBA for example. Or does ESPN only have full game stats?

Sure live and completed in the scoreboard api. here is NBA https://site.api.espn.com/apis/site/v2/sports/basketball/nba/scoreboard drill down into linescores for each team.

If you use Home Assistant you can see how we use the api data for different sports that may help as well:
https://community.home-assistant.io/t/sports-standings-and-scores/547094/928

Here is one for the Superbowl that updates live until the end of the game and goes final.
image

@propsdaily

Copy link
Copy Markdown

Just curious if anyone has been able to pull stats by period in the boxscores? Like 1Q Points in NBA for example. Or does ESPN only have full game stats?

Sure live and completed in the scoreboard api. here is NBA https://site.api.espn.com/apis/site/v2/sports/basketball/nba/scoreboard drill down into linescores for each team.

If you use Home Assistant you can see how we use the api data for different sports that may help as well: https://community.home-assistant.io/t/sports-standings-and-scores/547094/928

Here is one for the Superbowl that updates live until the end of the game and goes final. image

Thanks for the reply! I should've been more specific, looking for player individual stats by period

@bobaparks

Copy link
Copy Markdown

Hey, just wanted to share something I built using the endpoints in this thread: https://www.diamondcollegebaseball.com/

I'm not a developer by trade but I wanted a single place to follow all D1 college baseball scores without jumping between ESPN pages — so I used this gist (and a healthy dose of help from AI) to figure out how to pull the data. Shows live scores for every D1 game, box scores with individual batting and pitching lines (where available), ball/strike count, base runners (where available), outs, the whole thing. It also has a uniqe stats leader ticker that I haven't seen anywhere else. Covers all conferences including a filter for HBCU programs which I couldn't find anywhere else.

Took a while to figure out but it actually seems to work pretty well.

@nwbarkeriu

Copy link
Copy Markdown

Hey, just wanted to share something I built using the endpoints in this thread: https://www.diamondcollegebaseball.com/

I'm not a developer by trade but I wanted a single place to follow all D1 college baseball scores without jumping between ESPN pages — so I used this gist (and a healthy dose of help from AI) to figure out how to pull the data. Shows live scores for every D1 game, box scores with individual batting and pitching lines (where available), ball/strike count, base runners (where available), outs, the whole thing. It also has a uniqe stats leader ticker that I haven't seen anywhere else. Covers all conferences including a filter for HBCU programs which I couldn't find anywhere else.

Took a while to figure out but it actually seems to work pretty well.

This is awesome! Thanks for Sharing -- I think it would look great if you had the school logo, adding a lookup to the /teams page by ID and capturing the logo!

@gdhshsbs

gdhshsbs commented Apr 3, 2026

Copy link
Copy Markdown

I see a tournamentId. Maybe that can be helpful. Id = 22 in some of these TBD games. If the seed shows up and the round we can use it. I see a ["notes"] key where they have "Men's Basketball Championship - 1st Round"

On Thu, Mar 13, 2025 at 12:39 PM jb082005 @.> wrote: _@**.* commented on this gist. ------------------------------ I wasn't able to find a tournament indicator in the ESPN endpoint. Let me know if you find one. … <#m-3902739222069110977_> On Thu, Mar 13, 2025 at 12:02 PM cmwillett @.*> wrote: @. commented on this gist. ------------------------------ If you query with a date range, you can get the scheduled games. This does include all college basketball games, but it does have the tournament games. For example: https://site.api.espn.com/apis/site/v2/sports/basketball/mens-college-basketball/scoreboard?dates=20250320-20250323&groups=50&limit=500 Got ya. That makes sense as well. I'm sure there's an element stating it's a tourney game in there. — I believe you can use groups=100 for NCAA tournament games — Reply to this email directly, view it on GitHub https://gist.github.com/akeaswaran/b48b02f1c94f873c6655e7129910fc3b#gistcomment-5490654 or unsubscribe https://github.com/notifications/unsubscribe-auth/AANTBKNNZIKLTTG4XLI6BJD2UGYDHBFKMF2HI4TJMJ2XIZLTSKBKK5TBNR2WLJDUOJ2WLJDOMFWWLO3UNBZGKYLEL5YGC4TUNFRWS4DBNZ2F6YLDORUXM2LUPGBKK5TBNR2WLJDHNFZXJJDOMFWWLK3UNBZGKYLEL52HS4DFVRZXKYTKMVRXIX3UPFYGLK2HNFZXIQ3PNVWWK3TUUZ2G64DJMNZZDAVEOR4XAZNEM5UXG5FFOZQWY5LFVA4DGOBXGIZTEMVHORZGSZ3HMVZKMY3SMVQXIZI . You are receiving this email because you commented on the thread. Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub .

This may help

http://sports.core.api.espn.com/v2/sports/basketball/leagues/mens-college-basketball/events/401746030/competitions/401746030?lang=en&region=us

b a

That format does allow for viewing today's games (e.g. https://data.ncaa.com/casablanca/scoreboard/basketball-men/d1/2024/03/21/scoreboard.json), but I don't see how it could be used to retrieve the bracket ahead of time before the NCAA tournament begins. Any insight?

I haven't actually done this yet because I've been wrapped up in playbyplay data but my plan is to just recreate it based on what's in the json. All you need is ["bracketRegion"], ["bracketRound"], ["away"]["seed"], ["home"]["seed"]

we need the return of Jesus Shuttlesworth. Join the discord if you don’t mind saying hello https://discord.gg/6zZtPfU94

@potsie

potsie commented May 18, 2026

Copy link
Copy Markdown

Claude and I built a website inspired by the box score pages newspapers used to print. Check out https://agatetypes.com. We're going through the motorsports data now to add that to the site. A fun site that reminds me of the Detroit Free Press sports pages I devoured as a kid.

@ryanbuckner

Copy link
Copy Markdown

Claude and I built a website inspired by the box score pages newspapers used to print. Check out https://agatetypes.com. We're going through the motorsports data now to add that to the site. A fun site that reminds me of the Detroit Free Press sports pages I devoured as a kid.

This is fun. A toggle of sports would make this better than the ESPN page

@suhasa010

suhasa010 commented May 18, 2026

Copy link
Copy Markdown

Claude and I built a website inspired by the box score pages newspapers used to print. Check out https://agatetypes.com. We're going through the motorsports data now to add that to the site. A fun site that reminds me of the Detroit Free Press sports pages I devoured as a kid.

This is super cool because it is so simple and clean! Love it!

Can I also plug my implementation, please? (Not as cool as the above but I tried my best)

@potsie

potsie commented May 18, 2026

Copy link
Copy Markdown

Claude and I built a website inspired by the box score pages newspapers used to print. Check out https://agatetypes.com. We're going through the motorsports data now to add that to the site. A fun site that reminds me of the Detroit Free Press sports pages I devoured as a kid.

This is fun. A toggle of sports would make this better than the ESPN page

Yeah, it's on the list. The current way to each sport was to click on "Full box scores."

...5 minutes...

Done. It's not a toggle but the homepage now lets you click into each sport from the sports nav row at the top. I struggled with what to display on the homepage. Box scores for every sport with events that day would be REALLY long. I landed on using the home page as a quick way to see what's coming, scores for events that have ended, etc. but didn't initially have the sports nav as well. The added sport navigation should now make it easier to quickly get to a particular sport. F1, Nascar, and IndyCar added today. Working on formatting so when someone prints a page out, everything still formats alright.

@potsie

potsie commented May 18, 2026

Copy link
Copy Markdown

Claude and I built a website inspired by the box score pages newspapers used to print. Check out https://agatetypes.com. We're going through the motorsports data now to add that to the site. A fun site that reminds me of the Detroit Free Press sports pages I devoured as a kid.

This is super cool because it is so simple and clean! Love it!

Can I also plug my implementation, please? (Not as cool as the above but I tried my best)

The more the merrier! Let's see what you built.

@suhasa010

suhasa010 commented May 18, 2026

Copy link
Copy Markdown

Claude and I built a website inspired by the box score pages newspapers used to print. Check out https://agatetypes.com. We're going through the motorsports data now to add that to the site. A fun site that reminds me of the Detroit Free Press sports pages I devoured as a kid.

This is super cool because it is so simple and clean! Love it!
Can I also plug my implementation, please? (Not as cool as the above but I tried my best)

The more the merrier! Let's see what you built.

https://t.me/espnfbot on Telegram. It took about 2 months to get it done with the features I had in mind even with the help of ChatGPT but I am kinda proud of it. I personally use it on a daily basis to follow MLB, Cricket and Football/Soccer. It also supports Tennis, NHL, NFL, NBA, Formula1 and college sports as well. Alerts and Favorites can be set up too. I tried not to dump all the data available from ESPN into the match details while giving the most important information to the user.
Finally, a dashboard for a quick glance at all the recent, live and upcoming matches of your favorites.

Right now it has about 850+ total users, which I'm happy with. I guess less users the better, because you never know when the ESPN API free ride will end!

Screenshot_2026-05-19-04-19-04-44_948cd9899890cbd5c2798760b2b95377

@suhasa010

Copy link
Copy Markdown

Hey, just wanted to share something I built using the endpoints in this thread: https://www.diamondcollegebaseball.com/

I'm not a developer by trade but I wanted a single place to follow all D1 college baseball scores without jumping between ESPN pages — so I used this gist (and a healthy dose of help from AI) to figure out how to pull the data. Shows live scores for every D1 game, box scores with individual batting and pitching lines (where available), ball/strike count, base runners (where available), outs, the whole thing. It also has a uniqe stats leader ticker that I haven't seen anywhere else. Covers all conferences including a filter for HBCU programs which I couldn't find anywhere else.

Took a while to figure out but it actually seems to work pretty well.

That ticker is really eye-catching! I love the full inning snapshot too.

Some notes and opinions:

  1. I think the ticker is a tad bit slow. I think it can be quicker by about 2-3x the current speed. Something like 1 match/stat leader can be in the view per 3 seconds.
  2. Is it possible to add MLB? I follow Dodgers and Yankees and would love to use this sleek UI to follow their matches. If College Baseball is your only vision then I totally understand.
  3. I feel the filters (All, Upcoming, Live, Stat leaders etc) are a bit crowded. Maybe some of them can be in the hamburger menu? I'm not sure.

Thank you for this site. It is a perfect combination of retro static pages and a modern look.

@cheese-industries

cheese-industries commented May 19, 2026 via email

Copy link
Copy Markdown

@ryanbuckner

Copy link
Copy Markdown

2026 FIFA World Cup endpoint

https://site.api.espn.com/apis/site/v2/sports/soccer/fifa.world/scoreboard?limit=200&dates=20260611-20260719

@ITIRadio

Copy link
Copy Markdown

After seeing Agate Types, Every Baseball Score, & Diamond College Baseball, I hate to post about my little, but long-time project (I first posted here back on page 2). (By the way, I'm glad someone got something out of the college baseball API; I found that Big 10 scores often ran a day late & just supplied a lousy RHE score.)

I have added a World Cup Python script to my set of on-demand command-line-oriented API scripts at https://github.com/ITIRadio/ESPN-API . Given the smaller number of games, use two parameters (earlier date first) for a date range, YYYYMMDD YYYYMMDD, one date for one day's games, or no parm for just today's games. For future games, the schedule is given from the scoreboard API. For games in progress, a brief summary with some stats & events is shown. For completed games (sometimes it takes overnight for box scores to be finalized), a full box score is given, with full team statistics, full player statistics, the game recap, and ESPN web site's text commentary log...so just about everything. And no AI-slop code...just sloppy code ;) . And by the way, @cheese-industries, no one has cared about my project ;) .

Anyway, I hope to reuse the new soccer code for a daily European club run down script this fall. I also need to get around to adding fumble recoveries & multi-SQLite database file support to my NFL box score & database / reporting system.

In the meantime, enjoy the soccer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment