Skip to content

slvler/livescore-service

Repository files navigation

Live Score Service

tests Latest Stable Version Total Downloads License

Live Score Client for api-football.com

Welcome to Api-Football! You can use our API to access all API endpoints, which can get information about Football Leagues & Cups.

Requirements

  • PHP 8.1
  • Laravel 9.x | 10.x

Installation

To install this package tou can use composer:

composer require slvler/livescore-service

Usage

  • First, you should extract the config/livescore.php file to the config folder.
php artisan vendor:publish --tag=livescore
  • API key to be obtained from api-football.com address should be declared. This is your private API key, specific to this API.
'livescore' => [
    'base_url' => 'v3.football.api-sports.io',
    'api_key' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
]

Basic usage

Example

use Slvler\LiveScoreService\LiveScoreClient;

$client = new LiveScoreClient();

Available methods

General

Get the list status

$client->general()->getStatus();

Countries

Get the list of available countries for the leagues endpoint.

$client->countries()->getAll();

The name and code fields can be used in other endpoints as filters.

$client->countries()->getAll(['code' => 'FR']);

Leagues

Get the list of available leagues and cups. This endpoint also returns the coverage of each competition, which makes it possible to know what is available for that league or cup.

$client->leagues()->getLeagues(['season' => '2018', 'id' => '33']);

All seasons are only 4-digit keys, so for a league whose season is 2018-2019 like the English Premier League (EPL), the 2018-2019 season in the API will be 2018.

$client->leagues()->getLeaguesSeasons();

Teams

Get the list of available teams. The team id are unique in the API and teams keep it among all the leagues/cups in which they participate.

$client->team()->getTeamsInformation(['name' => 'manchester united']);

The team id are unique in the API and teams keep it among all the leagues/cups in which they participate.

$client->team()->getTeamsStatistics(['league' => '39', 'team' => '33', 'season' => '2019']);

Get the list of seasons available for a team.

$client->team()->getTeamsSeasons(['team' => '33']);

Get the list of countries available for the teams endpoint.

$client->team()->getTeamCountries();

Venues

Get the list of available venues. The venue id are unique in the API.

$client->venues()->getVenues(['name' => 'Old Trafford']);

Standings

Get the standings for a league or a team. Return a table of one or more rankings according to the league / cup.

$client->standings()->getStandings([ 'league' => '39', 'season' => '2019']);

Fixtures

Get the rounds for a league or a cup. The round can be used in endpoint fixtures as filters

 $variable =  $client->fixtures()->getRounds(['league' => '39', 'season' => 2019]);

For all requests to fixtures you can add the query parameter timezone to your request in order to retrieve the list of matches in the time zone of your choice like “Europe/London“

$client->fixtures()->getFixtures(['id' => '215662']);

Get heads to heads between two teams.

$client->fixtures()->getHeadToHead(['h2h' => '33-34']);

Get the statistics for one fixture.

$client->fixtures()->getStatistics(['fixture' => '215662']);

Get the events from a fixture.

$client->fixtures()->getEvents(['fixture' => '215662']);

Get the lineups for a fixture. Lineups are available between 20 and 40 minutes before the fixture when the competition covers this feature. You can check this with the endpoint leagues and the coverage field.

$client->fixtures()->getLineups(['fixture' => '592872']);

Get the players statistics from one fixture.

$client->fixtures()->getPlayersStatistics(['fixture' => '169080']);

Injuries

Get the list of players not participating in the fixtures for various reasons such as suspended, injured for example

$client->injuries()->getInjuries(['league' => '2', 'season' => '2020']);

Predictions

Get predictions about a fixture. The predictions are made using several algorithms including the poisson distribution, comparison of team statistics, last matches, players etc…

$client->predictions()->getPredictions(['fixture' => '198772']);

Coachs

Get all the information about the coachs and their careers.

$client->coachs()->getCoachs(['id' => '1']);

Players

Get all available seasons for players statistics.

$client->players()->getSeasons(['player' => '276']);

Get players statistics.

$client->players()->getPlayers(['id' => '19088', 'season' => '2018']);

Return the current squad of a team when the team parameter is used. When the player parameter is used the endpoint returns the set of teams associated with the player.

$client->players()->getSquads(['team' => '33']);

Get the 20 best players for a league or cup.

$client->players()->getTopScorers(['season' => '2018', 'league' => '61']);

Get the 20 best players assists for a league or cup.

$client->players()->getTopAssists(['season' => '2020', 'league' => '61']);

Get the 20 players with the most yellow cards for a league or cup.

$client->players()->getTopYellowCards(['season' => '2020', 'league' => '61']);

Get the 20 players with the most red cards for a league or cup.

$client->players()->getTopRedCards(['season' => '2020', 'league' => '61']);

Transfers

Get all available transfers for players and teams

$client->transfer()->getTransfer(['player' => '35845']);

Trophies

Get all available trophies for a player or a coach.

$client->trophies()->getTrophies(['player' => '35845']);

Sidelined

Get all available sidelined for a player or a coach.

$client->sidelined()->getSidelined(['player' => '276']);

Odds

This endpoint returns in-play odds for fixtures in progress.

$client->odds()->getOddsLive();

Get all available bets for in-play odds.

$client->odds()->getOddsLivBets(['id' => "1"]);

Get odds from fixtures, leagues or date.

$client->odds()->getOdds(['date' => "2020-05-15"]);

Get the list of available fixtures id for the endpoint odds.

$client->odds()->getOddsMapping();

Get all available bookmakers.

$client->odds()->getOddsBookmakers();

Get all available bets for pre-match odds.

$client->odds()->getOddsBets();

Testing

    composer test

Credits

License

The MIT License (MIT). Please see License File for more information.

Contributing

You're very welcome to contribute. Please see CONTRIBUTING for details.