Topscorers standings
In this tutorial, we will teach you how to request the top scorers per stage and the entire season.
Let’s start right away.

Top scorers by season id

You can use the top scorers by season id endpoint if you want to request all the top scorers per stage* of a season. The endpoint returns the top 25 players per type: goals, cards and assists. *Please check our stages tutorial for more information
Let's say you want to request the topscorers of the English Premier League season 20/21 (season id: 17420):
Request
Response
Field Description
https://soccer.sportmonks.com/api/v2.0/topscorers/season/17420?api_token={API_TOKEN}
{
"data": {
"id": 17420,
"name": "2020/2021",
"league_id": 8,
"is_current_season": true,
"current_round_id": 201968,
"current_stage_id": 77448322,
"goalscorers": {
"data": [
{
"position": 1,
"season_id": 17420,
"player_id": 4313,
"team_id": 6,
"stage_id": 77448322,
"goals": 8,
"penalty_goals": 0,
"type": "goals"
},
{
"position": 2,
"season_id": 17420,
"player_id": 5141,
"team_id": 13,
"stage_id": 77448322,
"goals": 7,
"penalty_goals": 0,
"type": "goals"
},
{
"position": 3,
"season_id": 17420,
"player_id": 1175,
"team_id": 71,
"stage_id": 77448322,
"goals": 6,
"penalty_goals": 0,
"type": "goals"
},
{
"position": 4,
"season_id": 17420,
"player_id": 4125,
"team_id": 8,
"stage_id": 77448322,
"goals": 6,
"penalty_goals": 2,
"type": "goals"
},
{
"position": 5,
"season_id": 17420,
"player_id": 1182,
"team_id": 42,
"stage_id": 77448322,
"goals": 6,
"penalty_goals": 4,
"type": "goals"
},
{
"position": 6,
"season_id": 17420,
"player_id": 997,
"team_id": 6,
"stage_id": 77448322,
"goals": 5,
"penalty_goals": 1,
"type": "goals"
},
{
"position": 7,
"season_id": 17420,
"player_id": 1108,
"team_id": 51,
"stage_id": 77448322,
"goals": 5,
"penalty_goals": 2,
"type": "goals"
},
Season Field Description
Field
Description
id
The unique id of the current stage
name
The name of the stage
league_id
The unique league id the stage belongs to
season_id
The unique id of the current season
round_id
The unique id of the current round
round_name
The name of the round
type
Indicates what kind of type this stage is
stage_id
The unique id of the current stage
stage_name
The name of the stage
Topscorers Field Description
Field
Description
position
The actual position in the rankings in the stage
player_id
The unique player id of the player in that position in the stage
team_id
The unique id of the the player plays for
stage_id
The unique id of the current stage
goals
The total number of goals the player has scored in the stage
penalty_goals
The total number of penalty goals the player has scored in the stage
type
The type of the standings. Possible values are: goals, cards or assists
In the response example, we only included the goalscorers type. If you look at the complete response you will also see the assists and card scorers.
Naturally, you can also enrich the response by using includes. However, you need to prefix the include.
Please read the responses carefully. Sometimes the standings for cards are based on points instead of the total amount of cards. A red card is worth 2 points and a yellow card 1.

Enriching your request

What is prefixing exactly? With nested includes, you add the additional information at the end of the include, i.e., lineup.player
With prefixing, it’s just the other way around. You will need to prefix every available include with the actual include you’re looking for. So, for example, if you want to have additional information about the goalscorers and team, you will need to include goalscorers.player and goalscorers.team.
A list of available includes are:
  • goalscorers.player
  • goalscorers.team
  • assistscorers.player
  • assistscorers.team
  • cardscorer.player
  • cardscorers.team
We're going to only show you additional information about the goalscorers for this tutorial:
Request
Response
https://soccer.sportmonks.com/api/v2.0/topscorers/season/17420?api_token={API_TOKEN}&include=goalscorers.player,goalscorers.team
{
"data": {
"id": 17420,
"name": "2020/2021",
"league_id": 8,
"is_current_season": true,
"current_round_id": 201968,
"current_stage_id": 77448322,
"goalscorers": {
"data": [
{
"position": 1,
"season_id": 17420,
"player_id": 4313,
"team_id": 6,
"stage_id": 77448322,
"goals": 8,
"penalty_goals": 0,
"type": "goals",
"player": {
"data": {
"player_id": 4313,
"team_id": 6,
"country_id": 712,
"position_id": 4,
"common_name": "H. Son",
"display_name": "Heung-Min Son",
"fullname": "Heung-Min Son",
"firstname": "Heung-Min",
"lastname": "Son",
"nationality": "Korea Republic",
"birthdate": "08/07/1992",
"birthcountry": "Korea Republic",
"birthplace": "Chuncheon",
"height": "183 cm",
"weight": "78 kg",
"image_path": "https://cdn.sportmonks.com/images/soccer/players/25/4313.png"
}
},
"team": {
"data": {
"id": 6,
"legacy_id": 148,
"name": "Tottenham Hotspur",
"short_code": "TOT",
"twitter": "@SpursOfficial",
"country_id": 462,
"national_team": false,
"founded": 1882,
"logo_path": "https://cdn.sportmonks.com/images//soccer/teams/6/6.png",
"venue_id": 281313,
"current_season_id": 17420
}
}
},
{
"position": 2,
"season_id": 17420,
"player_id": 5141,
"team_id": 13,
"stage_id": 77448322,
"goals": 7,
"penalty_goals": 0,
"type": "goals",
"player": {
"data": {
"player_id": 5141,
"team_id": 13,
"country_id": 462,
"position_id": 4,
"common_name": "D. Calvert-Lewin",
"display_name": "Dominic Calvert-Lewin",
"fullname": "Dominic Calvert-Lewin",
"firstname": "Dominic",
"lastname": "Calvert-Lewin",
"nationality": "England",
"birthdate": "16/03/1997",
"birthcountry": "England",
"birthplace": "Sheffield",
"height": "176 cm",
"weight": "71 kg",
"image_path": "https://cdn.sportmonks.com/images/soccer/players/21/5141.png"
}
},
"team": {
"data": {
"id": 13,
"legacy_id": 165,
"name": "Everton",
"short_code": "EVE",
"twitter": "@Everton",
"country_id": 462,
"national_team": false,
"founded": 1878,
"logo_path": "https://cdn.sportmonks.com/images//soccer/teams/13/13.png",
"venue_id": 12,
"current_season_id": 17420
}
}
},
As you can see, you now have more information about both the player himself and his team.

Aggregated Topscorers

As mentioned before, the previous request will give you all the top scorers of goals, cards and assist per stage. But what if you want the total amount of a season? We have the aggregated topscorers endpoint for this.
This endpoint is often used for cups like the UEFA Champions and Europa League. The preliminary stages for these cups are not included in the response as we follow the official UEFA guidelines.
https://soccer.sportmonks.com/api/v2.0/topscorers/season/{ID}/aggregated?api_token={API_TOKEN}
The response is the same as the previous one. The only difference is that it will give you a list of the entire season or the cup’s top scorers. You can also enrich the data response you get by using includes.

Enriching your request again

You will need to prefix every available include with the actual include you’re looking for. For example, if you want to have additional information about the goalscorers and team, you will need to include aggregatedGoalscorers.player and aggregatedGoalscorers.team.
A list of available includes are:
  • aggregatedGoalscorers.player
  • aggregatedGoalscorers.team
  • aggregatedAssistscorers.player
  • aggregatedAssistscorers.team
  • aggregatedCardscorers.player
  • aggregatedCardscorers.team
https://soccer.sportmonks.com/api/v2.0/topscorers/season/{ID}?api_token={API_TOKEN}&include=aggregatedGoalscorers.player,aggregatedGoalscorers.team