logo
theme
Liga NOS Live Scores
FREEMIUM
By heisenbug
Updated 9 months ago
Liga NOS Live Scores Overview

Liga NOS Live Scores API allows to retrieve current season results, scorers, lineups, substitutes, events, statistics and much more all with live updates, for the top professional Portuguese football league. And more is coming…

provider
rating
add first rating
Followers on API
Follow this API
resourcesTerms of Service
More Details

Matches results

It's possible to retrieve all the matches results calling the endpoint
/api/liganos
-without submitting any parameter, to get all the matches for the day (if there isn't any match for the day you will get a 500 server error, that it isn't count as an API call)
-submitting the parameter date, to retrieve the matches for that date (in the format mmddyyyy)
-submitting the parameter team1, to retrieve the matches that the team has played at home (together with team2 return that very match)
-submitting the parameter team2, to retrieve the matches that the team has played away (together with team1 return that very match)
-submitting the parameter matchday, to retrieve the matches for that round

If matches are already played, the API will give you data about red cards number if any, referee, final and first half scores too, otherwise only the matches that will be played.

Take in mind that this API returns only final results ("time":"FT") or not already played matches, and the final ones only after a while the matches are really finished (usually after few minutes); if you need live updates you have to set thelive parameter to true (in this case time returns the minute for the match), if there isn't any playing match for the parameters specified, the API give you the 500 error message 'No games found'.
Take in mind that a live request can continue to give you the result even after a while, usually some hours, a match is finished; as soon as the API stop to give you the result for the match, you can get the result again removing the live parameter.

Lineups substitutes and coaches

It's possible to get data about teams players and coaches for a game using the following API
/api/liganos/formations
The API requires two mandatory attributes, team1 and team2 to select the game of interest.
The result is a JSON object with two properties, team1 and team2, where each team property is an object containing the teamName and the players properties, where the first one is the name of the team (equals to the one in the request) and the second one an object with the arrays lineups and substitutes with each array item equals to an object containing the playerNumber, that is the shirt number for the player and the playerName attribute.
Captain players are identified by the property isCaptain.

The lineups players are ordered from goalkeeper to forward, to get more insight on how players are on the pitch see the events Module-Start and Module-Change you can get from the match events request without forgetting the attribute position returned by the player match statistics API.

You can get the formations starting from 30 minutes before a match start using thelive parameter set to true, if the API give you the 500 error message, that means the game is already finished from a while or it's not playing or not going to play.
Take in mind that a live request can continue to give you the result even after a while, usually some hours, a match is finished; as soon as the API stop to give you the result for the match, you can get the result again removing the live parameter.

The APIs can either respond with a 500 error if doesn't exist a match for them team1 and team2 parameters in the request (values are case sensitive, use the matches results requests to find out valid values to use).

League Table

Using the endpoint API /api/liganos/table you will get the current table for the league.
The current table is compute considering all the finished games returned by the Matches results API (the one with no live updates).
The API let you to restrict the games considered using the following three optional parameters
from to include all the games played from (default the first played game returned by the no live version of the season results API)
to to include all the games played till to (default the last played game return by the no live version of the season results API)
mode set to home to consider only home games, to away to consider only away games (default all games)
time to compute the table considering only the first half (FH) or the second half (SH). Default is full time (FT)

The JSON response give you data about the team name the game played, win, loss, goalsFor, goalsAgainst and points.
The API at the moment don't take into account any penalization a team could have to compute the total points number.

Match scorers

It's possible to get all the scorers for a match with a single API call.
There are two version for this API, one without live update /api/liganos/scores that get you the answer after a while the game is finished (usually after few minutes), and the other /api/live/liganos/scorers with live updates, that give you the answer while the match is still playing (check the matches results API live version to know the games with goals).
All of the two versions require two mandatory parameters
team1 that is the first team name of the match
and
team2 that is the second team name for the match
(the names are the ones returned by the matches results API).

The JSON response contains the player name who scored the goal and the minute it was scored, more it can contains other attributes either that qualify better the kind of goal.
At the moment the attributes handled by the API are:
isPenalty true if the goal is scored from a penalty, default false
isOwn true if the goal is an own goal, default false
isFromCorner true if the goal is scored from a corner, default false
isFreekick true if the goal is scored from a free kick, default false
isLeftFoot true if the goal is scored by left, default false
isRightFoot * true if the goal is scored by right, default false*
isHead true if the goal is scored by head, default false

The API give you an answer even if there isn't any goal for a match, in that case the goals attribute will be an empty array.

Top scorers

The /api/liganos/table/scorers let you the get the top five scorers for the league.
The JSON result give you the player name, the number of goals scored in order from the first till the fifth and the number of those scored by penalty.
You can either use the optional parameters like
player to get the result only for the player name specified (useful to get the number of goals scored by those players that aren't in top 5)
team *to get top five scorers only for the specified team *

If you specify an invalid player name or a player name that hasn't scored any goal yet, you will get an empty response, that is:

{"scorers":[]}

Match events

The Liga NOS Live Scores API let you trace two different kind of events
Team events
Module-Start (tell you the team module, that is how players are on the pitch, as soon as the match start)
Module-Change (tell you each module change occurred during the match)
Players events
Yellow-Card
Red-Card
In and Out (substitutions)
Missed-Penalty (penalty failed)
Saved-Penalty (keeper save a penalty)
Saved-Goal (player avoid an already done goal, clearance off the line)
Shot-On-Post
Error-Goal (player error that lead to a goal)
Assist-Goal (when a player intentionally do an assist that lead to a goal)
Goal-Disallowed
Penalty-Won (the player that won the penalty)
Penalty-Commited (the player that committed a penalty foul)
Changed-Captain (the new captain player if the previous goes out)

All teams and players events give you the minute the event occurred,
teams events have a value attribute that get the value for the event (the team module),
players events instead a list of players name related to the event.

There are two version for the API, that is, with (/api/live/liganos/match/events) or without live updates (/api/liganos/match/events).
The version without live update get you the data only after a while the match is finished (usually within few minutes), the one with live updates instead get you real time data and stop to get you an answer after few minutes the game is finished (at that time you get the answer querying the no live version).

All the two API versions require two parameters
team1 that is the first team name
and
team2 that is the second team name
and returns all the events for the two teams.

Match statistics

The API requires two mandatory parameters
team1 the first team name for the match
team2 the second team name for the match.
In the JSON response you can find the following impressive amount of statistics for each team of the match selected:
totalSaves touches aerialsWon passesTotal passesSuccessful cornersTotal cornersAccurate tackleSuccessful throwInsTotal</br> aerialsTotal offensiveAerials defensiveAerials shotsOffTarget tacklesTotal dribblesLost shotsTotal shotsBlocked</br> dribblesAttempted dribbledPast dispossessed foulsCommited shotsOnTarget offsidesCaught tackleUnsuccesful interceptions dribblesWon clearances possession</br> goals foulsWon penatyWon penaltyCommited
If a property is missing in the response its value is zero.

Take in mind that this API exists in two version, the one without live update /api/liganos/match/stats and the one with live update /api/live/liganos/match/stats with the second one one giving you real time statistics updates during the game and the first one giving you only the final statistics after a while the match is finished (when the first one stop to give you an answer).

Player statistics for a match

It's possible to get all the player statistics for a match using one of the two API version, the no live and the live one, with the first giving you the result only after a while the game is finished (usually within few minutes) and the second you giving you the result starting from the first minute match, until the match is over, that is with live updates.
The APIs require three mandatory parameters
team1 the first team name for the match
team2 the second team name for the match
player the player name for which you want to know statistics.

The result is a JSON format response containing player infos like age, weight, height and player match stats like dribble won, fouls committed.
The complete data list handle at the moment from the API follows:
player info
isManOfTheMatch, shirtNo, name, weight, age, height, isFirstEleven, position
player match stats
totalSaves, touches, aerialsWon, passesTotal, passesSuccessful, cornersTotal, cornersAccurate, tackleSuccessful, <br> throwInsTotal, aerialsTotal, offensiveAerials, defensiveAerials, shotsOffTarget, tacklesTotal, <br> dribblesLost, shotsTotal, shotsBlocked, dribblesAttempted, dribbledPast, dispossessed, <br> foulsCommited, shotsOnTarget, offsidesCaught, tackleUnsuccesful, interceptions, dribblesWon, <br> clearances, possession, goals, foulsWon, penaltyWon, penaltyCommited
If a property is missing in the response its value is zero.

For the position attribute you can get the following values:
GK = Goalkeeper
DM = Defensive Midfielder (1)
D = Defender (1)
M = Midfielder (1)
AM = Attacking Midfielder (1)
FW = Forward
Sub = substitute player

(1) the attribute value can have one letter more to specify better the field position, that is C for Center, L for Left and R for Right.

... and more

Missing players for a match
The API Missing players for a match requires two mandatory parameters
team1 and team2
and returns a response a few days before the match with continue updates till the start.
Even after a match is played, the API continue to give you the last answer.
The response returns for each team the player name who will miss with the reason.
If there is any doubt about the player will play the match, the reason will be inside a square bracket, otherwise the reason will be with no bracket.
Typical reasons are Injured, Suspended, Unfit, Other.

Have a question about this API?Ask the API Provider.
Developers who viewed Liga NOS Live Scores also viewed

Install SDK for (Node.js)Unirest

OAuth2 Authentication
Client ID
Client Secret
OAuth2 Authentication