Module: BaselineEndpoints
- Included in:
- Baseline, BaselineRequest
- Defined in:
- lib/baseline_endpoints.rb
Overview
Required params saved as two dimensional array. Each inner array is a set of params where 1 of them is required. field test_params is an object of parameters for each endpoint which is used when the test_endpoints method is called.
Constant Summary collapse
- BASE_URL =
"https://statsapi.mlb.com/api/".freeze
- ENDPOINTS =
{ "attendance": { "url": BASE_URL + "{ver}/attendance", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, } }, "query_params": %w[teamId leagueId season date leagueListId gameType fields], "required_params": [%w[teamId leagueId leagueListId]], "note": "Requires one of the following paramters to be present: teamId, leagueId, leagueListId.", "test_params": {:leagueId => "103"}, }, "awards": { "url": BASE_URL + "{ver}/awards{awardId}{recipients}", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "awardId": { "type": "str", "default": nil, "leading_slash": true, }, "recipients": { "type": "bool", "default": false, "true": "/recipients", "false": "", }, }, "query_params": %w[sportId leagueId season hydrate fields], "required_params": [], "note": "Call awards endpoint with no parameters to return a list of awardIds.", "test_params": {:season => 2023 } }, "conferences": { "url": BASE_URL + "{ver}/conferences", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, } }, "query_params": %w[conferenceId season fields], "required_params": [], "test_params": {}, }, "divisions": { "url": BASE_URL + "{ver}/divisions", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, } }, "query_params": %w[divisionId leagueId sportId], "required_params": [], "note": "Call divisions endpoint with no parameters to return a list of divisions.", "test_params": {}, }, "draft": { "url": BASE_URL + "{ver}/draft{prospects}{year}{latest}", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "prospects": { "type": "bool", "default": false, "true": "/prospects", "false": "", }, "year": { "type": "str", "default": Time.now.year.to_s, "leading_slash": true, "required": true, }, "latest": { "type": "bool", "default": false, "true": "/latest", "false": "", }, }, "query_params": %w[limit fields round name school state country position teamId playerId bisPlayerId], "required_params": [], "note": 'No query parameters are honored when "latest" endpoint is queried (year is still required). Prospects and Latest cannot be used together.', "test_params": {gamePk: 718780}, }, "game": { "url": BASE_URL + "{ver}/game/{gamePk}/feed/live", "path_params": { "ver": { "type": "str", "default": "v1.1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[timecode hydrate fields], "required_params": [], "test_params": {gamePk: 718780}, }, "game_diff": { "url": BASE_URL + "{ver}/game/{gamePk}/feed/live/diffPatch", "path_params": { "ver": { "type": "str", "default": "v1.1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[startTimecode endTimecode], "required_params": [["startTimecode"], ["endTimecode"]], "note": "Use the `game_timestamps` endpoint to retrieve all timecodes for a specific game.", "test_params": {gamePk: 718780, startTimecode: 20230330_151907, endTimecode: 20230330_201342}, }, "game_timestamps": { "url": BASE_URL + "{ver}/game/{gamePk}/feed/live/timestamps", "path_params": { "ver": { "type": "str", "default": "v1.1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": [], "required_params": [], "test_params": {gamePk: 718780}, }, "game_changes": { "url": BASE_URL + "{ver}/game/changes", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, } }, "query_params": %w[updatedSince sportId gameType season fields], "required_params": [], "test_params": {}, }, "game_context_metrics": { "url": BASE_URL + "{ver}/game/{gamePk}/contextMetrics", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[timecode fields], "required_params": [], "test_params": {gamePk: 718780}, }, "game_win_probability": { "url": BASE_URL + "{ver}/game/{gamePk}/winProbability", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[timecode fields], "required_params": [], "test_params": {gamePk: 718780}, }, "game_boxscore": { "url": BASE_URL + "{ver}/game/{gamePk}/boxscore", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[timecode fields], "required_params": [], "test_params": {gamePk: 718780}, }, "game_content": { "url": BASE_URL + "{ver}/game/{gamePk}/content", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[highlightLimit], "required_params": [], "test_params": {gamePk: 718780}, }, "game_linescore": { "url": BASE_URL + "{ver}/game/{gamePk}/linescore", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[timecode fields], "required_params": [], "test_params": {gamePk: 718780}, }, "game_play_by_play": { "url": BASE_URL + "{ver}/game/{gamePk}/playByPlay", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "gamePk": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[timecode fields], "required_params": [], "test_params": {gamePk: 718780}, }, "game_pace": { "url": BASE_URL + "{ver}/gamePace", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, } }, "query_params": %w[season teamIds leagueIds leagueListId sportId gameType startDate endDate venueIds orgType includeChildren fields], "required_params": [["season"]], "test_params": {season: 2023}, }, "high_low": { "url": BASE_URL + "{ver}/highLow/{orgType}", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, }, "orgType": { "type": "str", "default": "", "required": true, }, }, "query_params": %w[statGroup sortStat season gameType teamId leagueId sportIds limit fields], "required_params": [["sortStat"], ["season"]], "note": "Valid values for orgType parameter: player, team, division, league, sport, types.", "test_params": {orgType: "team", sortStat: "hits", season: 2023, teamId: 158 }, }, "league": { "url": BASE_URL + "{ver}/league", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, } }, "query_params": %w[sportId leagueIds seasons fields], "required_params": [], "test_params": {}, }, "people": { "url": BASE_URL + "{ver}/people", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, } }, "query_params": %w[personIds hydrate fields], "required_params": [["personIds"]], "test_params": {personIds: 677594}, }, "people_changes": { "url": BASE_URL + "{ver}/people/changes", "path_params": { "ver": { "type": "str", "default": "v1", "required": true, } }, "query_params": %w[updatedSince fields], "required_params": [[