soccerstats.com APIsoccerstats.com ↗
Access league tables, match scores, team stats, form tables, and standings from SoccerSTATS.com across dozens of football competitions via a single API.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/5f3f185a-6cbf-4bef-9580-ee82088e525f/get_available_leagues' \ -H 'X-API-Key: $PARSE_API_KEY'
Retrieve the full list of available leagues and competitions covered by SoccerSTATS.com. Returns league name, slug identifier, and URL for each competition.
No input parameters required.
{
"type": "object",
"fields": {
"leagues": "array of objects each containing name, slug, and url"
},
"sample": {
"data": {
"leagues": [
{
"url": "https://www.soccerstats.com/latest.asp?league=albania",
"name": "Albania - Abissnet Superiore",
"slug": "albania"
},
{
"url": "https://www.soccerstats.com/latest.asp?league=england",
"name": "England - Premier League",
"slug": "england"
}
]
},
"status": "success"
}
}About the soccerstats.com API
The SoccerSTATS.com API exposes 9 endpoints covering league standings, match results, team season stats, and form tables across dozens of football competitions. Starting with get_available_leagues to enumerate all supported competitions, you can drill into league tables, individual match data including half-time scores, and team-level breakdowns that include streaks, seasonal stats, and comparisons against league averages.
League and Match Data
The get_available_leagues endpoint returns every competition available on SoccerSTATS.com as an array of objects, each with a name, slug, and url. That slug value is the key input across nearly every other endpoint. get_league_overview accepts a league_slug and returns the season summary including matches_played and avg_goals_per_match. get_league_table returns the full standings with columns mapped to GP, W, D, L, GF, GA, GD, and Pts; appending a year suffix to the slug (e.g. england_2024) retrieves historical seasons.
get_league_matches returns all fixtures and results for a league, with each match object carrying date, home_team, away_team, score, ht_score, and a match_id. That match_id feeds directly into get_match_stats, which returns the match title, league, and available stat sections such as domination, corners, and timing data when present for that fixture.
Team and Form Data
get_team_season_stats requires a team_id formatted as u{numeric_id}-{team-slug} — the numeric portion comes from search_team, which accepts a plain-text team name query and returns matching teams with their numeric identifiers and the league each belongs to. The season stats response includes streaks (home, away, and total sequences), seasonal match statistics, historical season comparisons, and vs_average data showing how the team compares to league averages.
get_league_form_table returns each team's recent form sequence alongside GP, W, D, L, GF, GA, GD, Pts, and opponent PPG (points per game), useful for identifying momentum trends. get_league_stats_table accepts a stat_type parameter (p for Both Teams To Score, y for Clean Sheets, cr for Corners, g for Streaks, z for Failed To Score) alongside a league_slug to retrieve ranked statistical breakdowns by category.
- Build a standings tracker that pulls
get_league_tablefor multiple leagues and detects position changes week over week. - Aggregate
avg_goals_per_matchfromget_league_overviewacross leagues to compare offensive output by competition. - Use
get_league_matchescombined withget_match_statsto compile half-time vs full-time result conversion rates. - Feed
get_team_season_statsstreaks andvs_averagedata into a betting or fantasy sports model. - Use
get_league_form_tableopponent PPG field to weight recent results by fixture difficulty. - Query
get_league_stats_tablewithstat_type=pto rank teams by Both Teams To Score frequency for BTTS markets. - Use
search_teamto resolve team names to IDs before hydrating a multi-league team comparison dashboard.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does SoccerSTATS.com have an official developer API?+
What does get_match_stats actually return beyond the score?+
title, league slug, and match_id. Additional stat sections — domination, corners, and timing breakdowns — are included when that data is present for the specific fixture. Not every match will have all sections populated.How do I retrieve a team's numeric ID for get_team_season_stats?+
search_team with a plain team name like 'arsenal' or 'barcelona'. The response returns an array of matching teams, each with a name (including the league in parentheses) and a numeric team_id. Combine it as u{team_id}-{team-slug} when calling get_team_season_stats. Providing a malformed team_id will return an upstream error rather than an empty result.Does the API cover player-level statistics such as goals scored or assists per player?+
Is historical season data available for all endpoints?+
get_league_table supports historical seasons by appending a year suffix to the league slug (e.g. england_2024). The get_team_season_stats endpoint also returns a historical array of past season comparisons for a team. Other endpoints such as get_league_matches and get_league_form_table reflect the current season only. You can fork this API on Parse and revise it to add historical match retrieval by season.