76operations
51paths
15feature areas
All /v1 operations require a bearer credential. /healthz and /openapi.json are public.
Feature areas
Meta (1)
Me (4)
Player logins (4)
Matches (7)
Club (2)
Weather (6)
API keys (3)
Members (12)
Join requests (5)
Seasons (4)
Competitions (4)
Divisions (6)
Entries (12)
Standings and progress (5)
Events (1)
Meta
GET
/healthzIs the server up, and can it reach its database?Me
GET
/v1/meWho am I?GET
/v1/me/placementsYour placements in started competitionsGET
/v1/me/contactsWho you play with and against, and how to reach themGET
/v1/me/match-plansYour match planning boardPlayer logins
POST
/v1/members/{id}/login-linkMake a login link for a memberPOST
/v1/sessionExchange a login link for a sessionDELETE
/v1/sessionSign outPOST
/v1/members/{id}/sign-outSign a member out everywhereMatches
GET
/v1/matchesList matchesGET
/v1/matches/{id}A match, with submissions visible to the callerPOST
/v1/matches/{id}/claimsReport a result for one side, or correct that side's reportPOST
/v1/matches/{id}/settlement-previewReview a coach decision before saving itPOST
/v1/matches/{id}/settleSettle a match as the coachPUT
/v1/matches/{id}/planPlan one of your matchesGET
/v1/dispute-historyWho has been in disputes, and how each endedClub
GET
/v1/clubThe clubPATCH
/v1/clubChange the club's name, time zone or brandingWeather
GET
/v1/weatherForecast configurationPATCH
/v1/weatherChange forecast unitsGET
/v1/court-locationsCourt locationsPOST
/v1/court-locationsAdd a court locationPATCH
/v1/court-locations/{id}Change a court locationDELETE
/v1/court-locations/{id}Remove a court locationAPI keys
GET
/v1/api-keysList the club's API keysPOST
/v1/api-keysMake an API keyPOST
/v1/api-keys/{id}/revokeRevoke an API keyMembers
GET
/v1/membersList membersPOST
/v1/membersAdd a memberGET
/v1/members/{id}A memberPATCH
/v1/members/{id}Change a memberDELETE
/v1/members/{id}Remove a memberPOST
/v1/members/{id}/invitationRecord a sign-in invitation outcomePUT
/v1/members/{id}/wants-to-playSay what a member wants to play next seasonPOST
/v1/members/{id}/leaveSay this member is not playing next season at allDELETE
/v1/members/{id}/leaveTake back not playing next season at allPOST
/v1/members/{id}/pauseTake a break from the league until they say they are backDELETE
/v1/members/{id}/pauseSay they are back from a breakPOST
/v1/members/{id}/eraseErase a member's personal dataJoin requests
GET
/v1/join-requestsList join requestsPOST
/v1/join-requestsAsk to joinGET
/v1/join-requests/{id}A join requestDELETE
/v1/join-requests/{id}Decline a join requestPOST
/v1/join-requests/{id}/approveApprove a join requestSeasons
GET
/v1/seasonsList seasonsPOST
/v1/seasonsStart planning a seasonGET
/v1/seasons/{id}A seasonPATCH
/v1/seasons/{id}Change a season, or move it to another stateCompetitions
GET
/v1/competitionsList competitionsPOST
/v1/competitionsCreate a competitionGET
/v1/competitions/{id}A competitionPATCH
/v1/competitions/{id}Change a competition, or move it to another stateDivisions
GET
/v1/competitions/{id}/divisionsA competition's divisionsPOST
/v1/competitions/{id}/divisionsAdd a division to a competitionGET
/v1/divisions/{id}A divisionPATCH
/v1/divisions/{id}Change a divisionDELETE
/v1/divisions/{id}Delete an empty divisionPOST
/v1/divisions/{id}/fixturesGenerate a division's round robinEntries
GET
/v1/competitions/{id}/entriesA competition's entriesPOST
/v1/competitions/{id}/entriesEnter a player or pairGET
/v1/entries/{id}An entryPATCH
/v1/entries/{id}Change, move, withdraw or reinstate an entryDELETE
/v1/entries/{id}Delete an entry made by mistakePOST
/v1/entries/{id}/opt-outSay this entry is not playing in the next competitionDELETE
/v1/entries/{id}/opt-outTake back opting out of the next competitionGET
/v1/competitions/{id}/partner-choicesWhat a doubles competition's players want next seasonPUT
/v1/competitions/{id}/partner-choices/{member_id}Say what a doubles player wants next seasonPOST
/v1/competitions/{id}/partner-choices/{member_id}/declineSay no to partnering a player next seasonGET
/v1/competitions/{id}/placementsWhat filling a draft would do, and which places it would leave emptyPOST
/v1/competitions/{id}/placementsFill a draft competition from the previous one's tablesStandings and progress
GET
/v1/competitions/{id}/standingsA competition's tablesGET
/v1/competitions/{id}/progressHow far through a competition isGET
/v1/seasons/{id}/progressHow far through a season each competition isGET
/v1/entries/{id}/progressHow far through its matches an entry isGET
/v1/chase-listWho has matches outstandingEvents
GET
/v1/eventsRead the event feed