TotalCorner APItotalcorner.com ↗
Access today's football matches, schedules, corner statistics, and team rankings from TotalCorner.com via a structured JSON API with 4 endpoints.
What is the TotalCorner API?
The TotalCorner API exposes 4 endpoints covering live and scheduled football match data, detailed per-match corner statistics, and league-level team rankings. The get_today_matches endpoint returns the full current-day match list with scores, corner counts, league names, and match status across all tracked competitions. Match slugs and IDs returned there feed directly into get_match_details for historical analysis and first-half goal data.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/5e0b4aab-b5da-44a3-8cdd-bde8123c3a08/get_today_matches' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace totalcorner-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.totalcorner_football_stats_api import TotalCorner, Match, MatchDetail, HistoricalMatch, TeamCornerStats, League, LeagueId
client = TotalCorner()
# Get today's matches and inspect corner stats
for match in client.matches.today(limit=5):
print(match.home_team, match.away_team, match.full_time_corners, match.status)
# Drill into match details for the first scheduled match
scheduled = list(client.matches.schedule(limit=1))
if scheduled:
detail = scheduled[0].details.get()
print(detail.total_matches_analyzed, detail.goals_in_first_half_in_last_matches)
for hist in detail.history[:3]:
print(hist.home_team, hist.away_team, hist.ft_score, hist.ft_corners)
# Get top teams by corners for Premier League
league = client.league(league_id=LeagueId.PREMIER_LEAGUE)
for team in league.top_teams_by_corners(limit=5):
print(team.rank, team.team, team.avg_corners_got, team.avg_total_corners)
Get today's football match list with scores and corners. Returns all matches for the current day including live, completed, and upcoming matches. Each match includes league context, team names, full-time and half-time corner counts, and identifiers (match_id, match_slug) usable for drill-down via get_match_details.
No input parameters required.
{
"type": "object",
"fields": {
"total": "integer count of matches returned",
"matches": "array of match objects with league, time, status, teams, scores, and corners"
},
"sample": {
"data": {
"total": 97,
"matches": [
{
"time": "10:30",
"league": "Australia NPL Queensland",
"status": "",
"match_id": "195660216",
"away_team": "Eastern Suburbs",
"home_team": "Wynnum Wolves",
"match_slug": "Wynnum-Wolves-vs-Eastern-Suburbs",
"full_time_score": "0 - 0",
"full_time_corners": "0 - 0",
"half_time_corners": "0-0"
}
]
},
"status": "success"
}
}About the TotalCorner API
Match Data and Schedule
Two endpoints cover daily match coverage. get_today_matches returns all matches for the current day — live, completed, and upcoming — as an array of match objects including league, kickoff time, match status, team names, scores, and corner counts for each side. get_schedule returns a similar structure but scoped to the full day's schedule across all leagues. Both endpoints take no required inputs and return a total field alongside the matches array.
Match Details and Historical Analysis
get_match_details requires two inputs: a match_id and a slug (formatted like Alianza-Atletico-vs-Macara), both available from the listing endpoints. The response includes a history array of past encounters with team names, scores, and corner stats, plus total_matches_analyzed and goals_in_first_half_in_last_matches — a count of how many recent matches saw a goal before half-time. This makes the endpoint useful for pre-match research on scoring patterns and corner trends.
Team Rankings by Corner Statistics
get_top_teams_by_corners accepts an optional league_id parameter. Confirmed working values are 1 for the England Premier League and 2 for Spain La Liga; other league IDs may vary in availability. The response includes up to 10 team objects, each with rank, team name, played, corners_got, corners_lost, avg_corners_got, avg_corners_lost, and avg_total_corners. This endpoint is purpose-built for identifying teams with consistently high or low corner activity within a given league.
The TotalCorner API is a managed, monitored endpoint for totalcorner.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when totalcorner.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official totalcorner.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track live corner counts for in-play betting research using
get_today_matchesresponse fields - Build a daily football dashboard showing match status and scores across all leagues
- Analyze first-half goal frequency for specific fixtures using
goals_in_first_half_in_last_matchesfromget_match_details - Rank Premier League or La Liga teams by average corners gained per match for tactical analysis
- Pull historical head-to-head corner data for pre-match statistical models via
get_match_details - Monitor same-day match schedules and results across multiple leagues with no filter parameters required
- Compare a team's corners_got vs corners_lost averages to profile offensive vs defensive corner tendencies
| 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 | 100 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 TotalCorner have an official developer API?+
What does `get_match_details` return beyond the current match score?+
history array of past matches for both teams, including team names, scores, and corner statistics from those encounters. It also returns total_matches_analyzed (how many historical matches were included) and goals_in_first_half_in_last_matches (count of those matches where a first-half goal occurred). It does not return player-level stats or lineups.Which leagues are supported by `get_top_teams_by_corners`?+
1 (England Premier League) and 2 (Spain La Liga) are confirmed to return data. Other league IDs may work but results are not guaranteed. The API does not currently expose a league directory endpoint listing all valid IDs. You can fork the API on Parse and revise it to add a league listing endpoint that maps league names to their IDs.Does the API support filtering today's matches by league or competition?+
get_today_matches and get_schedule return all matches across all tracked leagues with no filter parameters. You can fork the API on Parse and revise it to add a league filter input that narrows the returned match array to a specific competition.