Hello everyone,
As proposed in the topic Most popular Home Assistant integrations, I’m taking Team Tracker: here is a first version (beta) of the external integration for Gladys.
Display the image
What it does
You follow your teams, and Gladys knows when they play, the live score, and when they score.
- One device per team with:
- the team’s score;
- the opponent’s score;
- a « Match » line:
Live · 63' · PSG 2 – 1 OM,Finished · PSG 2 – 1 OM · VictoryorNext match · Sat 17 Oct., 5:15 PM · at STR.
- 5 scene triggers :
- Match soon (reminder X minutes before kickoff)
- Match started
- My team scored

- The opponent scored
- Match finished (filter win / loss / draw)
- 1 scene action : « Read a team’s match » (score, opponent, result, summary) to announce the score or change the lights.
- 2 widgets :
- « A team’s match »: live score, timer, kickoff;
- « My teams »: all your teams with logo and LIVE / result / UPCOMING badge.
Managed leagues
- Football: Ligue 1, Ligue 2, Coupe de France, Première Ligue, Premier League, LaLiga, Serie A, Bundesliga, Champions League, Europa League, Conference League, MLS, NWSL, World Cups
- Rugby: Top 14, Six Nations, World Cup
- US: NFL, NCAA Football, NBA, WNBA, NCAA Basketball, NHL, MLB
- And any other ESPN team league via its path, e.g.
soccer/por.1:SLB(Benfica)
Individual sports (tennis, golf, F1, MMA) are not managed yet.
Installation
- Gladys 5.1 or higher required.
- No account, no API key: scores come from ESPN’s public API (same source as the Home Assistant integration).
- Transport: cloud (nothing on your local network).
-
Install Team Tracker from the integrations catalog.
-
In Configuration, Teams field, write your teams in the form
LEAGUE:TEAM:LIG1:PSG, TOP14:RAC, NFL:KC -
Not sure about the abbreviation? Find a team button: choose the league, type part of the name, it gives you the exact line to paste.
-
Test teams button: it tells you, team by team, what is being followed (and why an entry is not).
-
Add the devices in the Discovery tab.
Scene examples
Goal light: « My team scored » → living room in green for 30 seconds.
Reminder: « Match soon » → message {{triggerEvent.data.summary}}.
Victory: « Match finished », result = victory → play some music.
Good to know
- Reading every 30 s during a match, every 15 min otherwise (adjustable). The integration wakes up on its own for the reminder and the kickoff.
- A goal arrives with up to 30 s delay, plus ESPN’s own delay.
- If ESPN does not respond, the last scores remain displayed and the badge goes to « unreachable ».
- A restart during a match does not replay a goal and does not miss one (last reading kept in
/data).
Beta: your feedback is welcome
The ESPN API is free but undocumented: it can change without notice. I tested it on real data (Ligue 1, Top 14, NFL, NBA, NHL, MLB, Champions League), but not yet during many live matches.
Tell me:
- if your team or league is not coming up;
- if a goal did not trigger the scene (or triggered it twice);
- which leagues you would like to see added.
Links
- Code: GitHub - prohand/gladys-teamtracker: Gladys external integration to provides real-time scores in multiple professional (NBA, NFL, NHL, MLB, MLS, and more), college (NCAA), and international (soccer, golf, tennis, mma, racing) sports using ESPN APIs.s in Gladys · GitHub
- Documentation: French · English
- Bugs and ideas: Issues · prohand/gladys-teamtracker · GitHub
Thanks to @vasqued2 for the Home Assistant integration Team Tracker which served as inspiration (no code reused, this one is written from scratch for Gladys).