We've just rolled out the first user-facing API additions since our API was first made public.
Here are the public API changes:
Colorhas been added. – This is a scalar used to represent colors, such as team colors.
Teamhas new fields:
colors– You can use this to get colors for each team.
EventAvailability.shortNamehas changed from
String!. – "Event availability" objects indicate what platform or network events will be available on. This is our guarantee that each of these objects will always have a short name.
EventAvailabilityhas new fields:
logo– If reasonable, we'll provide a logo for networks and platforms that our games are on.
Game.availabilityhas changed from
[EventAvailability!]!. – We won't be including null items in this list.
Subseasonhas been added. – This is an enum type that differentiates games and time ranges from being "pre-season", "regular", or "post-season".
NamedTimeRangehas new fields:
subseason– Indicates whether the time range is "pre-season", "regular", or "post-season".
Gamehas new fields:
subseason– Indicates whether the game is "pre-season", "regular", or "post-season".
Here are the changes made to APIs that aren't available to unprivileged users:
EventAvailabilityInputhas been added.
GamePatchInputhas new fields:
Mutationhas new fields:
NamedTimeRangePatchInputhas been added.
TeamPatchInputhas new fields:
UserRolehas new enum values:
Most of these are added so we can conveniently support the above public changes. The last one isn't though: In the beginning we were testing transmission of things like clock signals from the stadium using admin access tokens. That was convenient for early internal testing, but in prod we want to follow the principle of least privilege. So this less privileged role is assigned to our in-stadium systems.