-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathopenapi.json
More file actions
1 lines (1 loc) · 45.8 KB
/
openapi.json
File metadata and controls
1 lines (1 loc) · 45.8 KB
1
{"openapi":"3.0.0","paths":{"/api/v3/events":{"get":{"description":"Gets a List of Events","tags":["Event"],"operationId":"event_getEvents","responses":{"200":{"description":"List of Events","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedEvent"}}}}},"parameters":[{"name":"id[]","description":"Filter by Event ID","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"sku[]","description":"Filter by Event SKU","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"team[]","description":"Filter by Teams that participated in the Event","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"season[]","description":"Filter by the Season that the Event belonged to","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"start","description":"Filter by the Start Date of the Event","in":"query","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"end","description":"Filter by the End Date of the Event","in":"query","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"region","description":"Filter by the region of the event","in":"query","required":false,"schema":{"type":"string"}},{"name":"level[]","description":"Filter by the Event Level","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["World","National","State","Signature","Other"]}}},{"name":"eventTypes[]","description":"Filter by the Event Type","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"$ref":"#/components/schemas/EventType"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}},{"name":"eventSearch","in":"query","required":false,"description":"Case-insensitive regex search across event name, SKU, venue, city, region, and postcode.","schema":{"type":"string"}}]}},"/api/v3/events/{id}":{"get":{"description":"Gets a Single Event","tags":["Event"],"operationId":"event_getEvent","responses":{"200":{"description":"A single Event","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"404":{"description":"Specified Event not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"parameters":[{"name":"id","description":"The ID of the Event","in":"path","required":true,"schema":{"type":"integer","format":"int32"}}]}},"/api/v3/events/{id}/teams":{"get":{"description":"Gets a List of Teams present at a given Event","tags":["Event"],"operationId":"event_getTeams","responses":{"200":{"description":"List of Teams","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedTeam"}}}}},"parameters":[{"name":"id","description":"The ID of the Event","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"number[]","description":"Filter by Team Number","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"registered","description":"Filter by whether the Team is Registered","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"grade[]","description":"Filter by the Grade of the Team","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["College","High School","Middle School","Elementary School"]}}},{"name":"country[]","description":"Filter by the Country of the Team","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}},{"name":"teamSearch","in":"query","required":false,"description":"Case-insensitive regex search across team ID, team number, team name, and team region.","schema":{"type":"string"}}]}},"/api/v3/events/{id}/skills":{"get":{"description":"Gets a List of Skills runs performed at a given Event","tags":["Event"],"operationId":"event_getSkills","responses":{"200":{"description":"A list of Skills","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedSkill"}}}}},"parameters":[{"name":"id","description":"The ID of the Event","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"team[]","description":"Filter by Team Number that performed the Skills run","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"type[]","description":"Filter by Type of Skills run","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["driver","programming"]}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/events/{id}/awards":{"get":{"description":"Gets a List of Awards at a given Event","tags":["Event"],"operationId":"event_getAwards","responses":{"200":{"description":"A list of Awards","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedAward"}}}}},"parameters":[{"name":"id","description":"The ID of the Event","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"team[]","description":"Filter by Team Number that the Award was awarded to","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"winner[]","description":"Filter by the Winner of the Award (can include people's names, etc.)","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/events/{id}/divisions/{div}/matches":{"get":{"description":"Gets a List of Matches for a single Division of an Event","operationId":"event_getDivisionMatches","tags":["Event"],"responses":{"200":{"description":"A list of Matches","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedMatch"}}}}},"parameters":[{"name":"id","description":"The ID of the Event","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"div","description":"The ID of the Division","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"team[]","description":"Filter to only return Matches which involved given Teams","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"round[]","description":"Filter by the Round of the Match.\nSome typical values are shown below:\n- 1 - Practice\n- 2 - Qualification\n- 3 - Quarter-Finals\n- 4 - Semi-Finals\n- 5 - Finals\n- 6 - Round of 16\n- etc.\n","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"instance[]","description":"Filter by the Instance of the Match. This is used to describe which Quarter-Final match (for example) is being played","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"matchnum[]","description":"Filter by the MatchNum of the Match. This is the actual Match \"number\", e.g. Qualification Match, or the individual match in a Best of 3","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/events/{id}/divisions/{div}/finalistRankings":{"get":{"description":"Gets a List of Finalist Rankings for a single Division of an Event","operationId":"event_getDivisionFinalistRankings","tags":["Event"],"responses":{"200":{"description":"A list of Rankings","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedRanking"}}}}},"parameters":[{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]},"parameters":[{"name":"id","description":"The ID of the Event","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"div","description":"The ID of the Division","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"team[]","description":"Filter to only return Rankings which involve given Teams","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"rank[]","description":"Filter by the Rank","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}}]},"/api/v3/events/{id}/divisions/{div}/rankings":{"get":{"description":"Gets a List of Rankings for a single Division of an Event","operationId":"event_getDivisionRankings","tags":["Event"],"responses":{"200":{"description":"A list of Rankings","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedRanking"}}}}},"parameters":[{"name":"id","description":"The ID of the Event","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"div","description":"The ID of the Division","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"team[]","description":"Filter to only return Rankings which involve given Teams","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"rank[]","description":"Filter by the Rank","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/teams":{"get":{"description":"Gets a List of Teams","operationId":"team_getTeams","tags":["Team"],"responses":{"200":{"description":"List of Teams","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedTeam"}}}}},"parameters":[{"name":"id[]","description":"Filter by Team ID","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"number[]","description":"Filter by Team Number","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"event[]","description":"Filter by Events that Teams have attended","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"registered","description":"Filter by whether or not the Team is Registered","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"program[]","description":"Filter by the Program that the Team is part of","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer"}}},{"name":"grade[]","description":"Filter by the Grade of the Team","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["College","High School","Middle School","Elementary School"]}}},{"name":"country[]","description":"Filter by the Country of the Team","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}},{"name":"teamSearch","in":"query","required":false,"description":"Case-insensitive regex search across team ID, team number, team name, and team region.","schema":{"type":"string"}}]}},"/api/v3/teams/{id}":{"get":{"description":"Gets a Single Team","operationId":"team_getTeam","tags":["Team"],"responses":{"200":{"description":"A single Team","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Team"}}}},"404":{"description":"Specified Team not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"parameters":[{"name":"id","description":"The ID of the Team","in":"path","required":true,"schema":{"type":"integer","format":"int32"}}]}},"/api/v3/teams/{id}/events":{"get":{"description":"Gets a List of Events that a given Team has attended","operationId":"team_getEvents","tags":["Team"],"responses":{"200":{"description":"List of Events","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedEvent"}}}}},"parameters":[{"name":"id","description":"The ID of the Team","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"sku[]","description":"Filter by Event SKU","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"season[]","description":"Filter by the Season that the Event belonged to","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"start","description":"Filter by the Start Date of the Event","in":"query","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"end","description":"Filter by the End Date of the Event","in":"query","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"level[]","description":"Filter by the Event Level","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["World","National","State","Signature","Other"]}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}},{"name":"eventSearch","in":"query","required":false,"description":"Case-insensitive regex search across event name, SKU, venue, city, region, and postcode.","schema":{"type":"string"}}]}},"/api/v3/teams/{id}/matches":{"get":{"description":"Gets a List of Matches that a given Team has played in","operationId":"team_getMatches","tags":["Team"],"responses":{"200":{"description":"List of Matches","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedMatch"}}}}},"parameters":[{"name":"id","description":"The ID of the Team","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"event[]","description":"Filter by the Event the Match was performed at","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"season[]","description":"Filter by the Season during which the Match was played","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"round[]","description":"Filter by the Round of the Match.\nSome typical values are shown below:\n- 1 - Practice\n- 2 - Qualification\n- 3 - Quarter-Finals\n- 4 - Semi-Finals\n- 5 - Finals\n- 6 - Round of 16\n- etc.\n","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"instance[]","description":"Filter by the Instance of the Match. This is used to describe which Quarter-Final match (for example) is being played","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"matchnum[]","description":"Filter by the MatchNum of the Match. This is the actual Match \"number\", e.g. Qualification Match, or the individual match in a Best of 3","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/teams/{id}/rankings":{"get":{"description":"Gets a List of Rankings for a given Team","operationId":"team_getRankings","tags":["Team"],"responses":{"200":{"description":"List of Rankings","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedRanking"}}}}},"parameters":[{"name":"id","description":"The ID of the Team","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"event[]","description":"Filter by the Event in which the Ranking was achieved","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"rank[]","description":"Filter by the Rank","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"season[]","description":"Filter by the Season during which the Ranking was","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/teams/{id}/skills":{"get":{"description":"Gets a List of Skills runs that a given Team has performed","operationId":"team_getSkills","tags":["Team"],"responses":{"200":{"description":"A list of Skills","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedSkill"}}}}},"parameters":[{"name":"id","description":"The ID of the Team","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"event[]","description":"Filter by the Event at which the Skills run was performed","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"type[]","description":"Filter by Type of Skills run","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["driver","programming"]}}},{"name":"season[]","description":"Filter by the Season during which the Skills run was performed","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/teams/{id}/awards":{"get":{"description":"Gets a List of Awards that a given Team has received","operationId":"team_getAwards","tags":["Team"],"responses":{"200":{"description":"List of Awards","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedAward"}}}}},"parameters":[{"name":"id","description":"The ID of the Team","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"event[]","description":"Filter by the Event at which the Award was given out","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"season[]","description":"Filter by the Season in which the Award was given out","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/programs/{id}":{"get":{"description":"Find a single Program by ID","operationId":"program_getProgram","tags":["Program"],"parameters":[{"name":"id","description":"The Program ID","in":"path","required":true,"schema":{"type":"integer","format":"int32"}}],"responses":{"200":{"description":"Single Program","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Program"}}}}}}},"/api/v3/programs":{"get":{"description":"Gets a List of Programs","operationId":"program_getPrograms","tags":["Program"],"responses":{"200":{"description":"List of Programs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedProgram"}}}}},"parameters":[{"name":"id[]","description":"Filter by program ID","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/seasons":{"get":{"description":"Gets a List of Seasons","operationId":"season_getSeasons","tags":["Season"],"responses":{"200":{"description":"List of Seasons","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedSeason"}}}}},"parameters":[{"name":"id[]","description":"Filter by Season ID","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"program[]","description":"Filter by Program to which the Season belongs","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer"}}},{"name":"team[]","description":"Filter by seasons in which the specified teams were active","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer"}}},{"name":"start","description":"Filter by Start Date of the Season","in":"query","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"end","description":"Filter by End Date of the Season","in":"query","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"active","description":"Only include active Seasons","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}}]}},"/api/v3/seasons/{id}":{"get":{"description":"Gets a single Season","operationId":"season_getSeason","tags":["Season"],"responses":{"200":{"description":"A single Season","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Season"}}}}},"parameters":[{"name":"id","description":"The Season ID","in":"path","required":true,"schema":{"type":"integer","format":"int32"}}]}},"/api/v3/seasons/{id}/events":{"get":{"description":"Gets a List of Events for a given Season","operationId":"season_getEvents","tags":["Season"],"responses":{"200":{"description":"List of Events","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaginatedEvent"}}}}},"parameters":[{"name":"id","description":"The Season ID","in":"path","required":true,"schema":{"type":"integer","format":"int32"}},{"name":"sku[]","description":"Filter by Event SKU","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"team[]","description":"Filter by Teams that participated in the Event","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}}},{"name":"start","description":"Filter by the Start Date of the Event","in":"query","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"end","description":"Filter by the End Date of the Event","in":"query","required":false,"schema":{"type":"string","format":"date-time"}},{"name":"level[]","description":"Filter by the Event Level","in":"query","required":false,"style":"form","explode":true,"schema":{"type":"array","items":{"type":"string","enum":["World","National","State","Signature","Other"]}}},{"name":"page","in":"query","required":false,"description":"Pagination page number. Defaults to 1.","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","required":false,"description":"Items per page. Defaults to 25. Regular keys are capped at 100 and unlimited keys at 10000.","schema":{"type":"integer","minimum":1,"default":25}},{"name":"eventSearch","in":"query","required":false,"description":"Case-insensitive regex search across event name, SKU, venue, city, region, and postcode.","schema":{"type":"string"}}]}},"/api/v3/events/{id}/divisions/{div}/finalist_rankings":{"get":{"tags":["Official RobotEvents"],"summary":"List division finalist rankings","operationId":"division_finalist_rankings_api_v3_events__id__divisions__div__finalist_rankings_get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","description":"The unique RobotEvents ID for the event","title":"Id"},"description":"The unique RobotEvents ID for the event"},{"name":"div","in":"path","required":true,"schema":{"type":"integer","description":"The unique RobotEvents ID for the division","title":"Div"},"description":"The unique RobotEvents ID for the division"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/events/{id}/divisions":{"get":{"tags":["Official RobotEvents"],"summary":"List event divisions","operationId":"event_divisions_api_v3_events__id__divisions_get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","description":"The unique RobotEvents ID for the event","title":"Id"},"description":"The unique RobotEvents ID for the event"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/superscore/rankings/skills/{program}":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"World Skills Rankings","description":"Returns global skills rankings for a program, season, and grade. Grade must be an integer: 1 (Elementary), 2 (Middle School), 3 (High School), 4 (College).","operationId":"world_skills_api_v3_superscore_rankings_skills__program__get","parameters":[{"name":"program","in":"path","required":true,"schema":{"type":"string","description":"The program (viqrc, v5rc, vurc)","title":"Program"},"description":"The program (viqrc, v5rc, vurc)"},{"name":"season","in":"query","required":true,"schema":{"type":"integer","description":"The RobotEvents Season ID","title":"Season"},"description":"The RobotEvents Season ID"},{"name":"grade","in":"query","required":true,"schema":{"type":"integer","description":"Grade level: 1 (Elementary), 2 (Middle School), 3 (High School), 4 (College)","title":"Grade"},"description":"Grade level: 1 (Elementary), 2 (Middle School), 3 (High School), 4 (College)"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/superscore/rankings/v5rc":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"V5RC Rankings (SuperScore)","description":"Returns V5RC team rankings with predictions.\n \n Sorting metrics (passed in 'sort'):\n - 'superscore': Calculated composite score (Default)\n - 'trueskill': TrueSkill MU value\n - 'trueskill_sigma': TrueSkill Sigma (Uncertainty, sorted ASC)\n - 'epa': Calculated EPA (Total)\n - 'auto_skill': Autonomous performance metric\n - 'offense' / 'defense': Specific playstyle ratings\n - 'ccwm': Calculated Contribution Over Margin\n - 'wins' / 'matches': Play history volume","operationId":"v5_rankings_api_v3_superscore_rankings_v5rc_get","parameters":[{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Metric to sort by","title":"Sort"},"description":"Metric to sort by"},{"name":"season[]","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"description":"Filter by season IDs","title":"Season[]"},"description":"Filter by season IDs"},{"name":"team[]","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"description":"Filter by team IDs","title":"Team[]"},"description":"Filter by team IDs"},{"name":"rank[]","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"description":"Filter by calculated rank range","title":"Rank[]"},"description":"Filter by calculated rank range"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/superscore/rankings/viqrc":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"VIQRC Rankings (SuperScore)","description":"Returns VIQRC team rankings with predictions.\n \n Sorting metrics (passed in 'sort'):\n - 'superscore': Calculated composite score (Default)\n - 'trueskill': TrueSkill MU\n - 'trueskill_sigma': TrueSkill Sigma (ASC)\n - 'epa': Calculated EPA\n - 'opr': Offensive Power Rating\n - 'avg_score': Avg Match Score\n - 'max_score': Max Match Score\n - 'wins' / 'matches': Historical performance volume\n - 'alliance_luck': Luck/RNG assessment","operationId":"viqrc_rankings_api_v3_superscore_rankings_viqrc_get","parameters":[{"name":"sort","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Metric to sort by","title":"Sort"},"description":"Metric to sort by"},{"name":"season[]","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"description":"Filter by season IDs","title":"Season[]"},"description":"Filter by season IDs"},{"name":"team[]","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"description":"Filter by team IDs","title":"Team[]"},"description":"Filter by team IDs"},{"name":"rank[]","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"description":"Filter by rank range","title":"Rank[]"},"description":"Filter by rank range"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/superscore/rankings/v5rc/csv":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"Export V5RC Rankings (CSV)","description":"Downloads ALL V5RC rankings as a CSV file. Optimized for large datasets.","operationId":"v5_rankings_csv_api_v3_superscore_rankings_v5rc_csv_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v3/superscore/rankings/viqrc/csv":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"Export VIQRC Rankings (CSV)","description":"Downloads ALL VIQRC rankings as a CSV file. Optimized for large datasets.","operationId":"viqrc_rankings_csv_api_v3_superscore_rankings_viqrc_csv_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v3/superscore/predictions":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"List prediction runs","description":"Returns a paginated list of all Monte Carlo simulation runs.","operationId":"prediction_runs_api_v3_superscore_predictions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v3/superscore/predictions/{id}":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"Get prediction run","description":"Returns detailed metadata and validation metrics for a specific simulation run.","operationId":"prediction_run_api_v3_superscore_predictions__id__get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","description":"The unique internal ID for the prediction run","title":"Id"},"description":"The unique internal ID for the prediction run"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/superscore/predictions/{id}/rankings":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"Get prediction rankings","description":"Returns team-level win probabilities and average finish ranks for a simulation run.","operationId":"prediction_rankings_api_v3_superscore_predictions__id__rankings_get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","description":"The unique internal ID for the prediction run","title":"Id"},"description":"The unique internal ID for the prediction run"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v3/superscore/predictions/{id}/matches":{"get":{"tags":["SuperScore (Predictions & Analytics)"],"summary":"List match predictions","description":"Returns the calculated win probabilities and expected scores for all simulated matches in a run.","operationId":"prediction_matches_api_v3_superscore_predictions__id__matches_get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","description":"The unique internal ID for the prediction run","title":"Id"},"description":"The unique internal ID for the prediction run"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"security":[{"bearerAuth":[]},{"apiKeyAuth":[]}],"info":{"title":"RoboSTEM API v3","version":"1.0.21","description":"An API to access VEX competition data.\n\n## Request Metadata\nPagination is performed the same way throughout each pageable endpoint using query parameters `page` and `per_page` (per_page default is 25 with a maximum of 100).\nPlease note that dates should be formatted according to RFC3339.\n\n"},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"API Key"},"apiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key"}},"schemas":{"Event":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"sku":{"type":"string"},"name":{"type":"string"},"start":{"type":"string","format":"date-time"},"end":{"type":"string","format":"date-time"},"season":{"$ref":"#/components/schemas/IdInfo"},"program":{"$ref":"#/components/schemas/IdInfo"},"location":{"$ref":"#/components/schemas/Location"},"locations":{"type":"array","items":{"$ref":"#/components/schemas/Locations"}},"divisions":{"type":"array","items":{"$ref":"#/components/schemas/Division"}},"level":{"$ref":"#/components/schemas/EventLevel"},"ongoing":{"type":"boolean"},"awards_finalized":{"type":"boolean"},"event_type":{"$ref":"#/components/schemas/EventType"}},"required":["id","sku","name","season","program","location"]},"EventType":{"type":"string","enum":["tournament","league","workshop","virtual"]},"Program":{"type":"object","properties":{"id":{"type":"integer","format":"i32"},"abbr":{"type":"string"},"name":{"type":"string"}}},"EventLevel":{"type":"string","enum":["World","National","Regional","State","Signature","Other"]},"Location":{"type":"object","properties":{"venue":{"type":"string"},"address_1":{"type":"string"},"address_2":{"type":"string"},"city":{"type":"string"},"region":{"type":"string"},"postcode":{"type":"string"},"country":{"type":"string"},"coordinates":{"$ref":"#/components/schemas/Coordinates"}}},"Coordinates":{"type":"object","properties":{"lat":{"type":"number","format":"float"},"lon":{"type":"number","format":"float"}}},"Locations":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Location"}},"Division":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"name":{"type":"string"},"order":{"type":"integer","format":"int32"}}},"Grade":{"type":"string","enum":["College","High School","Middle School","Elementary School"]},"Team":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"number":{"type":"string"},"team_name":{"type":"string"},"robot_name":{"type":"string"},"organization":{"type":"string"},"location":{"$ref":"#/components/schemas/Location"},"registered":{"type":"boolean"},"program":{"$ref":"#/components/schemas/IdInfo"},"grade":{"$ref":"#/components/schemas/Grade"}},"required":["id","number","program"]},"IdInfo":{"type":"object","required":["id","name"],"properties":{"id":{"type":"integer","format":"int32"},"name":{"type":"string"},"code":{"type":"string","nullable":true}}},"MatchObj":{"type":"object","required":["id","event","division","round","instance","matchnum","scored","alliances","name"],"properties":{"id":{"type":"integer","format":"int32"},"event":{"$ref":"#/components/schemas/IdInfo"},"division":{"$ref":"#/components/schemas/IdInfo"},"round":{"type":"integer","format":"int32"},"instance":{"type":"integer","format":"int32"},"matchnum":{"type":"integer","format":"int32"},"scheduled":{"type":"string","format":"date-time"},"started":{"type":"string","format":"date-time"},"field":{"type":"string"},"scored":{"type":"boolean"},"name":{"type":"string"},"alliances":{"type":"array","items":{"$ref":"#/components/schemas/Alliance"}}}},"Alliance":{"type":"object","required":["color","score","teams"],"properties":{"color":{"type":"string","enum":["red","blue"]},"score":{"type":"integer","format":"int32"},"teams":{"type":"array","items":{"$ref":"#/components/schemas/AllianceTeam"}}}},"AllianceTeam":{"type":"object","properties":{"team":{"$ref":"#/components/schemas/IdInfo"},"sitting":{"type":"boolean"}}},"Ranking":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"event":{"$ref":"#/components/schemas/IdInfo"},"division":{"$ref":"#/components/schemas/IdInfo"},"rank":{"type":"integer","format":"int32"},"team":{"$ref":"#/components/schemas/IdInfo"},"wins":{"type":"integer","format":"int32"},"losses":{"type":"integer","format":"int32"},"ties":{"type":"integer","format":"int32"},"wp":{"type":"integer","format":"int32"},"ap":{"type":"integer","format":"int32"},"sp":{"type":"integer","format":"int32"},"high_score":{"type":"integer","format":"int32"},"average_points":{"type":"number"},"total_points":{"type":"integer","format":"int32"}}},"Skill":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"event":{"$ref":"#/components/schemas/IdInfo"},"team":{"$ref":"#/components/schemas/IdInfo"},"type":{"$ref":"#/components/schemas/SkillType"},"season":{"$ref":"#/components/schemas/IdInfo"},"division":{"$ref":"#/components/schemas/IdInfo"},"rank":{"type":"integer","format":"int32"},"score":{"type":"integer","format":"int32"},"attempts":{"type":"integer","format":"int32"}}},"SkillType":{"type":"string","enum":["driver","programming","package_delivery_time"]},"Award":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"event":{"$ref":"#/components/schemas/IdInfo"},"order":{"type":"integer","format":"int32"},"title":{"type":"string"},"qualifications":{"type":"array","items":{"type":"string"}},"designation":{"type":"string","enum":["tournament","division"],"nullable":true,"description":"Some awards are given out per tournament or division"},"classification":{"type":"string","enum":["champion","finalist","semifinalist","quarterfinalist"],"nullable":true},"teamWinners":{"type":"array","items":{"$ref":"#/components/schemas/TeamAwardWinner"}},"individualWinners":{"type":"array","items":{"type":"string"}}}},"TeamAwardWinner":{"type":"object","properties":{"division":{"$ref":"#/components/schemas/IdInfo"},"team":{"$ref":"#/components/schemas/IdInfo"}}},"Season":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"name":{"type":"string"},"program":{"$ref":"#/components/schemas/IdInfo"},"start":{"type":"string","format":"date-time"},"end":{"type":"string","format":"date-time"},"years_start":{"type":"integer","format":"int32"},"years_end":{"type":"integer","format":"int32"}}},"Error":{"type":"object","properties":{"code":{"type":"integer","format":"int32"},"message":{"type":"string"}}},"PageMeta":{"type":"object","properties":{"current_page":{"type":"integer"},"first_page_url":{"type":"string"},"from":{"type":"integer"},"last_page":{"type":"integer"},"last_page_url":{"type":"string"},"next_page_url":{"type":"string"},"path":{"type":"string"},"per_page":{"type":"integer"},"prev_page_url":{"type":"string"},"to":{"type":"integer"},"total":{"type":"integer"}}},"PaginatedTeam":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/PageMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Team"}}}},"PaginatedEvent":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/PageMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Event"}}}},"PaginatedAward":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/PageMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Award"}}}},"PaginatedSeason":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/PageMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Season"}}}},"PaginatedRanking":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/PageMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Ranking"}}}},"PaginatedMatch":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/PageMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/MatchObj"}}}},"PaginatedSkill":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/PageMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Skill"}}}},"PaginatedProgram":{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/PageMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Program"}}}},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}