Live now!

Progress of current post

How-to build a football news website using Sportmonks’ Football API

Welcome to our guide on constructing a football news website using Sportmonks’ Football API. In this detailed walkthrough, we’ll explore the ins and outs of building a platform dedicated to football news, highlighting the essential steps and demonstrating how to leverage our API effectively.

Let’s begin the journey of crafting your football news website with Sportmonks’ Football API!

Published 15 May 2024
Last updated 10 December 2024
Wesley Van Rooij
How-to build a football news website using Sportmonks’ Football API
Contents

What is a Football News Website?

A football news website serves as a comprehensive platform dedicated to providing enthusiasts with up-to-date information and insights about the world of football. It offers a diverse range of content, including match updates, player news, transfer rumours, analysis, and more, catering to the varied interests of football fans worldwide.

These websites are hubs for football enthusiasts to stay informed about the latest sports developments, spanning various leagues and tournaments. Whether it’s the English Premier League, Eredivisie, La Liga, Serie A, or international competitions like the UEFA Champions League and European Championship, a football news website ensures fans are well-informed and engaged with the latest happenings in the world of football.

So, why build a football news website using Sportmonks’ Football API? Let’s explore the reasons behind this choice.

Post-Match Football News API: Enhancing Your Football Application

In addition to pre-match news coverage, our Post-Match Football News API offers real-time updates on the latest football events. Powered by AI and developed in collaboration with United Robots, renowned for their AI news services, our articles provide comprehensive post-match news articles based on match results, statistics, goals, injuries, and other significant match events. Leveraging our reliable and up-to-date football data, you can promptly deliver instant updates to your users following the final whistle, enriching their experience and driving engagement within your football application.

Seamless integration for your development needs

Our Football News API is meticulously designed for effortless integration, streamlining the process for developers to incorporate it into their applications. With clear documentation and dedicated support from our team, you can seamlessly integrate our Football API into your existing systems.

Unmatched Affordability without Compromising Quality

We believe in making premium football news accessible without unnecessary expense. That’s why our Football News API offers unmatched affordability, catering to various budgets while maintaining high-quality content and service standards.

Comprehensive Coverage of Top Leagues

Our Football News API delivers comprehensive post-match analysis for top leagues, including the Premier League, Serie A, La Liga, Eredivisie, and the Champions League. Additionally, we provide post-match football news coverage for the European Championship, ensuring your football application stays updated with the latest developments.

HOW TO USE THE FOOTBALL NEWS API 

STEP 1: Assemble your tools

Begin by ensuring you have all the necessary tools to initiate your football project. Here’s what you’ll require:

  • API Token: To kickstart your project, obtain your Sportmonks API token. If you haven’t acquired one yet, visit MySportmonks and generate your token.
  • Code Editor: A reliable code editor is essential for crafting and refining your page’s code. Visual Studio Code is recommended, but you can use any editor of your preference.
  • Postman (Optional): While not mandatory, installing Postman can significantly aid in testing and debugging your API requests. For detailed instructions on using the Sportmonks Football API with Postman, refer to our Postman Guide.

With these tools at your disposal, you’re ready to begin constructing your football application with Sportmonks’ Football API. Let’s dive in!

STEP 2: SELECT YOUR FEATURED LEAGUES

With our tools at hand, let’s select the football leagues that align with our news coverage.

Consider which football leagues are pivotal for your news updates. Will you focus on a select few like the Premier League, Serie A, La Liga, Eredivisie, and the Champions League? Remember, our news coverage is tailored to these leagues, ensuring comprehensive post-match analysis. Additionally, we provide extensive coverage of post-match football news for the EUROs.

Ensure that the leagues you choose are included in your subscription plan. Review our coverage page to confirm which leagues are supported. For a detailed list of all covered leagues, refer to the “All Leagues” endpoint.

Remember: Our news updates are limited to the leagues mentioned above. If your chosen leagues are included in your plan, you will receive news updates for those leagues. Let’s proceed with selecting the leagues that best suit your news coverage needs!

Step 3: Requesting all post-match football news

In this chapter, we’ll explore how to efficiently retrieve all post-match football news articles using Sportmonks’ Football News API. This method ensures that you can access comprehensive post-match analysis, informing you about the latest developments in your favourite leagues and tournaments.

Option 1: Retrieving All Post-Match Articles

The first option is straightforward: request all available post-match articles within your subscription. You can effortlessly retrieve all available post-match news articles in your subscription by accessing the provided URL and authorising the request with your API token.

Here’s the URL you’ll need to use:

https://api.sportmonks.com/v3/football/news/post-match?api_token=YOUR_TOKEN

However, if you require more detailed articles and fixture information, you’ll need to incorporate additional includes.

You can add the lines and fixture includes for more info: 

https://api.sportmonks.com/v3/football/news/post-match?api_token=YOUR_TOKEN&include=lines;fixture

Understanding the response

Upon receiving the response, you’ll notice various essential details, including the unique article ID, fixture details, league information, article title, and type (either “pre-match” or “post-match”). Check a complete example on the right. 

Option 2: Filtering Post-Match Articles

Sometimes, you may want to narrow down your search and focus on specific leagues. For instance, suppose you’re particularly interested in articles related to the Bundesliga. In that case, you can filter the results accordingly.

Here’s how you can filter for articles specific to the Bundesliga:

https://api.sportmonks.com/v3/football/news/post-match?api_token=YOUR_TOKEN&include=lines;league&filters=newsitemLeagues:82

By including this filter in your request, you’ll receive post-match articles exclusively from the Bundesliga, allowing you to tailor your news consumption to your preferences.

{
  "data": [
    {
      "id": 2796,
      "fixture_id": 18841626,
      "league_id": 8,
      "title": "Aston Villa took command from the start against Everton",
      "type": "postmatch"
    },
    {
      "id": 2848,
      "fixture_id": 18841665,
      "league_id": 8,
      "title": "Liverpool keep on winning and now have four straight wins",
      "type": "postmatch"
    },
    {
      "id": 2864,
      "fixture_id": 18841664,
      "league_id": 8,
      "title": "In-form Manchester City win again in game against West Ham",
      "type": "postmatch"
    },
    {
      "id": 2865,
      "fixture_id": 18841661,
      "league_id": 8,
      "title": "Wilson scores as Newcastle sink Brentford",
      "type": "postmatch"
    },
    {
      "id": 2866,
      "fixture_id": 18841663,
      "league_id": 8,
      "title": "Tottenham beat Sheffield United and continue winning run",
      "type": "postmatch"
    },
    {
      "id": 2867,
      "fixture_id": 18841660,
      "league_id": 8,
      "title": "Fair win for Brighton against Manchester United",
      "type": "postmatch"
    },
    {
      "id": 2868,
      "fixture_id": 18841659,
      "league_id": 8,
      "title": "Vinicius got the decider when Fulham sink Luton",
      "type": "postmatch"
    },
    {
      "id": 2869,
      "fixture_id": 18841657,
      "league_id": 8,
      "title": "Aston Villa beat Crystal Palace at Villa Park",
      "type": "postmatch"
    },
    {
      "id": 2870,
      "fixture_id": 18841656,
      "league_id": 8,
      "title": "Chelsea draw away to Bournemouth",
      "type": "postmatch"
    },
    {
      "id": 2871,
      "fixture_id": 18841658,
      "league_id": 8,
      "title": "Trossard got the decider when Arsenal sink Everton",
      "type": "postmatch"
    },
    {
      "id": 2872,
      "fixture_id": 18841651,
      "league_id": 8,
      "title": "Edouard's two goals behind Crystal Palace's win against Wolverhampton",
      "type": "postmatch"
    },
    {
      "id": 2873,
      "fixture_id": 18841646,
      "league_id": 8,
      "title": "Arsenal beat Manchester United",
      "type": "postmatch"
    },
    {
      "id": 2874,
      "fixture_id": 18841652,
      "league_id": 8,
      "title": "Fair win for Liverpool against Aston Villa",
      "type": "postmatch"
    },
    {
      "id": 2875,
      "fixture_id": 18841634,
      "league_id": 8,
      "title": "West Ham win 3-1 at home against Chelsea",
      "type": "postmatch"
    },
    {
      "id": 2876,
      "fixture_id": 18841627,
      "league_id": 8,
      "title": "Ödegaard the hero for Arsenal against Crystal Palace",
      "type": "postmatch"
    },
    {
      "id": 2877,
      "fixture_id": 18841641,
      "league_id": 8,
      "title": "Sterling's two goals behind Chelsea's win against Luton",
      "type": "postmatch"
    },
    {
      "id": 2878,
      "fixture_id": 18841636,
      "league_id": 8,
      "title": "Dejan Kulusevski and James Maddison got one each in Tottenham win",
      "type": "postmatch"
    },
    {
      "id": 2879,
      "fixture_id": 18841639,
      "league_id": 8,
      "title": "Clear win for West Ham over Brighton at The American Express Community Stadium",
      "type": "postmatch"
    },
    {
      "id": 2880,
      "fixture_id": 18841643,
      "league_id": 8,
      "title": "Nottingham Forest fell to Manchester United despite half-time lead",
      "type": "postmatch"
    },
    {
      "id": 2881,
      "fixture_id": 18841642,
      "league_id": 8,
      "title": "Kalajdzic scores as Wolverhampton sink Everton",
      "type": "postmatch"
    },
    {
      "id": 2882,
      "fixture_id": 18841638,
      "league_id": 8,
      "title": "Crystal Palace draw away to Brentford",
      "type": "postmatch"
    },
    {
      "id": 2883,
      "fixture_id": 18841637,
      "league_id": 8,
      "title": "Points were shared when Arsenal entertained Fulham",
      "type": "postmatch"
    },
    {
      "id": 2884,
      "fixture_id": 18841640,
      "league_id": 8,
      "title": "Cash scores 2 in Aston Villa win over Burnley",
      "type": "postmatch"
    },
    {
      "id": 2885,
      "fixture_id": 18841644,
      "league_id": 8,
      "title": "Newcastle dropped the lead and saw themselves defeated",
      "type": "postmatch"
    },
    {
      "id": 2886,
      "fixture_id": 18841645,
      "league_id": 8,
      "title": "Manchester City beat Sheffield United at Bramall Lane",
      "type": "postmatch"
    }
  ],
  "pagination": {
    "count": 25,
    "per_page": 25,
    "current_page": 1,
    "next_page": "https://api.sportmonks.com/v3/football/news/post-match?page=2",
    "has_more": true
  },
{
  "data": [
    {
      "id": 2796,
      "fixture_id": 18841626,
      "league_id": 8,
      "title": "Aston Villa took command from the start against Everton",
      "type": "postmatch",
      "lines": [
        {
          "id": 9382,
          "newsitem_id": 2796,
          "text": "Aston Villa were in control from the first to final whistle in the Premier League game against Everton on Sunday. They increased their lead in the second half and in the end won 4-0.",
          "type": "line"
        },
        {
          "id": 9386,
          "newsitem_id": 2796,
          "text": "Aston Villa further increased the lead as Jhon Durán found the net in the 75th minute.",
          "type": "line"
        },
        {
          "id": 9387,
          "newsitem_id": 2796,
          "text": "With this victory, Aston Villa have got their first win of the season, while Everton are on a run of two straight defeats. Both teams have played two games.",
          "type": "line"
        },
        {
          "id": 9388,
          "newsitem_id": 2796,
          "text": "The previous meeting between the teams ended in a 2-0 away win for Aston Villa in February.",
          "type": "line"
        },
        {
          "id": 9383,
          "newsitem_id": 2796,
          "text": "Aston Villa scored the first goal when John McGinn netted after 18 minutes, with an assist by Leon Bailey, making it 1-0.",
          "type": "line"
        },
        {
          "id": 9384,
          "newsitem_id": 2796,
          "text": "In the 24th minute Douglas Luiz increased the lead for Aston Villa.",
          "type": "line"
        },
        {
          "id": 9385,
          "newsitem_id": 2796,
          "text": "Straight after the break, Leon Bailey made his mark and increased the team's lead.",
          "type": "line"
        },
        {
          "id": 9389,
          "newsitem_id": 2796,
          "text": "Aston Villa next Premier League games are against Burnley (away) on 27 August, Liverpool (away) on 3 September and Crystal Palace (home) on 16 September. Everton play Wolverhampton (home) on 26 August, Sheffield United (away) on 2 September and Arsenal (home) on 16 September.",
          "type": "line"
        },
        {
          "id": 9390,
          "newsitem_id": 2796,
          "text": "Elsewhere in the Premier League Nottingham Forest picked up a narrow 2-1 victory against Sheffield United, Brentford defeated 3-0 Fulham, Liverpool won 3-1 against Bournemouth, Brighton won 4-1 against Wolverhampton, Tottenham won 2-0 against Manchester United, Manchester City won 1-0 against Newcastle and West Ham won 3-1 against Chelsea.",
          "type": "line"
        }
      ],
      "fixture": {
        "id": 18841626,
        "sport_id": 1,
        "league_id": 8,
        "season_id": 21646,
        "stage_id": 77464011,
        "group_id": null,
        "aggregate_id": null,
        "round_id": 307066,
        "state_id": 5,
        "venue_id": 5,
        "name": "Aston Villa vs Everton",
        "starting_at": "2023-08-20 13:00:00",
        "result_info": "Aston Villa won after full-time.",
        "leg": "1/1",
        "details": null,
        "length": 90,
        "placeholder": false,
        "has_odds": true,
        "starting_at_timestamp": 1692536400
      }
    },
    {
      "id": 2848,
      "fixture_id": 18841665,
      "league_id": 8,
      "title": "Liverpool keep on winning and now have four straight wins",
      "type": "postmatch",
      "lines": [
        {
          "id": 9547,
          "newsitem_id": 2848,
          "text": "Wolves took an early lead when Hee-chan Hwang netted after 7 minutes, with an assist by Pedro Neto, making it 1-0.",
          "type": "line"
        },
        {
          "id": 9550,
          "newsitem_id": 2848,
          "text": "Liverpool scored after 90 minutes to make the score 1-3.",
          "type": "line"
        },
        {
          "id": 9551,
          "newsitem_id": 2848,
          "text": "Wolverhampton have now won one and lost four of their last five games having scored 5 and conceded 11. Meanwhile Liverpool have four wins and one draw with 12 goals for and 4 against.",
          "type": "line"
        },
        {
          "id": 9552,
          "newsitem_id": 2848,
          "text": "Wolverhampton remains in 15th place and Liverpool is in third.",
          "type": "line"
        },
        {
          "id": 9554,
          "newsitem_id": 2848,
          "text": "Liverpool have scored 12: six each home and away.",
          "type": "line"
        },
        {
          "id": 9553,
          "newsitem_id": 2848,
          "text": "Wolverhampton have scored 5 goals in total in the Premier League: two at home and three away.",
          "type": "line"
        },
        {
          "id": 9555,
          "newsitem_id": 2848,
          "text": "The previous meeting between the teams ended in a 2-0 home win for Liverpool in March.",
          "type": "line"
        },
        {
          "id": 9546,
          "newsitem_id": 2848,
          "text": "It’s smooth sailing for Liverpool in the Premier League and they claimed another victory at Molineux Stadium on Saturday in the game against Wolverhampton and made it four in a row. They won 3-1 over Wolves.",
          "type": "line"
        },
        {
          "id": 9548,
          "newsitem_id": 2848,
          "text": "In the 55th minute, Cody Gakpo equalised for Liverpool, with an assist by Mohamed Salah.",
          "type": "line"
        },
        {
          "id": 9549,
          "newsitem_id": 2848,
          "text": "With only five minutes left to play, the Reds' Andrew Robertson took the lead as he found the net, with an assist by Mohamed Salah.",
          "type": "line"
        },
        {
          "id": 9556,
          "newsitem_id": 2848,
          "text": "Wolverhampton next Premier League games are against Luton (away) on 23 September, Manchester City (home) on 30 September and Aston Villa (home) on 8 October. Liverpool play West Ham (home) on 24 September, Tottenham (away) on 30 September and Brighton (away) on 8 October.",
          "type": "line"
        },
        {
          "id": 9557,
          "newsitem_id": 2848,
          "text": "Elsewhere in the Premier League Aston Villa won 3-1 against Crystal Palace, Fulham picked up a narrow 1-0 victory against Luton, Brighton defeated 3-1 Manchester United, Tottenham won 2-1 against Sheffield United and Manchester City won 3-1 against West Ham.",
          "type": "line"
        }
      ],

//and much more!
{
  "data": [
    {
      "id": 4040,
      "fixture_id": 18863569,
      "league_id": 82,
      "title": "VfL Bochum 1848 beat TSG Hoffenheim 3-2 to end win drought",
      "type": "postmatch",
      "lines": [
        {
          "id": 14824,
          "newsitem_id": 4040,
          "text": "In the 45th minute Felix Passlack increased the lead for VfL Bochum 1848.",
          "type": "line"
        },
        {
          "id": 14827,
          "newsitem_id": 4040,
          "text": "Kevin Stöger also increased the lead for VfL Bochum 1848 in the 64th minute.",
          "type": "line"
        },
        {
          "id": 14829,
          "newsitem_id": 4040,
          "text": "Andrej Kramaric reduced the score for TSG Hoffenheim in the 73rd minute with an assist by David Jurásek.",
          "type": "line"
        },
        {
          "id": 14836,
          "newsitem_id": 4040,
          "text": "TSG Hoffenheim have scored 55: 26 goals at home and 29 goals away.",
          "type": "line"
        },
        {
          "id": 14819,
          "newsitem_id": 4040,
          "text": "VfL Bochum 1848's players were treated to the taste of victory again as they beat TSG Hoffenheim 3-2 at home. It was their first after eight games in a row without a win in the Bundesliga.",
          "type": "line"
        },
        {
          "id": 14822,
          "newsitem_id": 4040,
          "text": "The match was goalless until VfL Bochum 1848 took the lead in the 34th minute through Kevin Stöger, who netted.",
          "type": "line"
        },
        {
          "id": 14835,
          "newsitem_id": 4040,
          "text": "VfL Bochum 1848 have scored 37 goals in total in the Bundesliga: 26 at home and 11 away.",
          "type": "line"
        },
        {
          "id": 14831,
          "newsitem_id": 4040,
          "text": "VfL Bochum 1848 pulled one back again in the 84th minute of the game as Andrej Kramaric found the net, with an assist by Florian Grillitsch.",
          "type": "line"
        },
        {
          "id": 14834,
          "newsitem_id": 4040,
          "text": "VfL Bochum 1848 have now won one, drawn two and lost two of their last five games having scored 7 and conceded eight. Meanwhile TSG Hoffenheim have two wins with 11 goals for and 13 against.",
          "type": "line"
        },
        {
          "id": 14837,
          "newsitem_id": 4040,
          "text": "VfL Bochum 1848 next Bundesliga games are against FC Union Berlin (away) on 5 May, Bayer 04 Leverkusen (home) on 12 May and Werder Bremen (away) on 18 May. TSG Hoffenheim play RB Leipzig (home) on 3 May, Darmstadt 98 (away) on 12 May and FC Bayern München (home) on 18 May.",
          "type": "line"
        }
      ],
      "fixture": {
        "id": 18863569,
        "sport_id": 1,
        "league_id": 82,
        "season_id": 21795,
        "stage_id": 77464501,
        "group_id": null,
        "aggregate_id": null,
        "round_id": 309302,
        "state_id": 5,
        "venue_id": 378,
        "name": "VfL Bochum 1848 vs TSG Hoffenheim",
        "starting_at": "2024-04-26 18:30:00",
        "result_info": "VfL Bochum 1848 won after full-time.",
        "leg": "1/1",
        "details": null,
        "length": 90,
        "placeholder": false,
        "has_odds": true,
        "starting_at_timestamp": 1714156200
      }
    },
    {
      "id": 4057,
      "fixture_id": 18863560,
      "league_id": 82,
      "title": "RB Leipzig's unbeaten run continues",
      "type": "postmatch",
      "lines": [
        {
          "id": 14953,
          "newsitem_id": 4057,
          "text": "With this win, RB Leipzig have four straight victories.",
          "type": "line"
        },
        {
          "id": 14960,
          "newsitem_id": 4057,
          "text": "Borussia Dortmund have scored 59: 28 goals at home and 31 goals away.",
          "type": "line"
        },
        {
          "id": 14937,
          "newsitem_id": 4057,
          "text": "RB Leipzig remain hard to beat in the Bundesliga. The 4-1 win at home to Borussia Dortmund means they notched up a eighth consecutive game without defeat.",
          "type": "line"
        },
        {
          "id": 14938,
          "newsitem_id": 4057,
          "text": "RB Leipzig took an early lead when Jadon Sancho netted in the 20th minute, making it 1-0.",
          "type": "line"
        },
        {
          "id": 14942,
          "newsitem_id": 4057,
          "text": "RB Leipzig equalised to make it 1-1, as Loïs Openda found the net, with an assist by Xavi Simons, in the 23rd minute.",
          "type": "line"
        },
        {
          "id": 14945,
          "newsitem_id": 4057,
          "text": "RB Leipzig took the lead just before the half-time whistle as Benjamin Sesko scored.",
          "type": "line"
        },
        {
          "id": 14948,
          "newsitem_id": 4057,
          "text": "Straight after the break, Mohamed Simakan scored and increased the team's lead.",
          "type": "line"
        },
        {
          "id": 14951,
          "newsitem_id": 4057,
          "text": "Christoph Baumgartner increased RB Leipzig's lead with an assist by Benjamin Henrichs, in the 80th minute.",
          "type": "line"
        },
        {
          "id": 14956,
          "newsitem_id": 4057,
          "text": "RB Leipzig have now won four and drawn one of their last five games having scored 13 and conceded three. Meanwhile Borussia Dortmund have two wins and one draw with 6 goals for and 7 against.",
          "type": "line"
        },
        {
          "id": 14958,
          "newsitem_id": 4057,
          "text": "RB Leipzig have scored 73 goals in total in the Bundesliga: 39 at home and 34 away.",
          "type": "line"
        },
        {
          "id": 14962,
          "newsitem_id": 4057,
          "text": "RB Leipzig next Bundesliga games are against TSG Hoffenheim (away) on 3 May, Werder Bremen (home) on 11 May and Eintracht Frankfurt (away) on 18 May. Borussia Dortmund play FC Augsburg (home) on 4 May, FSV Mainz 05 (away) on 11 May and Darmstadt 98 (home) on 18 May.",
          "type": "line"
        },
        {
          "id": 14963,
          "newsitem_id": 4057,
          "text": "Elsewhere in the Bundesliga VfL Bochum 1848 picked up a narrow 3-2 victory against TSG Hoffenheim, FC Bayern München won 2-1 against Eintracht Frankfurt, VfL Wolfsburg won 2-1 against SC Freiburg, Werder Bremen defeated 3-0 FC Augsburg and Bayer 04 Leverkusen drew 2-2 against VfB Stuttgart.",
          "type": "line"
        }
      ],
      "fixture": {
        "id": 18863560,
        "sport_id": 1,
        "league_id": 82,
        "season_id": 21795,
        "stage_id": 77464501,
        "group_id": null,
        "aggregate_id": null,
        "round_id": 309302,
        "state_id": 5,
        "venue_id": 2637,
        "name": "RB Leipzig vs Borussia Dortmund",
        "starting_at": "2024-04-27 13:30:00",
        "result_info": "RB Leipzig won after full-time.",
        "leg": "1/1",
        "details": null,
        "length": 90,
        "placeholder": false,
        "has_odds": true,
        "starting_at_timestamp": 1714224600
      }
    },

 

{
  "data": [
    {
      "id": 4099,
      "fixture_id": 19101797,
      "league_id": 2,
      "title": "Real Madrid's unbeaten run extended after 2-2 to FC Bayern München",
      "type": "postmatch",
      "lines": [
        {
          "id": 15283,
          "newsitem_id": 4099,
          "text": "The game was the fourth in a row without a win for Real Madrid.",
          "type": "line"
        },
        {
          "id": 15284,
          "newsitem_id": 4099,
          "text": "FC Bayern München have now won two, drawn two and lost one of their last five games having scored 8 and conceded five. Meanwhile Real Madrid have one win and four draws with 8 goals for and 7 against.",
          "type": "line"
        },
        {
          "id": 15280,
          "newsitem_id": 4099,
          "text": "Real Madrid enjoyed a great game in the Champions League and their 11th game in a row without defeat came away to FC Bayern München. The game finished 2-2.",
          "type": "line"
        },
        {
          "id": 15281,
          "newsitem_id": 4099,
          "text": "The visiting team FC Bayern München took an early lead when Vinicius Junior  netted after 24 minutes, with an assist by Toni Kroos, making it 1-0.",
          "type": "line"
        },
        {
          "id": 15282,
          "newsitem_id": 4099,
          "text": "Straight after the break, Leroy Sané made his mark and equalised for FC Bayern München.",
          "type": "line"
        },
        {
          "id": 15285,
          "newsitem_id": 4099,
          "text": "FC Bayern München have scored 20 goals in total in the Champions League: 12 at home and eight away.",
          "type": "line"
        },
        {
          "id": 15286,
          "newsitem_id": 4099,
          "text": "Real Madrid have scored 24: 12 each home and away.",
          "type": "line"
        },
        {
          "id": 15287,
          "newsitem_id": 4099,
          "text": "FC Bayern München next Champions League games are against Real Madrid (away) on 8 May. Real Madrid play FC Bayern München (home) on 8 May.",
          "type": "line"
        }
      ],
      "fixture": {
        "id": 19101797,
        "sport_id": 1,
        "league_id": 2,
        "season_id": 21638,
        "stage_id": 77463968,
        "group_id": null,
        "aggregate_id": 52048,
        "round_id": null,
        "state_id": 5,
        "venue_id": 53,
        "name": "FC Bayern München vs Real Madrid",
        "starting_at": "2024-04-30 19:00:00",
        "result_info": "Game ended in draw.",
        "leg": "1/2",
        "details": null,
        "length": 90,
        "placeholder": false,
        "has_odds": true,
        "starting_at_timestamp": 1714503600
      }
    },
    {
      "id": 4103,
      "fixture_id": 19101795,
      "league_id": 2,
      "title": "1-0 win for Borussia Dortmund over Paris Saint Germain – Füllkrug was the hero",
      "type": "postmatch",
      "lines": [
        {
          "id": 15297,
          "newsitem_id": 4103,
          "text": "Borussia Dortmund won 1-0 at home to Paris Saint Germain in the Champions League. Füllkrug scored the only goal of the game in the first half.",
          "type": "line"
        },
        {
          "id": 15298,
          "newsitem_id": 4103,
          "text": "The match was even in terms of goals until Borussia Dortmund took the lead in the 36th minute through Niclas Füllkrug, who netted, with an assist by Nico Schlotterbeck.",
          "type": "line"
        },
        {
          "id": 15299,
          "newsitem_id": 4103,
          "text": "Borussia Dortmund have now won three, drawn one and lost one of their last five games having scored 9 and conceded five. Meanwhile Paris Saint Germain have three wins with 10 goals for and 6 against.",
          "type": "line"
        },
        {
          "id": 15300,
          "newsitem_id": 4103,
          "text": "Borussia Dortmund have scored 16 goals in total in the Champions League: 10 at home and six away.",
          "type": "line"
        },
        {
          "id": 15303,
          "newsitem_id": 4103,
          "text": "Elsewhere in the Champions League FC Bayern München drew 2-2 against Real Madrid.",
          "type": "line"
        },
        {
          "id": 15301,
          "newsitem_id": 4103,
          "text": "Paris Saint Germain have scored 19: 10 goals at home and nine goals away.",
          "type": "line"
        },
        {
          "id": 15302,
          "newsitem_id": 4103,
          "text": "Borussia Dortmund next Champions League games are against Paris Saint Germain (away) on 7 May. Paris Saint Germain play Borussia Dortmund (home) on 7 May.",
          "type": "line"
        }
      ],
      "fixture": {
        "id": 19101795,
        "sport_id": 1,
        "league_id": 2,
        "season_id": 21638,
        "stage_id": 77463968,
        "group_id": null,
        "aggregate_id": 52047,
        "round_id": null,
        "state_id": 5,
        "venue_id": 2166,
        "name": "Borussia Dortmund vs Paris Saint Germain",
        "starting_at": "2024-05-01 19:00:00",
        "result_info": "Borussia Dortmund won after full-time.",
        "leg": "1/2",
        "details": null,
        "length": 90,
        "placeholder": false,
        "has_odds": true,
        "starting_at_timestamp": 1714590000
      }
    },
    {
      "id": 4183,
      "fixture_id": 19101796,
      "league_id": 2,
      "title": "Hummels scores as Borussia Dortmund sink Paris Saint Germain",
      "type": "postmatch",
      "lines": [
        {
          "id": 15873,
          "newsitem_id": 4183,
          "text": "The second-half goal from Hummels was to be the only goal of the game when Borussia Dortmund won 1-0 away to Paris Saint Germain in the Champions League.",
          "type": "line"
        },
        {
          "id": 15874,
          "newsitem_id": 4183,
          "text": "The first half was goalless, but straight after half-time, Mats Hummels made his mark as he netted, with an assist by Julian Brandt, to give Paris Saint Germain the lead.",
          "type": "line"
        },
        {
          "id": 15875,
          "newsitem_id": 4183,
          "text": "Paris Saint Germain have now won two and lost three of their last five games having scored 8 and conceded seven. Meanwhile Borussia Dortmund have four wins with 9 goals for and 4 against.",
          "type": "line"
        },
        {
          "id": 15876,
          "newsitem_id": 4183,
          "text": "Paris Saint Germain have scored 19 goals in total in the Champions League: 10 at home and nine away.",
          "type": "line"
        },
        {
          "id": 15877,
          "newsitem_id": 4183,
          "text": "Borussia Dortmund have scored 17: 10 goals at home and seven goals away.",
          "type": "line"
        }
      ],
      "fixture": {
        "id": 19101796,
        "sport_id": 1,
        "league_id": 2,
        "season_id": 21638,
        "stage_id": 77463968,
        "group_id": null,
        "aggregate_id": 52047,
        "round_id": null,
        "state_id": 5,
        "venue_id": 131,
        "name": "Paris Saint Germain vs Borussia Dortmund",
        "starting_at": "2024-05-07 19:00:00",
        "result_info": "Borussia Dortmund won after full-time.",
        "leg": "2/2",
        "details": null,
        "length": 90,
        "placeholder": false,
        "has_odds": true,
        "starting_at_timestamp": 1715108400
      }
    },

Step 4: Requesting post-match football news by season

In this chapter, we’ll explore retrieving post-match football news articles by season ID. This method is particularly useful when you want to focus on articles from a specific season, such as the Champions League season 2023/2024.

Retrieving Post-Match Football News by Season ID

You must include the season ID parameter in your request to retrieve articles from a specific season. Let’s walk through the process:

https://api.sportmonks.com/v3/football/news/post-match/seasons/season_id

For example, to access articles from the Champions League season 2023/2024 (season ID: 21638), you’ll use the following request, and just like in Step 3, you can add the lines included to retrieve the news articles. 

https://api.sportmonks.com/v3/football/news/post-match/seasons/21638?api_token=YOUR_TOKEN&include=lines;fixtures

By following these steps, you can effectively retrieve post-match football news articles from a specific season, keeping you updated on the latest happenings in your favourite tournaments.

//Scroll to see the news response

{
  "data": {
    "id": 18842618,
    "sport_id": 1,
    "league_id": 8,
    "season_id": 21646,
    "stage_id": 77464011,
    "group_id": null,
    "aggregate_id": null,
    "round_id": 307175,
    "state_id": 5,
    "venue_id": 281313,
    "name": "Tottenham Hotspur vs Manchester City",
    "starting_at": "2024-05-14 19:00:00",
    "result_info": "Manchester City won after full-time.",
    "leg": "1/1",
    "details": null,
    "length": 90,
    "placeholder": false,
    "has_odds": true,
    "starting_at_timestamp": 1715713200,
    "participants": [
      {
        "id": 6,
        "sport_id": 1,
        "country_id": 462,
        "venue_id": 281313,
        "gender": "male",
        "name": "Tottenham Hotspur",
        "short_code": "TOT",
        "image_path": "https://cdn.sportmonks.com/images/soccer/teams/6/6.png",
        "founded": 1882,
        "type": "domestic",
        "placeholder": false,
        "last_played_at": "2024-05-14 19:00:00",
        "meta": {
          "location": "home",
          "winner": false,
          "position": 5
        }
      },
      {
        "id": 9,
        "sport_id": 1,
        "country_id": 462,
        "venue_id": 151,
        "gender": "male",
        "name": "Manchester City",
        "short_code": "MCI",
        "image_path": "https://cdn.sportmonks.com/images/soccer/teams/9/9.png",
        "founded": 1880,
        "type": "domestic",
        "placeholder": false,
        "last_played_at": "2024-05-14 19:00:00",
        "meta": {
          "location": "away",
          "winner": true,
          "position": 2
        }
      }
    ],
    "statistics": [
      {
        "id": 45756054,
        "fixture_id": 18842618,
        "type_id": 45,
        "participant_id": 9,
        "data": {
          "value": 47
        },
        "location": "away"
      },
      {
        "id": 45750921,
        "fixture_id": 18842618,
        "type_id": 42,
        "participant_id": 9,
        "data": {
          "value": 8
        },
        "location": "away"
      },
      {
        "id": 45750920,
        "fixture_id": 18842618,
        "type_id": 42,
        "participant_id": 6,
        "data": {
          "value": 10
        },
        "location": "home"
      },
      {
        "id": 45758092,
        "fixture_id": 18842618,
        "type_id": 52,
        "participant_id": 6,
        "data": {
          "value": 0
        },
        "location": "home"
      },
      {
        "id": 45758103,
        "fixture_id": 18842618,
        "type_id": 52,
        "participant_id": 9,
        "data": {
          "value": 2
        },
        "location": "away"
      },
      {
        "id": 45758084,
        "fixture_id": 18842618,
        "type_id": 82,
        "participant_id": 6,
        "data": {
          "value": 89
        },
        "location": "home"
      },
      {
        "id": 45758094,
        "fixture_id": 18842618,
        "type_id": 59,
        "participant_id": 6,
        "data": {
          "value": 4
        },
        "location": "home"
      },
      {
        "id": 45758088,
        "fixture_id": 18842618,
        "type_id": 84,
        "participant_id": 6,
        "data": {
          "value": 3
        },
        "location": "home"
      },
      {
        "id": 45759213,
        "fixture_id": 18842618,
        "type_id": 80,
        "participant_id": 6,
        "data": {
          "value": 599
        },
        "location": "home"
      },
      {
        "id": 45764467,
        "fixture_id": 18842618,
        "type_id": 77,
        "participant_id": 6,
        "data": {
          "value": 9
        },
        "location": "home"
      },
      {
        "id": 45760493,
        "fixture_id": 18842618,
        "type_id": 108,
        "participant_id": 6,
        "data": {
          "value": 18
        },
        "location": "home"
      },
      {
        "id": 45759215,
        "fixture_id": 18842618,
        "type_id": 56,
        "participant_id": 9,
        "data": {
          "value": 11
        },
        "location": "away"
      },
      {
        "id": 45768410,
        "fixture_id": 18842618,
        "type_id": 50,
        "participant_id": 9,
        "data": {
          "value": 2
        },
        "location": "away"
      },
      {
        "id": 45760495,
        "fixture_id": 18842618,
        "type_id": 78,
        "participant_id": 9,
        "data": {
          "value": 20
        },
        "location": "away"
      },
      {
        "id": 45758093,
        "fixture_id": 18842618,
        "type_id": 55,
        "participant_id": 6,
        "data": {
          "value": 12
        },
        "location": "home"
      },
      {
        "id": 45759217,
        "fixture_id": 18842618,
        "type_id": 81,
        "participant_id": 9,
        "data": {
          "value": 475
        },
        "location": "away"
      },
      {
        "id": 45758110,
        "fixture_id": 18842618,
        "type_id": 84,
        "participant_id": 9,
        "data": {
          "value": 3
        },
        "location": "away"
      },
      {
        "id": 45758081,
        "fixture_id": 18842618,
        "type_id": 47,
        "participant_id": 6,
        "data": {
          "value": 0
        },
        "location": "home"
      },
      {
        "id": 45758082,
        "fixture_id": 18842618,
        "type_id": 43,
        "participant_id": 6,
        "data": {
          "value": 86
        },
        "location": "home"
      },
      {
        "id": 45763423,
        "fixture_id": 18842618,
        "type_id": 51,
        "participant_id": 6,
        "data": {
          "value": 2
        },
        "location": "home"
      },
      {
        "id": 45763424,
        "fixture_id": 18842618,
        "type_id": 51,
        "participant_id": 9,
        "data": {
          "value": 2
        },
        "location": "away"
      },
      {
        "id": 45760491,
        "fixture_id": 18842618,
        "type_id": 78,
        "participant_id": 6,
        "data": {
          "value": 23
        },
        "location": "home"
      },
      {
        "id": 45758089,
        "fixture_id": 18842618,
        "type_id": 86,
        "participant_id": 6,
        "data": {
          "value": 5
        },
        "location": "home"
      },
      {
        "id": 45758083,
        "fixture_id": 18842618,
        "type_id": 41,
        "participant_id": 6,
        "data": {
          "value": 3
        },
        "location": "home"
      },
      {
        "id": 45758085,
        "fixture_id": 18842618,
        "type_id": 60,
        "participant_id": 6,
        "data": {
          "value": 19
        },
        "location": "home"
      },
      {
        "id": 45758087,
        "fixture_id": 18842618,
        "type_id": 34,
        "participant_id": 6,
        "data": {
          "value": 7
        },
        "location": "home"
      },
      {
        "id": 45758112,
        "fixture_id": 18842618,
        "type_id": 82,
        "participant_id": 9,
        "data": {
          "value": 89
        },
        "location": "away"
      },
      {
        "id": 45760497,
        "fixture_id": 18842618,
        "type_id": 109,
        "participant_id": 9,
        "data": {
          "value": 7
        },
        "location": "away"
      },
      {
        "id": 45762765,
        "fixture_id": 18842618,
        "type_id": 98,
        "participant_id": 6,
        "data": {
          "value": 8
        },
        "location": "home"
      },
      {
        "id": 45759969,
        "fixture_id": 18842618,
        "type_id": 70,
        "participant_id": 6,
        "data": {
          "value": 7
        },
        "location": "home"
      },
      {
        "id": 45758086,
        "fixture_id": 18842618,
        "type_id": 53,
        "participant_id": 6,
        "data": {
          "value": 6
        },
        "location": "home"
      },
      {
        "id": 45758101,
        "fixture_id": 18842618,
        "type_id": 44,
        "participant_id": 9,
        "data": {
          "value": 51
        },
        "location": "away"
      },
      {
        "id": 45758109,
        "fixture_id": 18842618,
        "type_id": 83,
        "participant_id": 9,
        "data": {
          "value": 0
        },
        "location": "away"
      },
      {
        "id": 45769600,
        "fixture_id": 18842618,
        "type_id": 85,
        "participant_id": 6,
        "data": {
          "value": 0
        },
        "location": "home"
      },
      {
        "id": 45758090,
        "fixture_id": 18842618,
        "type_id": 58,
        "participant_id": 6,
        "data": {
          "value": 2
        },
        "location": "home"
      },
      {
        "id": 45763162,
        "fixture_id": 18842618,
        "type_id": 117,
        "participant_id": 9,
        "data": {
          "value": 5
        },
        "location": "away"
      },
      {
        "id": 45769601,
        "fixture_id": 18842618,
        "type_id": 46,
        "participant_id": 6,
        "data": {
          "value": 69
        },
        "location": "home"
      },
      {
        "id": 45769602,
        "fixture_id": 18842618,
        "type_id": 54,
        "participant_id": 6,
        "data": {
          "value": 5
        },
        "location": "home"
      },
      {
        "id": 45759431,
        "fixture_id": 18842618,
        "type_id": 65,
        "participant_id": 6,
        "data": {
          "value": 5
        },
        "location": "home"
      },
      {
        "id": 45759432,
        "fixture_id": 18842618,
        "type_id": 65,
        "participant_id": 9,
        "data": {
          "value": 4
        },
        "location": "away"
      },
      {
        "id": 45758097,
        "fixture_id": 18842618,
        "type_id": 86,
        "participant_id": 9,
        "data": {
          "value": 5
        },
        "location": "away"
      },
      {
        "id": 45758099,
        "fixture_id": 18842618,
        "type_id": 58,
        "participant_id": 9,
        "data": {
          "value": 2
        },
        "location": "away"
      },
      {
        "id": 45759970,
        "fixture_id": 18842618,
        "type_id": 70,
        "participant_id": 9,
        "data": {
          "value": 11
        },
        "location": "away"
      },
      {
        "id": 45761982,
        "fixture_id": 18842618,
        "type_id": 57,
        "participant_id": 9,
        "data": {
          "value": 5
        },
        "location": "away"
      },
      {
        "id": 45758091,
        "fixture_id": 18842618,
        "type_id": 44,
        "participant_id": 6,
        "data": {
          "value": 47
        },
        "location": "home"
      },
      {
        "id": 45758098,
        "fixture_id": 18842618,
        "type_id": 41,
        "participant_id": 9,
        "data": {
          "value": 2
        },
        "location": "away"
      },
      {
        "id": 45758100,
        "fixture_id": 18842618,
        "type_id": 43,
        "participant_id": 9,
        "data": {
          "value": 113
        },
        "location": "away"
      },
      {
        "id": 45758106,
        "fixture_id": 18842618,
        "type_id": 34,
        "participant_id": 9,
        "data": {
          "value": 4
        },
        "location": "away"
      },
      {
        "id": 45758095,
        "fixture_id": 18842618,
        "type_id": 83,
        "participant_id": 6,
        "data": {
          "value": 0
        },
        "location": "home"
      },
      {
        "id": 45758102,
        "fixture_id": 18842618,
        "type_id": 47,
        "participant_id": 9,
        "data": {
          "value": 1
        },
        "location": "away"
      },
      {
        "id": 45758104,
        "fixture_id": 18842618,
        "type_id": 53,
        "participant_id": 9,
        "data": {
          "value": 3
        },
        "location": "away"
      },
      {
        "id": 45758105,
        "fixture_id": 18842618,
        "type_id": 55,
        "participant_id": 9,
        "data": {
          "value": 15
        },
        "location": "away"
      },
      {
        "id": 45758107,
        "fixture_id": 18842618,
        "type_id": 59,
        "participant_id": 9,
        "data": {
          "value": 3
        },
        "location": "away"
      },
      {
        "id": 45758108,
        "fixture_id": 18842618,
        "type_id": 60,
        "participant_id": 9,
        "data": {
          "value": 16
        },
        "location": "away"
      },
      {
        "id": 45764862,
        "fixture_id": 18842618,
        "type_id": 100,
        "participant_id": 9,
        "data": {
          "value": 11
        },
        "location": "away"
      },
      {
        "id": 45759212,
        "fixture_id": 18842618,
        "type_id": 56,
        "participant_id": 6,
        "data": {
          "value": 15
        },
        "location": "home"
      },
      {
        "id": 45760492,
        "fixture_id": 18842618,
        "type_id": 109,
        "participant_id": 6,
        "data": {
          "value": 8
        },
        "location": "home"
      },
      {
        "id": 45762766,
        "fixture_id": 18842618,
        "type_id": 49,
        "participant_id": 6,
        "data": {
          "value": 8
        },
        "location": "home"
      },
      {
        "id": 45760496,
        "fixture_id": 18842618,
        "type_id": 108,
        "participant_id": 9,
        "data": {
          "value": 17
        },
        "location": "away"
      },
      {
        "id": 45759218,
        "fixture_id": 18842618,
        "type_id": 106,
        "participant_id": 9,
        "data": {
          "value": 45
        },
        "location": "away"
      },
      {
        "id": 45759211,
        "fixture_id": 18842618,
        "type_id": 81,
        "participant_id": 6,
        "data": {
          "value": 531
        },
        "location": "home"
      },
      {
        "id": 45769603,
        "fixture_id": 18842618,
        "type_id": 46,
        "participant_id": 9,
        "data": {
          "value": 68
        },
        "location": "away"
      },
      {
        "id": 45769604,
        "fixture_id": 18842618,
        "type_id": 85,
        "participant_id": 9,
        "data": {
          "value": 0
        },
        "location": "away"
      },
      {
        "id": 45769605,
        "fixture_id": 18842618,
        "type_id": 54,
        "participant_id": 9,
        "data": {
          "value": 6
        },
        "location": "away"
      },
      {
        "id": 45759214,
        "fixture_id": 18842618,
        "type_id": 106,
        "participant_id": 6,
        "data": {
          "value": 47
        },
        "location": "home"
      },
      {
        "id": 45762767,
        "fixture_id": 18842618,
        "type_id": 99,
        "participant_id": 6,
        "data": {
          "value": 2
        },
        "location": "home"
      },
      {
        "id": 45762770,
        "fixture_id": 18842618,
        "type_id": 99,
        "participant_id": 9,
        "data": {
          "value": 2
        },
        "location": "away"
      },
      {
        "id": 45764861,
        "fixture_id": 18842618,
        "type_id": 100,
        "participant_id": 6,
        "data": {
          "value": 9
        },
        "location": "home"
      },
      {
        "id": 45762768,
        "fixture_id": 18842618,
        "type_id": 49,
        "participant_id": 9,
        "data": {
          "value": 6
        },
        "location": "away"
      },
      {
        "id": 45759216,
        "fixture_id": 18842618,
        "type_id": 80,
        "participant_id": 9,
        "data": {
          "value": 533
        },
        "location": "away"
      },
      {
        "id": 45763161,
        "fixture_id": 18842618,
        "type_id": 117,
        "participant_id": 6,
        "data": {
          "value": 7
        },
        "location": "home"
      },
      {
        "id": 45762769,
        "fixture_id": 18842618,
        "type_id": 98,
        "participant_id": 9,
        "data": {
          "value": 7
        },
        "location": "away"
      },
      {
        "id": 45756053,
        "fixture_id": 18842618,
        "type_id": 45,
        "participant_id": 6,
        "data": {
          "value": 53
        },
        "location": "home"
      },
      {
        "id": 45762114,
        "fixture_id": 18842618,
        "type_id": 66,
        "participant_id": 9,
        "data": {
          "value": 20
        },
        "location": "away"
      },
      {
        "id": 45762113,
        "fixture_id": 18842618,
        "type_id": 66,
        "participant_id": 6,
        "data": {
          "value": 23
        },
        "location": "home"
      },
      {
        "id": 45764468,
        "fixture_id": 18842618,
        "type_id": 77,
        "participant_id": 9,
        "data": {
          "value": 11
        },
        "location": "away"
      },
      {
        "id": 45761981,
        "fixture_id": 18842618,
        "type_id": 57,
        "participant_id": 6,
        "data": {
          "value": 3
        },
        "location": "home"
      },
      {
        "id": 45768409,
        "fixture_id": 18842618,
        "type_id": 50,
        "participant_id": 6,
        "data": {
          "value": 2
        },
        "location": "home"
      },
      {
        "id": 45773126,
        "fixture_id": 18842618,
        "type_id": 1527,
        "participant_id": 6,
        "data": {
          "value": 2
        },
        "location": "home"
      },
      {
        "id": 45773127,
        "fixture_id": 18842618,
        "type_id": 1527,
        "participant_id": 9,
        "data": {
          "value": 3
        },
        "location": "away"
      },
      {
        "id": 45807822,
        "fixture_id": 18842618,
        "type_id": 79,
        "participant_id": 6,
        "data": {
          "value": 0
        },
        "location": "home"
      },
      {
        "id": 45807823,
        "fixture_id": 18842618,
        "type_id": 79,
        "participant_id": 9,
        "data": {
          "value": 1
        },
        "location": "away"
      },
      {
        "id": 45832938,
        "fixture_id": 18842618,
        "type_id": 87,
        "participant_id": 6,
        "data": {
          "value": 0
        },
        "location": "home"
      },
      {
        "id": 45832939,
        "fixture_id": 18842618,
        "type_id": 87,
        "participant_id": 9,
        "data": {
          "value": 2
        },
        "location": "away"
      }
    ],
    "lineups": [
      {
        "id": 10112538680,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 540579,
        "team_id": 6,
        "position_id": 26,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Oliver Skipp",
        "jersey_number": 4
      },
      {
        "id": 10112891499,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 1744,
        "team_id": 6,
        "position_id": 26,
        "formation_field": "3:2",
        "type_id": 11,
        "formation_position": 7,
        "player_name": "Pierre-Emile Højbjerg",
        "jersey_number": 5
      },
      {
        "id": 10102869668,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 23715982,
        "team_id": 6,
        "position_id": 25,
        "formation_field": "2:3",
        "type_id": 11,
        "formation_position": 4,
        "player_name": "Radu Drăgușin",
        "jersey_number": 6
      },
      {
        "id": 10102869661,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 4313,
        "team_id": 6,
        "position_id": 26,
        "formation_field": "4:2",
        "type_id": 11,
        "formation_position": 11,
        "player_name": "Heung-min Son ",
        "jersey_number": 7
      },
      {
        "id": 10102869660,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 6838,
        "team_id": 6,
        "position_id": 26,
        "formation_field": "4:3",
        "type_id": 11,
        "formation_position": 8,
        "player_name": "James Maddison",
        "jersey_number": 10
      },
      {
        "id": 10112891511,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 4545529,
        "team_id": 6,
        "position_id": 27,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Bryan Gil",
        "jersey_number": 11
      },
      {
        "id": 10112891510,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 221615,
        "team_id": 6,
        "position_id": 25,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Emerson Royal",
        "jersey_number": 12
      },
      {
        "id": 10102869662,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 133779,
        "team_id": 6,
        "position_id": 24,
        "formation_field": "1:1",
        "type_id": 11,
        "formation_position": 1,
        "player_name": "Guglielmo Vicario",
        "jersey_number": 13
      },
      {
        "id": 10102869666,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 333731,
        "team_id": 6,
        "position_id": 25,
        "formation_field": "2:2",
        "type_id": 11,
        "formation_position": 3,
        "player_name": "Cristian Romero",
        "jersey_number": 17
      },
      {
        "id": 10112891513,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 97664,
        "team_id": 6,
        "position_id": 26,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Giovani Lo Celso",
        "jersey_number": 18
      },
      {
        "id": 10102869674,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 14338024,
        "team_id": 6,
        "position_id": 26,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Dejan Kulusevski",
        "jersey_number": 21
      },
      {
        "id": 10102869658,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 25930790,
        "team_id": 6,
        "position_id": 26,
        "formation_field": "4:1",
        "type_id": 11,
        "formation_position": 10,
        "player_name": "Brennan Johnson",
        "jersey_number": 22
      },
      {
        "id": 10102869664,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 8456257,
        "team_id": 6,
        "position_id": 25,
        "formation_field": "2:1",
        "type_id": 11,
        "formation_position": 2,
        "player_name": "Pedro Porro",
        "jersey_number": 23
      },
      {
        "id": 10102869672,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 37342694,
        "team_id": 6,
        "position_id": 26,
        "formation_field": "3:3",
        "type_id": 11,
        "formation_position": 9,
        "player_name": "Pape Matar Sarr",
        "jersey_number": 29
      },
      {
        "id": 10102869673,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 333797,
        "team_id": 6,
        "position_id": 26,
        "formation_field": "3:1",
        "type_id": 11,
        "formation_position": 6,
        "player_name": "Rodrigo Bentancur",
        "jersey_number": 30
      },
      {
        "id": 10102869670,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 37296248,
        "team_id": 6,
        "position_id": 25,
        "formation_field": "2:4",
        "type_id": 11,
        "formation_position": 5,
        "player_name": "Micky van de Ven ",
        "jersey_number": 37
      },
      {
        "id": 10112891508,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 540476,
        "team_id": 6,
        "position_id": 24,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Brandon Austin",
        "jersey_number": 40
      },
      {
        "id": 10112891519,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 37259210,
        "team_id": 6,
        "position_id": 27,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "D. Scarlett",
        "jersey_number": 44
      },
      {
        "id": 10112891521,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 37651099,
        "team_id": 6,
        "position_id": 26,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "M. Moore",
        "jersey_number": 59
      },
      {
        "id": 10112891517,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 37609326,
        "team_id": 6,
        "position_id": 26,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "T. Hall",
        "jersey_number": 73
      },
      {
        "id": 10102869663,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 911,
        "team_id": 9,
        "position_id": 25,
        "formation_field": "2:1",
        "type_id": 11,
        "formation_position": 2,
        "player_name": "Kyle Walker",
        "jersey_number": 2
      },
      {
        "id": 10102869656,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 162536,
        "team_id": 9,
        "position_id": 25,
        "formation_field": "2:2",
        "type_id": 11,
        "formation_position": 3,
        "player_name": "Rúben Dias",
        "jersey_number": 3
      },
      {
        "id": 10112891531,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 982,
        "team_id": 9,
        "position_id": 25,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "John Stones",
        "jersey_number": 5
      },
      {
        "id": 10112891532,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 1869,
        "team_id": 9,
        "position_id": 25,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Nathan Aké ",
        "jersey_number": 6
      },
      {
        "id": 10102869654,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 73147,
        "team_id": 9,
        "position_id": 26,
        "formation_field": "3:1",
        "type_id": 11,
        "formation_position": 7,
        "player_name": "Mateo Kovacic",
        "jersey_number": 8
      },
      {
        "id": 10102869659,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 154421,
        "team_id": 9,
        "position_id": 27,
        "formation_field": "5:1",
        "type_id": 11,
        "formation_position": 11,
        "player_name": "Erling Haaland",
        "jersey_number": 9
      },
      {
        "id": 10112891512,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 1116,
        "team_id": 9,
        "position_id": 26,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Jack Grealish",
        "jersey_number": 10
      },
      {
        "id": 10112891495,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 23697990,
        "team_id": 9,
        "position_id": 27,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Jérémy Doku",
        "jersey_number": 11
      },
      {
        "id": 10102869667,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 186910,
        "team_id": 9,
        "position_id": 26,
        "formation_field": "3:2",
        "type_id": 11,
        "formation_position": 6,
        "player_name": "Rodri",
        "jersey_number": 16
      },
      {
        "id": 10102869653,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 1371,
        "team_id": 9,
        "position_id": 26,
        "formation_field": "4:2",
        "type_id": 11,
        "formation_position": 9,
        "player_name": "Kevin De Bruyne",
        "jersey_number": 17
      },
      {
        "id": 10112891529,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 34594,
        "team_id": 9,
        "position_id": 24,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Stefan Ortega",
        "jersey_number": 18
      },
      {
        "id": 10112891516,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 21394947,
        "team_id": 9,
        "position_id": 27,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Julián Álvarez",
        "jersey_number": 19
      },
      {
        "id": 10102869669,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 96353,
        "team_id": 9,
        "position_id": 26,
        "formation_field": "4:1",
        "type_id": 11,
        "formation_position": 8,
        "player_name": "Bernardo Silva",
        "jersey_number": 20
      },
      {
        "id": 10102869655,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 24838191,
        "team_id": 9,
        "position_id": 25,
        "formation_field": "2:4",
        "type_id": 11,
        "formation_position": 5,
        "player_name": "Josko Gvardiol",
        "jersey_number": 24
      },
      {
        "id": 10102869665,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 198062,
        "team_id": 9,
        "position_id": 25,
        "formation_field": "2:3",
        "type_id": 11,
        "formation_position": 4,
        "player_name": "Manuel Akanji",
        "jersey_number": 25
      },
      {
        "id": 10112891496,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 21781428,
        "team_id": 9,
        "position_id": 26,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Matheus Nunes",
        "jersey_number": 27
      },
      {
        "id": 10102869657,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 159142,
        "team_id": 9,
        "position_id": 24,
        "formation_field": "1:1",
        "type_id": 11,
        "formation_position": 1,
        "player_name": "Ederson",
        "jersey_number": 31
      },
      {
        "id": 10102869671,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 336133,
        "team_id": 9,
        "position_id": 26,
        "formation_field": "4:3",
        "type_id": 11,
        "formation_position": 10,
        "player_name": "Phil Foden",
        "jersey_number": 47
      },
      {
        "id": 10112891514,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 37286732,
        "team_id": 9,
        "position_id": 26,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Oscar Bobb",
        "jersey_number": 52
      },
      {
        "id": 10112891533,
        "sport_id": 1,
        "fixture_id": 18842618,
        "player_id": 37459073,
        "team_id": 9,
        "position_id": 25,
        "formation_field": null,
        "type_id": 12,
        "formation_position": null,
        "player_name": "Rico Lewis",
        "jersey_number": 82
      }
    ],
    "postmatchnews": [
      {
        "id": 4277,
        "fixture_id": 18842618,
        "league_id": 8,
        "title": "Tottenham Hotspur Held Scoreless as Manchester City Secures Victory",
        "type": "postmatch",
        "lines": [
          {
            "id": 16464,
            "newsitem_id": 4277,
            "text": "Manchester City delivered an impressive performance, netting two goals while keeping a clean sheet against Tottenham Hotspur at Tottenham Hotspur Stadium in the Premier League. The match concluded with a commanding 2-0 victory for the away side.",
            "type": "line"
          },
          {
            "id": 16469,
            "newsitem_id": 4277,
            "text": "Tottenham Hotspur have scored 71 goals in total in the Premier League: 38 at home and 33 away.",
            "type": "line"
          },
          {
            "id": 16465,
            "newsitem_id": 4277,
            "text": "The first half was goalless, but straight after half-time, Erling Haaland made his mark as he netted, with an assist by Kevin De Bruyne, to give Tottenham Hotspur the lead.",
            "type": "line"
          },
          {
            "id": 16466,
            "newsitem_id": 4277,
            "text": "With this win, Manchester City have eight straight victories.",
            "type": "line"
          },
          {
            "id": 16467,
            "newsitem_id": 4277,
            "text": "The result saw Manchester City's 22nd game in a row without defeat.",
            "type": "line"
          },
          {
            "id": 16468,
            "newsitem_id": 4277,
            "text": "Tottenham Hotspur have now won one and lost four of their last five games having scored 6 and conceded 12. Meanwhile Manchester City have five wins with 17 goals for and 1 against.",
            "type": "line"
          },
          {
            "id": 16470,
            "newsitem_id": 4277,
            "text": "Manchester City have scored 93: 48 goals at home and 45 goals away.",
            "type": "line"
          },
          {
            "id": 16471,
            "newsitem_id": 4277,
            "text": "Tottenham Hotspur next Premier League games are against Sheffield United (away) on 19 May. Manchester City play West Ham United (home) on 19 May.",
            "type": "line"
          },
          {
            "id": 16472,
            "newsitem_id": 4277,
            "text": "Elsewhere in the Premier League Manchester City defeated 4-0 Fulham, Brentford picked up a narrow 2-1 victory against AFC Bournemouth, Everton won 1-0 against Sheffield United, Newcastle United drew 1-1 against Brighton & Hove Albion, Tottenham Hotspur won 2-1 against Burnley, West Ham United won 3-1 against Luton Town, Crystal Palace won 3-1 against Wolverhampton Wanderers, Chelsea won 3-2 against Nottingham Forest, Arsenal won 1-0 against Manchester United and Aston Villa drew 3-3 against Liverpool.",
            "type": "line"
          }
        ]
      }
    ],
    "prematchnews": [
      {
        "id": 4256,
        "fixture_id": 18842618,
        "league_id": 8,
        "title": "Manchester City back in title-race as Arsenal bags narrow win over United.",
        "type": "prematch",
        "lines": [
          {
            "id": 16333,
            "newsitem_id": 4256,
            "text": "Tottenham Hotspur vs. Manchester City kicks off at 20:00 [GMT+1] on Tuesday, May 14, at Tottenham Hotspur Stadium.",
            "type": "introduction"
          },
          {
            "id": 16334,
            "newsitem_id": 4256,
            "text": "Spurs put an end to a four-game losing run [WLLLD] at the weekend after a comeback 2-1 win over now-relegated Burnley. A second Tottenham goal from Micky van de Ven [82’] was enough to send the Clarets tumbling out of the Premier League after Jacob Bruun Larsen [25’] found the opener. The win kept Spurs in 5th place with 63 points [19W, 6D, & 11L], four points outside the top-four. Tuesday’s midweek clash against City will present a difficult but fine opportunity to close the gap on 4th-placed Villa [67 points], who will be facing Liverpool on Monday night. An impressive home run against the Sky Blues will serve as extra motivation for Spurs when they welcome title-chasing City to the Tottenham Hotspur Stadium. Tottenham have won each of their last four Premier League home games against Manchester City without conceding a single goal. A fifth consecutive home win will not only increase their chances of a top-four finish but also hand London rivals Arsenal, who need City to lose, a huge boost in the Premier League title race. However, Tottenham have lost their final home league game in two of the last three seasons [1W, 0D, 2L]. Ange Postecoglou is expected to deploy a 4—3—3 with Dejan Kulusevski, Heung-min Son, and Brennan Johnson in attack.",
            "type": "home"
          },
          {
            "id": 16335,
            "newsitem_id": 4256,
            "text": "Following a resounding 4-0 win over Fulham, title-chasing Manchester City remain one point behind Arsenal, who defeated Manchester United 1-0 on Super Sunday. A brace from Joško Gvardiol [13’, 71'], coupled with goals from Phil Foden [59’] and Julián Álvarez [90’+6 P.], who came off the bench, saw off sorry Fulham. The Sky Blues [WWWWW], who have 82 points [25W, 7D, & 3L], will be looking to extend their winning run when they make the trip to London with a record fourth Premier League title in the wait. However, an ominous cloud looms over Tuesday’s decisive clash in the capital. Under Pep Guardiola, Manchester City have lost more Premier League games against Tottenham than they have against any other opponent [6]. In addition, only Birmingham City [7 at Old Trafford] have played more Premier League games at a specific stadium without ever scoring than Manchester City’s four at the Tottenham Hotspur Stadium. Meanwhile, Pep Guardiola has urged his side to remain focused on the task that lies ahead. ''We have known it for many years. Always the same. Don’t think anything other than the next game. See what happens. Go to London, perform well, try to win the game,'' he said. A 4—2—3—1 with Erling Haaland in attack is expected for this midweek clash.",
            "type": "away"
          }
        ]
      }
    ]
  },
  "rate_limit": {
    "resets_in_seconds": 3600,
    "remaining": 7999,
    "requested_entity": "Fixture"
  },
  "timezone": "UTC"
}

Step 5: Requesting post-match football news as an include

In this final chapter, we’ll explore another popular method for retrieving post-match football news: using news as an include on fixtures or livescores endpoint. This approach offers a seamless way to integrate news retrieval into your existing requests, streamlining the process and enhancing efficiency.

Imagine you’re building a match page for your favourite team: Tottenham Hotspur vs Manchester City (Fixture id: 18842618). You’re using the fixture by ID endpoint, and if you’ve checked our match page guide, you will also probably be using the statistics, participants, and lineups includes. Your request looks like this: 

https://api.sportmonks.com/v3/football/fixtures/18842618?api_token=YOUR_TOKEN&include=participants;statistics;lineups

Now, the best part: instead of using the separate endpoint for news, you can use the postMatchNews or preMatchNews include! You’ll receive basic information about post-match articles associated with the fixture by including news. If you require detailed articles, you can further refine your request by including the .lines nested include.  

https://api.sportmonks.com/v3/football/fixtures/18842618?api_token=YOUR_TOKEN
&include=participants;statistcs;lineups;postMatchNews.lines;preMatchNews
.lines

Recap: Building Your Football News Website with Sportmonks’ Football API

Congratulations on completing our comprehensive guide on constructing a football news website using Sportmonks’ Football API! Throughout this journey, we’ve explored various aspects of building a platform dedicated to delivering up-to-date football news, from understanding the concept of a football news website to leveraging our API effectively

Now that you’ve learned how to build a football news website using Sportmonks’ Football API, it’s time to implement your knowledge! Whether you’re a developer looking to enhance your football application or a football enthusiast eager to stay updated with the latest news, our API offers the tools you need to succeed. Join thousands of developers and football fans who have already experienced the power of Sportmonks’ Football API.

FAQ

What is a Football News API?
A football news API allows developers and enthusiasts to access and retrieve up-to-date football news articles and headlines via our Football API. This API grants users the ability to integrate real-time football news content into their applications, websites, or platforms seamlessly.
How are the articles in the News API written?
The match previews are written by Sportmonks' data experts and scouts. Our post-match articles are AI written in collaboration with United Robots, a renowned AI news provider. The articles are based on match results, statistics, goals, injuries, and other important events. With our reliable and up-to-date football data, you can provide your users with instant updates after the final whistle.
How can I get access to these football news articles?
First of all, you need to be subscribed to one of our Football API plans with a News API add-on of your choice. After that you can make a request to our API. To access pre-match news, you can use the prematchNews.lines include. For post-match news, you can use the postmatchNews.lines. For more information, you can navigate to our documentation.
How can I use the API to get the News articles I need?
When making an API request you will receive the data in JSON format. There are two ways to request the news in our API.
  1. You can use the News API endpoint.
  2. You can use the Fixture endpoint and use the include 'prematchNews.lines' or 'postmatchNews.lines'.
  3. You can use the Livescore endpoint and use the include 'prematchNews.lines' or 'postmatchNews.lines'.
Our News API is combined with our Football API. So make sure you are subscribed to a Football plan.  
I am currently subscribed to your API, how can I add a News API plan to my subscription?
You can get access to these articles by going to my.sportmonks.com and go to the 'edit my subscription' environment to add the News API plans to your subscription. Another way to get access to these articles is by contacting our sales team at our contact page or by mailing [email protected].  
What is covered in the Football News API?

What is covered in the pre-match news API?

The Football News API offers comprehensive coverage across various leagues, providing users with a wide range of football-related content. The Top News Plan and Full News Plan are priced per single league, offering in-depth coverage tailored to specific leagues such as the UEFA Champions League, English Premier League, Bundesliga, La Liga, Serie A, and Ligue 1. The All-In News Plan encompasses all six leagues for users seeking broader coverage. This plan includes detailed updates on matches from the UEFA Champions League and English Premier League and coverage of the top five teams from the previous season in the Bundesliga, Serie A, La Liga, and Ligue 1. With this plan, users gain access to comprehensive news and insights spanning across multiple leagues, ensuring they stay informed about the latest developments in football across Europe.

What is covered in the post-match news API?

Our Football post-match News API meticulously covers post-match analysis for Premier League, Serie A, La Liga, Eredivisie, and Champions League matches. On top of that, we also offer post-match football news for the EUROs. The articles are based on match results, statistics, goals, injuries, and other important events. With our reliable and up-to-date football data, you can provide your users with instant updates after the final whistle.

Written by Wesley Van Rooij

Wesley van Rooij is a marketing and football expert with over 5 years of industry experience. His comprehensive knowledge of the Sportmonks Football API and a focused approach to APIs in the Sports Data industry allow him to offer insights and support to enthusiasts and businesses. His outstanding marketing and communication skills and technical writing expertise enable him to empathise with developers. He understands their needs and challenges to facilitate the development of cutting-edge football applications that stand out in the market.

Take your football news website to the next level and provide your users with the ultimate football news experience. Try it out today and see the difference for yourself!

Start your free trial