Module: SportsDataApi::Nba

Extended by:
Request
Defined in:
lib/sports_data_api/nba.rb,
lib/sports_data_api/nba/game.rb,
lib/sports_data_api/nba/team.rb,
lib/sports_data_api/nba/games.rb,
lib/sports_data_api/nba/stats.rb,
lib/sports_data_api/nba/teams.rb,
lib/sports_data_api/nba/venue.rb,
lib/sports_data_api/nba/player.rb,
lib/sports_data_api/nba/season.rb,
lib/sports_data_api/nba/broadcast.rb

Defined Under Namespace

Classes: Broadcast, Game, Games, Player, Season, Stats, Team, Teams, Venue

Constant Summary collapse

API_VERSION =
4
BASE_URL =
'https://api.sportradar.us/nba/%{access_level}/v%{version}/en'
DIR =
File.join(File.dirname(__FILE__), 'nba')
SPORT =
:nba

Class Method Summary collapse

Methods included from Request

response_json, response_xml, response_xml_xpath

Class Method Details

.daily(year, month, day) ⇒ Object

Fetches NBA daily schedule for a given date



50
51
52
# File 'lib/sports_data_api/nba.rb', line 50

def daily(year, month, day)
  Games.new(response_json("/games/#{year}/#{month}/#{day}/schedule.json"))
end

.game_summary(game_id) ⇒ Object

Fetches NBA game summary for a given game



38
39
40
# File 'lib/sports_data_api/nba.rb', line 38

def game_summary(game_id)
  Game.new(json: response_json("/games/#{game_id}/summary.json"))
end

.schedule(year, season) ⇒ Object

Fetches NBA season schedule for a given year and season

Raises:



23
24
25
26
27
28
# File 'lib/sports_data_api/nba.rb', line 23

def schedule(year, season)
  season = season.to_s.upcase.to_sym
  raise Error.new("#{season} is not a valid season") unless Season.valid?(season)

  Season.new(response_json("/games/#{year}/#{season}/schedule.json"))
end

.team_roster(team_id) ⇒ Object

Fetches NBA team roster



32
33
34
# File 'lib/sports_data_api/nba.rb', line 32

def team_roster(team_id)
  Team.new(response_json("/teams/#{team_id}/profile.json"))
end

.teamsObject

Fetches all NBA teams



44
45
46
# File 'lib/sports_data_api/nba.rb', line 44

def teams
  Teams.new(response_json('/league/hierarchy.json'))
end