<!-- badges: start -->

[![PyPI](https://img.shields.io/pypi/v/powerplay?label=powerplay&logo=python&style=for-the-badge)](https://pypi.org/project/powerplay/) [![Lifecycle:maturing](https://img.shields.io/badge/lifecycle-maturing-blue.svg?style=for-the-badge&logo=github)](https://github.com/saiemgilani/powerplay-py/)  [![Contributors](https://img.shields.io/github/contributors/saiemgilani/powerplay-py?style=for-the-badge)](https://github.com/saiemgilani/powerplay-py/graphs/contributors) [![Twitter Follow](https://img.shields.io/twitter/follow/sportsdataverse?color=blue&label=%40sportsdataverse&logo=twitter&style=for-the-badge)](https://twitter.com/sportsdataverse)
<!-- badges: end -->

# powerplay (Py)

### A Python client for the NHL API

Documenting the publicly accessible portions of the NHL API.

## Overview
This Python package is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project.

## Installation & Usage
### pip install
powerplay can be installed via pip:

```bash
pip install powerplay
```

or from the repo (which may at times be more up to date):

```bash
git clone https://github.com/saiemgilani/powerplay-py
cd powerplay-py
pip install -e .
```
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/saiemgilani/powerplay-py.git`)

Then import the package:
```python
import powerplay 
```

### Setuptools

Install via [Setuptools](http://pypi.python.org/pypi/setuptools).

```sh
python setup.py install --user
```
(or `sudo python setup.py install` to install the package for all users)

Then import the package:
```python
import powerplay
```

## Requirements.

Python 3.6+

## Getting Started

Please follow the [installation procedure](#installation--usage) and then run the following:

```python
from __future__ import print_function
import time
import powerplay
from powerplay.rest import ApiException
from pprint import pprint

# create an instance of the API class
api_instance = powerplay.ConferencesApi(powerplay.ApiClient(configuration))
id = 1.2 # float | The ID of the conference.

try:
    # Get an NHL conference.
    api_response = api_instance.get_conference(id)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling ConferencesApi->get_conference: %s\n" % e)

# create an instance of the API class
api_instance = powerplay.ConferencesApi(powerplay.ApiClient(configuration))

try:
    # Get all current NHL conferences.
    api_response = api_instance.get_conferences()
    pprint(api_response)
except ApiException as e:
    print("Exception when calling ConferencesApi->get_conferences: %s\n" % e)
```

## Documentation for API Endpoints

All URIs are relative to *https://statsapi.web.nhl.com/api/v1*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*ConferencesApi* | [**get_conference**](docs/ConferencesApi.md#get_conference) | **GET** /conferences/{id} | Get an NHL conference.
*ConferencesApi* | [**get_conferences**](docs/ConferencesApi.md#get_conferences) | **GET** /conferences | Get all current NHL conferences.
*DivisionsApi* | [**get_division**](docs/DivisionsApi.md#get_division) | **GET** /divisions/{id} | Get an NHL division.
*DivisionsApi* | [**get_divisions**](docs/DivisionsApi.md#get_divisions) | **GET** /divisions | Get all current NHL divisions.
*DraftApi* | [**get_draft**](docs/DraftApi.md#get_draft) | **GET** /draft | Get round-by-round data for current year&#x27;s NHL Entry Draft.
*DraftApi* | [**get_draft_by_year**](docs/DraftApi.md#get_draft_by_year) | **GET** /draft/{year} | Get round-by-round data for a specific year&#x27;s NHL Entry Draft.
*DraftApi* | [**get_draft_prospect**](docs/DraftApi.md#get_draft_prospect) | **GET** /draft/prospects/{id} | Get an NHL Entry Draft prospect.
*DraftApi* | [**get_draft_prospects**](docs/DraftApi.md#get_draft_prospects) | **GET** /draft/prospects | Get all NHL Entry Draft prospects.
*GamesApi* | [**get_game**](docs/GamesApi.md#get_game) | **GET** /game/{id}/feed/live | Get all available data for an NHL game.
*GamesApi* | [**get_game_boxscore**](docs/GamesApi.md#get_game_boxscore) | **GET** /game/{id}/boxscore | Get the boxscore for an NHL game.
*GamesApi* | [**get_game_content**](docs/GamesApi.md#get_game_content) | **GET** /game/{id}/content | Get editorials, video replays and photo highlights for an NHL game.
*GamesApi* | [**get_game_diff**](docs/GamesApi.md#get_game_diff) | **GET** /game/{id}/feed/live/diffPatch | Get all available data for an NHL game after a specific time.
*PlayersApi* | [**get_player**](docs/PlayersApi.md#get_player) | **GET** /people/{id} | Get an NHL player.
*PlayersApi* | [**get_player_stats**](docs/PlayersApi.md#get_player_stats) | **GET** /people/{id}/stats | Get specific statistics for an NHL player.
*ScheduleApi* | [**get_schedule**](docs/ScheduleApi.md#get_schedule) | **GET** /schedule | Get the NHL game schedule.
*StandingsApi* | [**get_standing_types**](docs/StandingsApi.md#get_standing_types) | **GET** /standingsTypes | Get all available NHL standing types.
*StandingsApi* | [**get_standings**](docs/StandingsApi.md#get_standings) | **GET** /standings | Get NHL division standings.
*StandingsApi* | [**get_standings_by_type**](docs/StandingsApi.md#get_standings_by_type) | **GET** /standings/{type} | Get NHL standings for a specific standing type.
*StatsApi* | [**get_stat_types**](docs/StatsApi.md#get_stat_types) | **GET** /statTypes | Get all available NHL statistic types.
*TeamsApi* | [**get_team**](docs/TeamsApi.md#get_team) | **GET** /teams/{id} | Get an NHL team.
*TeamsApi* | [**get_team_roster**](docs/TeamsApi.md#get_team_roster) | **GET** /teams/{id}/roster | Get an NHL team's roster.
*TeamsApi* | [**get_team_stats**](docs/TeamsApi.md#get_team_stats) | **GET** /teams/{id}/stats | Get all statistics for an NHL team.
*TeamsApi* | [**get_teams**](docs/TeamsApi.md#get_teams) | **GET** /teams | Get all NHL teams.

## Documentation For Models

 - [AnyOfGameContentMediaEpgItems](docs/AnyOfGameContentMediaEpgItems.md)
 - [Conference](docs/Conference.md)
 - [Conferences](docs/Conferences.md)
 - [Division](docs/Division.md)
 - [DivisionConference](docs/DivisionConference.md)
 - [Divisions](docs/Divisions.md)
 - [Draft](docs/Draft.md)
 - [DraftDrafts](docs/DraftDrafts.md)
 - [DraftPicks](docs/DraftPicks.md)
 - [DraftProspect](docs/DraftProspect.md)
 - [DraftProspectAmateurLeague](docs/DraftProspectAmateurLeague.md)
 - [DraftProspectAmateurTeam](docs/DraftProspectAmateurTeam.md)
 - [DraftProspectPrimaryPosition](docs/DraftProspectPrimaryPosition.md)
 - [DraftProspectProspectCategory](docs/DraftProspectProspectCategory.md)
 - [DraftProspects](docs/DraftProspects.md)
 - [DraftRounds](docs/DraftRounds.md)
 - [DraftTeam](docs/DraftTeam.md)
 - [Error](docs/Error.md)
 - [Franchise](docs/Franchise.md)
 - [Game](docs/Game.md)
 - [GameBoxscore](docs/GameBoxscore.md)
 - [GameBoxscoreTeam](docs/GameBoxscoreTeam.md)
 - [GameBoxscoreTeamCoaches](docs/GameBoxscoreTeamCoaches.md)
 - [GameBoxscoreTeamOnIcePlus](docs/GameBoxscoreTeamOnIcePlus.md)
 - [GameBoxscoreTeamPerson](docs/GameBoxscoreTeamPerson.md)
 - [GameBoxscoreTeamPlayers](docs/GameBoxscoreTeamPlayers.md)
 - [GameBoxscoreTeamPlayersPerson](docs/GameBoxscoreTeamPlayersPerson.md)
 - [GameBoxscoreTeamPlayersPosition](docs/GameBoxscoreTeamPlayersPosition.md)
 - [GameBoxscoreTeamPlayersStats](docs/GameBoxscoreTeamPlayersStats.md)
 - [GameBoxscoreTeamPlayersStatsSkaterStats](docs/GameBoxscoreTeamPlayersStatsSkaterStats.md)
 - [GameBoxscoreTeamPosition](docs/GameBoxscoreTeamPosition.md)
 - [GameBoxscoreTeamTeam](docs/GameBoxscoreTeamTeam.md)
 - [GameBoxscoreTeamTeamStats](docs/GameBoxscoreTeamTeamStats.md)
 - [GameBoxscoreTeamTeamStatsTeamSkaterStats](docs/GameBoxscoreTeamTeamStatsTeamSkaterStats.md)
 - [GameBoxscoreTeams](docs/GameBoxscoreTeams.md)
 - [GameBoxscores](docs/GameBoxscores.md)
 - [GameContent](docs/GameContent.md)
 - [GameContentEditorial](docs/GameContentEditorial.md)
 - [GameContentHighlights](docs/GameContentHighlights.md)
 - [GameContentMedia](docs/GameContentMedia.md)
 - [GameContentMediaMilestones](docs/GameContentMediaMilestones.md)
 - [GameContentMediaMilestonesItems](docs/GameContentMediaMilestonesItems.md)
 - [GameDecisionPlayer](docs/GameDecisionPlayer.md)
 - [GameEditorial](docs/GameEditorial.md)
 - [GameEditorialContributor](docs/GameEditorialContributor.md)
 - [GameEditorialContributorContributors](docs/GameEditorialContributorContributors.md)
 - [GameEditorialKeyword](docs/GameEditorialKeyword.md)
 - [GameEditorialMedia](docs/GameEditorialMedia.md)
 - [GameEditorialTokenData](docs/GameEditorialTokenData.md)
 - [GameEditorials](docs/GameEditorials.md)
 - [GameGameData](docs/GameGameData.md)
 - [GameGameDataDatetime](docs/GameGameDataDatetime.md)
 - [GameGameDataGame](docs/GameGameDataGame.md)
 - [GameGameDataStatus](docs/GameGameDataStatus.md)
 - [GameGameDataTeams](docs/GameGameDataTeams.md)
 - [GameGameDataVenue](docs/GameGameDataVenue.md)
 - [GameHighlight](docs/GameHighlight.md)
 - [GameHighlightPlaybacks](docs/GameHighlightPlaybacks.md)
 - [GameHighlightType](docs/GameHighlightType.md)
 - [GameHighlights](docs/GameHighlights.md)
 - [GameLinescore](docs/GameLinescore.md)
 - [GameLinescoreIntermissionInfo](docs/GameLinescoreIntermissionInfo.md)
 - [GameLinescorePowerPlayInfo](docs/GameLinescorePowerPlayInfo.md)
 - [GameLinescoreShootoutInfo](docs/GameLinescoreShootoutInfo.md)
 - [GameLinescoreShootoutInfoAway](docs/GameLinescoreShootoutInfoAway.md)
 - [GameLinescoreTeam](docs/GameLinescoreTeam.md)
 - [GameLinescoreTeams](docs/GameLinescoreTeams.md)
 - [GameLiveData](docs/GameLiveData.md)
 - [GameLiveDataDecisions](docs/GameLiveDataDecisions.md)
 - [GameLiveDataPlays](docs/GameLiveDataPlays.md)
 - [GameLiveDataPlaysPlaysByPeriod](docs/GameLiveDataPlaysPlaysByPeriod.md)
 - [GameMediaAudio](docs/GameMediaAudio.md)
 - [GameMediaAudioItems](docs/GameMediaAudioItems.md)
 - [GameMediaNHLTV](docs/GameMediaNHLTV.md)
 - [GameMediaNHLTVItems](docs/GameMediaNHLTVItems.md)
 - [GameMetaData](docs/GameMetaData.md)
 - [GameOfficial](docs/GameOfficial.md)
 - [GameOfficialOfficial](docs/GameOfficialOfficial.md)
 - [GamePeriod](docs/GamePeriod.md)
 - [GamePeriodAway](docs/GamePeriodAway.md)
 - [GamePeriodHome](docs/GamePeriodHome.md)
 - [GamePlay](docs/GamePlay.md)
 - [GamePlayAbout](docs/GamePlayAbout.md)
 - [GamePlayAboutGoals](docs/GamePlayAboutGoals.md)
 - [GamePlayCoordinates](docs/GamePlayCoordinates.md)
 - [GamePlayPlayer](docs/GamePlayPlayer.md)
 - [GamePlayPlayers](docs/GamePlayPlayers.md)
 - [GamePlayResult](docs/GamePlayResult.md)
 - [GamePlayTeam](docs/GamePlayTeam.md)
 - [Photo](docs/Photo.md)
 - [PhotoCuts](docs/PhotoCuts.md)
 - [Player](docs/Player.md)
 - [PlayerCurrentTeam](docs/PlayerCurrentTeam.md)
 - [PlayerStats](docs/PlayerStats.md)
 - [PlayerStatsOpponentDivision](docs/PlayerStatsOpponentDivision.md)
 - [PlayerStatsSplits](docs/PlayerStatsSplits.md)
 - [PlayerStatsStat](docs/PlayerStatsStat.md)
 - [PlayerStatsStats](docs/PlayerStatsStats.md)
 - [PlayerStatsType](docs/PlayerStatsType.md)
 - [Players](docs/Players.md)
 - [Roster](docs/Roster.md)
 - [RosterPerson](docs/RosterPerson.md)
 - [Rosters](docs/Rosters.md)
 - [Schedule](docs/Schedule.md)
 - [ScheduleDay](docs/ScheduleDay.md)
 - [ScheduleGame](docs/ScheduleGame.md)
 - [ScheduleGameContent](docs/ScheduleGameContent.md)
 - [ScheduleGameTeams](docs/ScheduleGameTeams.md)
 - [ScheduleGameTeamsAway](docs/ScheduleGameTeamsAway.md)
 - [ScheduleGameTeamsAwayLeagueRecord](docs/ScheduleGameTeamsAwayLeagueRecord.md)
 - [ScheduleGameTeamsAwayTeam](docs/ScheduleGameTeamsAwayTeam.md)
 - [ScheduleGameTeamsHome](docs/ScheduleGameTeamsHome.md)
 - [ScheduleGameTeamsHomeLeagueRecord](docs/ScheduleGameTeamsHomeLeagueRecord.md)
 - [ScheduleGameTickets](docs/ScheduleGameTickets.md)
 - [StandingTypes](docs/StandingTypes.md)
 - [StandingTypesInner](docs/StandingTypesInner.md)
 - [Standings](docs/Standings.md)
 - [StandingsDivision](docs/StandingsDivision.md)
 - [StandingsLeague](docs/StandingsLeague.md)
 - [StandingsRecords](docs/StandingsRecords.md)
 - [StandingsStreak](docs/StandingsStreak.md)
 - [StandingsTeamRecords](docs/StandingsTeamRecords.md)
 - [StatTypes](docs/StatTypes.md)
 - [StatTypesInner](docs/StatTypesInner.md)
 - [Team](docs/Team.md)
 - [TeamNextGameSchedule](docs/TeamNextGameSchedule.md)
 - [TeamNextGameScheduleDates](docs/TeamNextGameScheduleDates.md)
 - [TeamNextGameScheduleGames](docs/TeamNextGameScheduleGames.md)
 - [TeamNextGameScheduleStatus](docs/TeamNextGameScheduleStatus.md)
 - [TeamNextGameScheduleTeams](docs/TeamNextGameScheduleTeams.md)
 - [TeamNextGameScheduleTeamsAway](docs/TeamNextGameScheduleTeamsAway.md)
 - [TeamNextGameScheduleTeamsAwayLeagueRecord](docs/TeamNextGameScheduleTeamsAwayLeagueRecord.md)
 - [TeamNextGameScheduleTeamsAwayTeam](docs/TeamNextGameScheduleTeamsAwayTeam.md)
 - [TeamNextGameScheduleTeamsHome](docs/TeamNextGameScheduleTeamsHome.md)
 - [TeamNextGameScheduleTeamsHomeLeagueRecord](docs/TeamNextGameScheduleTeamsHomeLeagueRecord.md)
 - [TeamRoster](docs/TeamRoster.md)
 - [TeamStats](docs/TeamStats.md)
 - [TeamStatsSplits](docs/TeamStatsSplits.md)
 - [TeamStatsStat](docs/TeamStatsStat.md)
 - [TeamStatsStats](docs/TeamStatsStats.md)
 - [TeamStatsType](docs/TeamStatsType.md)
 - [Teams](docs/Teams.md)
 - [Venue](docs/Venue.md)
 - [VenueTimeZone](docs/VenueTimeZone.md)

## Documentation For Authorization

 All endpoints do not require authorization.


# **Our Authors**

-   [Saiem Gilani](https://twitter.com/saiemgilani)
<a href="https://twitter.com/saiemgilani" target="blank"><img src="https://img.shields.io/twitter/follow/saiemgilani?color=blue&label=%40saiemgilani&logo=twitter&style=for-the-badge" alt="@saiemgilani" /></a>
<a href="https://github.com/saiemgilani" target="blank"><img src="https://img.shields.io/github/followers/saiemgilani?color=eee&logo=Github&style=for-the-badge" alt="@saiemgilani" /></a>


## **Citations**

To cite the [**`powerplay`**](https://powerplay-py.sportsdataverse.org) Python package in publications, use:

BibTex Citation
```bibtex
@misc{saiemgilani2021powerplay,
  author = {Gilani, Saiem},
  title = {powerplay: The SportsDataverse Package for Hockey Data.},
  url = {https://powerplay-py.sportsdataverse.org},
  season = {2021}
}
```
