Live scores, fixtures, league tables and minute-by-minute timelines across 58 competitions. Plus injuries and suspensions, worked out from the match events themselves rather than typed in by hand.
You'll land on Global-Football-API on the RapidAPI marketplace. Subscribe to the free BASIC plan, copy your key, and you're calling the API. No card.
Every endpoint takes a competition slug. The first call gives you the list. There is nothing else to set up.
# 1. find the competition slug
curl 'https://global-football-api1.p.rapidapi.com/get/soccer/leagues' \
-H 'X-RapidAPI-Key: YOUR_KEY' \
-H 'X-RapidAPI-Host: global-football-api1.p.rapidapi.com'
# 2. today's scores
GET /get/soccer/eng.1/scoreboard
# 3. the whole season
GET /get/soccer/eng.1/fixtures
Most providers pay people to read team news and type it into a row, which is why the cheap ones get it wrong. We read it out of our own match timelines, so every row points at something that happened at a known minute.
forced_off means substituted out injured. knock means play stopped and the player carried on.
GET /get/soccer/eng.1/injuries
Emersonn Ipswich Town forced_off 81'
Pedro Porro Tottenham forced_off
Lewis Miley Newcastle knock 37'
Card totals per player with the competition's threshold applied. Every row carries bookings_until_ban.
GET /get/soccer/eng.1/discipline
Abdul Fatawu Ipswich Y1 R1 suspended
Jacob Murphy Newcastle Y2 R0 3 until ban
Eleven endpoints. All GET, all JSON.
| Endpoint | Returns |
|---|---|
/leagues | every competition and its slug |
/{league}/scoreboard | scores for one day |
/{league}/fixtures | the season schedule and results |
/{league}/standings | the league table |
/{league}/clubs | every club, with crests and colours |
/{league}/clubs/{clubId} | one club |
/{league}/events/{id} | match detail, goals and line-ups |
/{league}/events/{id}/plays | the full timeline, ~1,400 entries |
/{league}/injuries | players hurt during recent matches |
/{league}/discipline | card totals and suspension risk |
/meta | coverage and freshness per competition |
Top flights, second divisions, domestic cups and continental football.
Premier LeagueLaLigaBundesligaSerie ALigue 1EredivisiePrimeira LigaChampions LeagueEuropa LeagueConference LeagueChampionshipLaLiga 22. BundesligaSerie BLigue 2MLSLiga MXBrasileirãoLiga ProfesionalLibertadoresSudamericanaFA CupCopa del ReyDFB-PokalCoppa ItaliaSaudi Pro LeagueJ.LeagueA-LeagueEliteserienAllsvenskanNWSLWSLand 26 more
The plans you will see on RapidAPI. BASIC needs no card and is enough to build and test against. Paid plans add request volume, and usage above the monthly quota is billed per call rather than cut off.
This one has a free tier that needs no card. You sign up through RapidAPI, get a key, and start calling. Paid plans exist for higher request volumes, but the free tier is enough to build and test against.
Live scores, fixtures and results, league tables, club directories with crests, squad line-ups with shirt numbers, and full play-by-play timelines running to about 1,400 events per match. Also injury and suspension signals derived from those timelines.
Matches in play refresh every 20 seconds. Polling faster than that returns the same response, so match your cache time to the refresh rate rather than to how fresh you want the data to be.
Yes, with a limit worth knowing. Both are derived from match events rather than curated by hand. That means injuries cover what happened on the pitch in matches we hold a timeline for, not a player who picked up a knock in training. Treat it as a leading indicator rather than a team sheet. The upside is that a derived event cannot go stale or be mis-keyed.
58 competitions, including the Premier League, LaLiga, Bundesliga, Serie A, Ligue 1, the Champions League, the Europa League, MLS, Liga MX and the Saudi Pro League, plus second divisions such as the Championship and domestic cups such as the FA Cup. Call /get/soccer/leagues for the current list.
Yes, under the plan you subscribe to on RapidAPI. Rate limits are per plan and metered there.
Two things. The timelines go deeper than a score and a goalscorer, at around 1,400 events per match with minute-accurate clocks. And injuries and suspensions are derived rather than curated, which is the part most cheap providers get wrong.
Global-Football-API is listed on RapidAPI. Subscribe to BASIC, copy your key, make your first call in a couple of minutes.
Get your free key on RapidAPI