Tournament brackets
Contents

What Sportmonks provides

Sportmonks models every competition’s structural progression through stages and rounds, giving you the raw data needed to render bracket views for any competition format within your subscription.

A stage represents a distinct phase of a season or competition, such as a regular season, group stage, playoff round, or final. Each stage has a name, type, sort order, start and end dates, and a flag indicating whether it is finished, pending, or currently active.

A round sits within a stage and represents a discrete matchday or week in which fixtures are played. Rounds carry the same is_current, finished, and starting_at / ending_at fields as stages, and can be enriched with their associated fixtures and statistics via includes.

Together, stages and rounds let you reconstruct how a competition is structured from start to finish and determine which phase is currently underway.

Endpoints

Stages:

GET All Stages returns all stages available in your subscription.

GET https://api.sportmonks.com/v3/football/stages?api_token=YOUR_TOKEN

GET Stage by ID returns a specific stage.

GET https://api.sportmonks.com/v3/football/stages/{stage_id}?api_token=YOUR_TOKEN

GET Stages by Season ID returns all stages linked to a given season. This was the most common starting point for building a bracket view before we launced the GET Brackets by Season ID endpoint.

GET https://api.sportmonks.com/v3/football/stages/seasons/{season_id}?api_token=YOUR_TOKEN

GET Stages by Search by Name returns stages matching a name query.

GET https://api.sportmonks.com/v3/football/stages/search/{name}?api_token=YOUR_TOKEN
Rounds:

GET All Rounds returns all rounds available within your subscription.

GET https://api.sportmonks.com/v3/football/rounds?api_token=YOUR_TOKEN

GET Round by ID returns a specific round.

GET https://api.sportmonks.com/v3/football/rounds/{round_id}?api_token=YOUR_TOKEN

GET Rounds by Season ID returns all rounds for a given season.

GET https://api.sportmonks.com/v3/football/rounds/seasons/{season_id}?api_token=YOUR_TOKEN

GET Rounds by Search by Name returns rounds matching a name query.

GET https://api.sportmonks.com/v3/football/rounds/search/{name}?api_token=YOUR_TOKEN

Includes

Stage includes: league, season, type, sport, rounds, currentRound, groups, fixtures, aggregates, topscorers, statistics.

Round includes: sport, league, season, stage, fixtures, statistics.

For a bracket view, use the GET Brackets by Season ID

GET https://api.sportmonks.com/v3/football/seasons/{season_id}/brackets

Standings within stages

For group-stage competitions such as the Champions League or domestic cup group phases, standings can be filtered by stage ID. Table-based stages (regular season, group stages) produce standings; knockout stages do not. You can use the type field on each stage to determine which format applies before querying standings.

GET https://api.sportmonks.com/v3/football/standings/seasons/{season_id}?stage_ids={stage_id}&api_token=YOUR_TOKEN

 

What you can build with stage and round data

– Bracket visualisations — render the full progression of a cup or tournament from group stage through to the final, with results populating each branch as rounds complete.
– Group stage tables — combine stage data with the standings endpoint to show each group’s table within a multi-group phase
– Matchday navigation — use rounds with is_current and fixtures included to display the active matchday and allow navigation to previous or upcoming rounds
– Competition structure pages — display all stages and their dates for an upcoming season before it begins, showing fans how the competition is laid out
– Knockout draw displays — query a knockout stage’s rounds and associated fixtures to render a draw bracket with teams and results filling in over time
– Multi-stage season overviews — for leagues with split seasons or playoff phases (common in Nordic and Eastern European leagues), surface each phase separately with its own results and standings

Availability

Stage and round data are included in all Starter, Growth, Pro, and Enterprise plans. The competitions available to you depend on your plan and the leagues you select. Historical stages and rounds beyond the 3-season limit are available via the historical data add-on, with a one-time fee of € 29 for Starter subscribers. Enterprise plans include full historical access by default.

You can explore and test the stages and rounds endpoints using the Sportmonks Postman collection or the API tester in MySportmonks.

Try it free ; all paid plans include a 14-day free trial, and the forever-free plan gives you immediate access to the Danish Superliga and Scottish Premiership with no credit card required.

FAQs about tournament brackets

How do I retrieve the full bracket structure for a competition?
Start with GET Stages by Season ID to retrieve all phases of the competition. Add rounds and fixtures as includes to get the complete structure in one request. For group-stage competitions, also query standings filtered by stage ID to get each group's table.
How do I tell whether a stage uses a table format or a knockout format?
Use the type field on the stage entity to identify the stage's format. Knockout stages will return empty standings if queried, which you can use as a programmatic fallback to exclude them from table-based views.
Can I get the current active round across a season?
Yes. Each round includes an is_current boolean. You can also use the currentRound include on a stage to return only the active round for that phase, without fetching all rounds.
Can I retrieve bracket data for historical tournaments?
Yes. All stage and round endpoints support historical seasons within your subscription. Seasons older than three years require the historical data add-on, available from €29 as a one-time purchase.
Is stage and round data available on all plans?
Yes. Stage and round data is included in all Starter, Growth, Pro, and Enterprise plans.

Written by David Jaja

David Jaja is a technical content manager at Sportmonks, where he makes complex football data easier to understand for developers and businesses. With a background in frontend development and technical writing, he helps bridge the gap between technology and sports data. Through clear, insightful content, he ensures Sportmonks' APIs are accessible and easy to use, empowering developers to build standout football applications