Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Schedule returns irregular results when calling without season parameter #60

Closed
DatGuy1 opened this issue Jul 27, 2021 · 2 comments
Closed
Assignees
Labels
question Question about usage/support

Comments

@DatGuy1
Copy link
Contributor

DatGuy1 commented Jul 27, 2021

https://statsapi.mlb.com/api/v1/schedule?sportId=1&teamId=147 returns zero items
https://statsapi.mlb.com/api/v1/schedule?sportId=1&teamId=147&season=2021 returns the proper result

Others:
NY Mets - Two most recent completed games
LA Angels - Most recent completed game
SWB RailRiders (Yankees AAA affiliate) - Zero items (sportId = 11)

All return what should be correct responses when adding season=2021 parameter

@toddrob99
Copy link
Owner

First, this has nothing to do with the MLB-StatsAPI wrapper that is maintained in this repository. This question is about how the MLB API itself works.

The schedule endpoint appears to be functioning as designed to me.

If you leave off the season parameter and just include sportId (e.g. https://statsapi.mlb.com/api/v1/schedule?sportId=1), the default date range is the current day only. Adding teamId filters the results to only include the given team's games (e.g. https://statsapi.mlb.com/api/v1/schedule?sportId=1&teamId=147).

The season parameter (without any date parameters) requests changes the default date range to the full season (e.g. https://statsapi.mlb.com/api/v1/schedule?sportId=1&season=2021). Then adding the teamId parameter filters the results.

Adding the date parameter or both startDate and endDate will override the default date range. For example, you can get Yankees games in July using https://statsapi.mlb.com/api/v1/schedule?sportId=1&teamId=147&startDate=07/01/2021&endDate=07/31/2021 and you'll get the same results if you include the season parameter. Or you can get today's Yankees games using https://statsapi.mlb.com/api/v1/schedule?sportId=1&teamId=147&date=07/27/2021, again adding the season parameter will have no effect.

If the Mets schedule returns two games, that indicates they have/had a doubleheader that day. The fact that the games being returned were completed is only due to the timing of when you pulled the data. If no games are returned when you include sportId and teamId alone, that means the team doesn't have any games today.

@toddrob99 toddrob99 self-assigned this Jul 27, 2021
@toddrob99 toddrob99 added the question Question about usage/support label Jul 27, 2021
@DatGuy1
Copy link
Contributor Author

DatGuy1 commented Jul 28, 2021

Ah, that's on me. I thought statsapi made a backend change which affected the schedule() function. Thanks for the in-depth response and apologies for the mistaken issue.

@DatGuy1 DatGuy1 closed this as completed Jul 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Question about usage/support
Projects
None yet
Development

No branches or pull requests

2 participants