All custom endpoints made for the Page / Play integration are served under api/sp/...
Schedules
GET api/sp/schedules
Returns all schedules that have at least one team or at least one game based off an office, season and category (optional).
For an office which have a game office type (League
, Tournament
, or Cup
), only schedules that are directly under the office are queried. For all other types of office, it returns all schedules that have teams under the office and the effective offices (excluding office members).
Accepts
officeId (required)
seasonId (required)
categoryId (optional)
Returns
Schedules
Categories
GET api/sp/categories
Returns all categories that contain schedules with at least one team or at least one game based off an office and season.
For an office which have a game office type (League
, Tournament
, or Cup
), only schedules that are directly under the office are queried. For all other types of office, it returns all schedules that have teams under the office and the effective offices (excluding office members).
Accepts
officeId (required)
seasonId (required)
Returns
Categories, includes Class and Division
Seasons
GET api/sp/seasons
Returns all seasons that Play currently supports. Additional information such as the SID id (externalId
), display name (name
), first / last game date (firstGameDate
/ lastGameDate
), and if its the current season (isCurrent
). The categoryId filter is used to narrow down the first and last game date.
For an office which have a game office type (League
, Tournament
, or Cup
), only games that are directly under the office are queried. For all other types of office, it returns all games that have teams under the office and the effective offices (excluding office members).
Accepts
officeId (required)
categoryId (optional)
Returns
Seasons
[ { "seasonId": "2024-25", "name": "2024-25", "externalId": "daa35de9-a983-11ee-bfcd-02d1437f326a", "firstGameDate": "2024-04-13", "lastGameDate": "2024-09-28", "isCurrent": true }, { "seasonId": "2023-24", "name": "2023-24", "externalId": "56a3ed23-96b0-11ed-aabf-026841454e5e", "firstGameDate": "2023-05-03", "lastGameDate": "2024-04-24", "isCurrent": false }, { "seasonId": "2022-23", "name": "2022-23", "externalId": null, "firstGameDate": null, "lastGameDate": null, "isCurrent": false }, { "seasonId": "2021-22", "name": "2021-22", "externalId": null, "firstGameDate": null, "lastGameDate": null, "isCurrent": false }, { "seasonId": "2020-21", "name": "2020-21", "externalId": null, "firstGameDate": null, "lastGameDate": null, "isCurrent": false }, { "seasonId": "2019-20", "name": "2019-20", "externalId": null, "firstGameDate": null, "lastGameDate": null, "isCurrent": false }, { "seasonId": "2018-19", "name": "2018-19", "externalId": null, "firstGameDate": null, "lastGameDate": null, "isCurrent": false } ]
Events (Work in progress)
GET api/sp/events
or GET api/sp/calendar
Goal is for Spordle Page to be able to display a calendar with all the events that are happening within an office or a schedule.
Games: For offices of type League
, Tournament
, Cup
it will grab all games directly in the office. For all other type of offices (Non-game offices) it will find all the teams that are within the office and the games associated to those teams. Ex. in an Association, games from a team that is in the association that played in a random tournament will show up.
Practices: All practices within the office.
Activities: All activities within the office.