slvler/livescore-service

live score service API for api-football.com

v2.0.0 2024-12-03 11:38 UTC

This package is auto-updated.

Last update: 2024-12-20 12:49:08 UTC


README

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

Status

Get the list status

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

Countries

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

Countries

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']);

Seasons

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

Teams Information

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']);

Teams Statistics

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']);

Teams Seasons

Get the list of seasons available for a team.

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

Teams Countries

Get the list of countries available for the teams endpoint.

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

Venues

Venues

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

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

Standings

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

Rounds

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]);

Fixtures

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']);

Head To Head

Get heads to heads between two teams.

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

Statistics

Get the statistics for one fixture.

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

Events

Get the events from a fixture.

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

Lineups

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']);

Players statistics

Get the players statistics from one fixture.

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

Injuries

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

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

Coachs

Get all the information about the coachs and their careers.

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

Players

Seasons

Get all available seasons for players statistics.

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

Players

Get players statistics.

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

Squads

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']);

Top Scorers

Get the 20 best players for a league or cup.

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

Top Assists

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

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

Top Yellow Cards

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

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

Top Red Cards

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

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

Transfers

Transfers

Get all available transfers for players and teams

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

Trophies

Transfers

Get all available trophies for a player or a coach.

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

Sidelined

Sidelined

Get all available sidelined for a player or a coach.

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

Odds

Odds / Live

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

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

Odds / Live / Bets

Get all available bets for in-play odds.

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

Odds

Get odds from fixtures, leagues or date.

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

Mapping

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

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

Bookmakers

Get all available bookmakers.

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

Bets

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.