{
  "components": {
    "schemas": {
      "ActivityInfo": {
        "additionalProperties": false,
        "properties": {
          "lastGameWithTeam": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "startedLastGame": {
            "type": "boolean"
          }
        },
        "required": [
          "startedLastGame",
          "lastGameWithTeam"
        ],
        "type": "object"
      },
      "AiAnalysisRequest": {
        "additionalProperties": false,
        "properties": {
          "action": {
            "type": "string"
          },
          "awayTeamName": {
            "type": "string"
          },
          "eventId": {},
          "homeTeamName": {
            "type": "string"
          },
          "matchDate": {
            "type": "string"
          },
          "tournamentName": {
            "type": "string"
          }
        },
        "required": [
          "action",
          "eventId",
          "homeTeamName",
          "awayTeamName",
          "tournamentName",
          "matchDate"
        ],
        "type": "object"
      },
      "AvailableMarketsResponse": {
        "additionalProperties": false,
        "properties": {
          "dataSource": {
            "type": "string"
          },
          "statTypes": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "statTypes"
        ],
        "type": "object"
      },
      "AwayTeamStruct": {
        "additionalProperties": false,
        "properties": {
          "id": {},
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "BasketballBoxScore": {
        "additionalProperties": false,
        "properties": {
          "assists": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blocks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blocksReceived": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "defensiveRebounds": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "effectiveFieldGoalPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "efficiencyRating": {
            "type": [
              "string",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "fantasyScore": {
            "format": "double",
            "type": "number"
          },
          "fieldGoalsMade": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "flagrantFouls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fouledOut": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "foulsDrawn": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "freeThrowsMade": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "offensiveRebounds": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "personalFouls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "plusMinus": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "points": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "pointsAssists": {
            "format": "int64",
            "type": "integer"
          },
          "pointsRebounds": {
            "format": "int64",
            "type": "integer"
          },
          "pointsReboundsAssists": {
            "format": "int64",
            "type": "integer"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "reboundsAssists": {
            "format": "int64",
            "type": "integer"
          },
          "steals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "stealsBlocks": {
            "format": "int64",
            "type": "integer"
          },
          "teamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "technicalFouls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "threePointersMade": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalRebounds": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "trueShootingPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "turnovers": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "usage": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "eventId",
          "playerId",
          "teamId",
          "minutesPlayed",
          "points",
          "fieldGoalsMade",
          "threePointersMade",
          "freeThrowsMade",
          "offensiveRebounds",
          "defensiveRebounds",
          "totalRebounds",
          "assists",
          "steals",
          "blocks",
          "turnovers",
          "personalFouls",
          "plusMinus",
          "efficiencyRating",
          "effectiveFieldGoalPercentage",
          "trueShootingPercentage",
          "usage",
          "blocksReceived",
          "foulsDrawn",
          "technicalFouls",
          "flagrantFouls",
          "fouledOut",
          "position",
          "pointsReboundsAssists",
          "pointsAssists",
          "pointsRebounds",
          "reboundsAssists",
          "stealsBlocks",
          "fantasyScore"
        ],
        "type": "object"
      },
      "BasketballPlayerLine": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "stats": {
            "additionalProperties": {
              "$ref": "#/components/schemas/BasketballBoxScore"
            },
            "type": "object"
          }
        },
        "required": [
          "id",
          "slug",
          "name",
          "position",
          "stats"
        ],
        "type": "object"
      },
      "BasketballTeamSummary": {
        "additionalProperties": false,
        "properties": {
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "shortname": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortname",
          "countrySlug"
        ],
        "type": "object"
      },
      "BasketballTournamentGroup": {
        "additionalProperties": false,
        "properties": {
          "country": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isFavorite": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "shouldShow": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "uniqueTournamentId",
          "country",
          "isFavorite",
          "shouldShow"
        ],
        "type": "object"
      },
      "BatchCardOdds": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "type": "string"
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "overOdds": {
            "type": [
              "string",
              "null"
            ]
          },
          "underOdds": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "line",
          "overOdds",
          "underOdds",
          "bookmaker"
        ],
        "type": "object"
      },
      "BatchExtraStatsResult": {
        "additionalProperties": false,
        "properties": {
          "awayTeamName": {
            "type": "string"
          },
          "data": {
            "items": {
              "$ref": "#/components/schemas/CommentaryPlayerStats"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "hasCommentary": {
            "type": "boolean"
          },
          "homeTeamName": {
            "type": "string"
          },
          "matchStatus": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "eventId",
          "hasCommentary",
          "data"
        ],
        "type": "object"
      },
      "BetBuilderLineupPlayer": {
        "additionalProperties": false,
        "properties": {
          "jerseyNo": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "playerId",
          "name",
          "jerseyNo",
          "position"
        ],
        "type": "object"
      },
      "BetBuilderLineups": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "$ref": "#/components/schemas/BetBuilderSideLineup"
          },
          "home": {
            "$ref": "#/components/schemas/BetBuilderSideLineup"
          }
        },
        "required": [
          "home",
          "away"
        ],
        "type": "object"
      },
      "BetBuilderLineupsResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/BetBuilderLineups"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "BetBuilderSideLineup": {
        "additionalProperties": false,
        "properties": {
          "players": {
            "items": {
              "$ref": "#/components/schemas/BetBuilderLineupPlayer"
            },
            "type": "array"
          },
          "source": {
            "enum": [
              "confirmed",
              "predicted",
              "last",
              "none"
            ],
            "type": "string"
          }
        },
        "required": [
          "players",
          "source"
        ],
        "type": "object"
      },
      "BettingOddsRulesBot": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isEnabled": {
            "type": "boolean"
          },
          "label": {
            "type": "string"
          },
          "marketDescription": {
            "type": "string"
          },
          "total": {
            "type": [
              "string",
              "null"
            ]
          },
          "updatedAt": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "label",
          "marketDescription",
          "total",
          "isEnabled",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "BotPromptTemplates": {
        "additionalProperties": false,
        "properties": {
          "content": {
            "type": "string"
          },
          "createdAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isActive": {
            "type": "boolean"
          },
          "name": {
            "type": "string"
          },
          "updatedAt": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "content",
          "isActive",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CardLine": {
        "additionalProperties": false,
        "properties": {
          "lambda": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "oddsDifference": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "overOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "underOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "line",
          "overOdds",
          "underOdds",
          "oddsDifference",
          "lambda"
        ],
        "type": "object"
      },
      "CategoryBody": {
        "additionalProperties": false,
        "properties": {
          "alpha2": {
            "type": [
              "string",
              "null"
            ]
          },
          "flag": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "flag",
          "alpha2"
        ],
        "type": "object"
      },
      "CommentaryPlayerStats": {
        "additionalProperties": false,
        "properties": {
          "firstHalfFouls": {
            "format": "int64",
            "type": "integer"
          },
          "firstHalfFoulsWon": {
            "format": "int64",
            "type": "integer"
          },
          "firstHalfShots": {
            "format": "int64",
            "type": "integer"
          },
          "firstHalfShotsOnTarget": {
            "format": "int64",
            "type": "integer"
          },
          "headedShot": {
            "format": "int64",
            "type": "integer"
          },
          "headedShotOnTarget": {
            "format": "int64",
            "type": "integer"
          },
          "playerId": {
            "type": "string"
          },
          "playerName": {
            "type": "string"
          },
          "playerSlug": {
            "type": "string"
          },
          "shotsOnTargetOutsideBox": {
            "format": "int64",
            "type": "integer"
          },
          "shotsOutsideBox": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "playerId",
          "playerName",
          "playerSlug",
          "shotsOutsideBox",
          "shotsOnTargetOutsideBox",
          "headedShot",
          "headedShotOnTarget",
          "firstHalfFouls",
          "firstHalfFoulsWon",
          "firstHalfShots",
          "firstHalfShotsOnTarget"
        ],
        "type": "object"
      },
      "ComparisonMarket": {
        "additionalProperties": false,
        "properties": {
          "category": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "outcomes": {
            "items": {
              "$ref": "#/components/schemas/ComparisonOutcome"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "category",
          "outcomes"
        ],
        "type": "object"
      },
      "ComparisonOutcome": {
        "additionalProperties": false,
        "properties": {
          "bestOdds": {
            "$ref": "#/components/schemas/ComparisonQuote"
          },
          "bookmakerOdds": {
            "items": {
              "$ref": "#/components/schemas/ComparisonQuote"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "label": {
            "type": "string"
          }
        },
        "required": [
          "label",
          "bookmakerOdds"
        ],
        "type": "object"
      },
      "ComparisonQuote": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "type": "string"
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "odds": {
            "type": "string"
          }
        },
        "required": [
          "bookmaker",
          "odds"
        ],
        "type": "object"
      },
      "ConsolidatedTournament": {
        "additionalProperties": false,
        "properties": {
          "categorySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "isFavorite": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "shouldShow": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": "integer"
          },
          "uniqueTournamentSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "upcomingFixtureCount": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "uniqueTournamentId",
          "uniqueTournamentSlug",
          "categorySlug",
          "country",
          "isFavorite",
          "shouldShow",
          "upcomingFixtureCount"
        ],
        "type": "object"
      },
      "CountryBody": {
        "additionalProperties": false,
        "properties": {
          "alpha2": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "slug",
          "alpha2"
        ],
        "type": "object"
      },
      "DailyFixture": {
        "additionalProperties": false,
        "properties": {
          "actualAwayCards": {
            "format": "int64",
            "type": "integer"
          },
          "actualAwayRedCards": {
            "format": "int64",
            "type": "integer"
          },
          "actualAwayYellowCards": {
            "format": "int64",
            "type": "integer"
          },
          "actualHomeCards": {
            "format": "int64",
            "type": "integer"
          },
          "actualHomeRedCards": {
            "format": "int64",
            "type": "integer"
          },
          "actualHomeYellowCards": {
            "format": "int64",
            "type": "integer"
          },
          "awayTeam": {
            "type": "string"
          },
          "bet365CardOdds": {
            "additionalProperties": {},
            "type": "object"
          },
          "homeTeam": {
            "type": "string"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "league": {
            "type": "string"
          },
          "matchDate": {
            "type": "string"
          },
          "matchTime": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "teamCardsAwayOdds": {
            "additionalProperties": {},
            "type": "object"
          },
          "teamCardsHomeOdds": {
            "additionalProperties": {},
            "type": "object"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "homeTeam",
          "awayTeam",
          "league",
          "uniqueTournamentId",
          "matchDate",
          "matchTime",
          "status",
          "bet365CardOdds",
          "teamCardsHomeOdds",
          "teamCardsAwayOdds"
        ],
        "type": "object"
      },
      "DashboardLeagueListRow": {
        "additionalProperties": false,
        "properties": {
          "ai_analysis_allowed": {
            "type": "boolean"
          },
          "country": {
            "type": [
              "string",
              "null"
            ]
          },
          "heatmapLoad": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isFavorite": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "logo": {
            "type": "string"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "onForTelegramBot": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "predictlineup_allowed": {
            "type": "boolean"
          },
          "primaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "shotmapLoad": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "shouldShow": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shouldShow",
          "isFavorite",
          "heatmapLoad",
          "shotmapLoad",
          "predictlineup_allowed",
          "ai_analysis_allowed",
          "onForTelegramBot",
          "primaryColor",
          "uniqueTournamentId",
          "country",
          "logo"
        ],
        "type": "object"
      },
      "DashboardLeagueRow": {
        "additionalProperties": false,
        "properties": {
          "ai_analysis_allowed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "country": {
            "type": [
              "string",
              "null"
            ]
          },
          "heatmapLoad": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isFavorite": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "predictlineup_allowed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "shotmapLoad": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "shouldShow": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shouldShow",
          "isFavorite",
          "heatmapLoad",
          "shotmapLoad",
          "predictlineup_allowed",
          "ai_analysis_allowed",
          "uniqueTournamentId",
          "country"
        ],
        "type": "object"
      },
      "DataVisualizerEvent": {
        "additionalProperties": false,
        "properties": {
          "awayScore": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeam": {
            "type": "string"
          },
          "awayTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "corruptedPlayerStatsCount": {
            "format": "int64",
            "type": "integer"
          },
          "hasCorruptedPlayerStats": {
            "type": "boolean"
          },
          "hasCorruptedTeamStats": {
            "type": "boolean"
          },
          "hasPlayerStats": {
            "type": "boolean"
          },
          "hasStats": {
            "type": "boolean"
          },
          "homeScore": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeam": {
            "type": "string"
          },
          "homeTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isUnsupportedTournament": {
            "type": "boolean"
          },
          "league": {
            "type": "string"
          },
          "matchDate": {
            "type": "string"
          },
          "matchTime": {
            "type": "string"
          },
          "playerStatsCount": {
            "format": "int64",
            "type": "integer"
          },
          "slug": {
            "type": "string"
          },
          "statsCount": {
            "format": "int64",
            "type": "integer"
          },
          "status": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "homeTeam",
          "awayTeam",
          "homeTeamId",
          "awayTeamId",
          "league",
          "matchDate",
          "matchTime",
          "status",
          "homeScore",
          "awayScore",
          "hasStats",
          "statsCount",
          "hasCorruptedTeamStats",
          "hasPlayerStats",
          "playerStatsCount",
          "hasCorruptedPlayerStats",
          "corruptedPlayerStatsCount",
          "isUnsupportedTournament",
          "slug"
        ],
        "type": "object"
      },
      "Events": {
        "additionalProperties": false,
        "properties": {
          "awayScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayScoreNormaltime": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "coverage": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "customId": {
            "type": [
              "string",
              "null"
            ]
          },
          "defaultOvertimeLength": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "defaultPeriodCount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "defaultPeriodLength": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fanRatingEvent": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "hasGlobalHighlights": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "homeScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeScoreNormaltime": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "injuryTime1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "injuryTime2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "lineupConfirmed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "nextAutoPlayerUpdate": {
            "type": [
              "string",
              "null"
            ]
          },
          "period1Away": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "period1Home": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "period2Away": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "period2Home": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "refereeId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "roundInfo": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "roundSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "seasonId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          },
          "timeCurrentPeriodStartTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "timeStartTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "venueId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "winnerCode": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "slug",
          "customId",
          "status",
          "winnerCode",
          "roundInfo",
          "roundSlug",
          "timeCurrentPeriodStartTimestamp",
          "timeStartTimestamp",
          "venueId",
          "homeTeamId",
          "awayTeamId",
          "homeScoreCurrent",
          "awayScoreCurrent",
          "homeScoreNormaltime",
          "awayScoreNormaltime",
          "coverage",
          "fanRatingEvent",
          "hasGlobalHighlights",
          "defaultPeriodCount",
          "defaultPeriodLength",
          "defaultOvertimeLength",
          "period1Home",
          "period1Away",
          "period2Home",
          "period2Away",
          "injuryTime1",
          "injuryTime2",
          "tournamentId",
          "refereeId",
          "uniqueTournamentId",
          "seasonId",
          "lineupConfirmed",
          "nextAutoPlayerUpdate"
        ],
        "type": "object"
      },
      "GlmBet": {
        "additionalProperties": false,
        "properties": {
          "bestOverBookmaker": {
            "type": [
              "string",
              "null"
            ]
          },
          "bestOverEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestUnderBookmaker": {
            "type": [
              "string",
              "null"
            ]
          },
          "bestUnderEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/GlmBookmakerQuote"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "fairOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "fairUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "probOver": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "probUnder": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "line",
          "fairOverOdds",
          "fairUnderOdds",
          "probOver",
          "probUnder",
          "bookmakers",
          "bestOverOdds",
          "bestOverBookmaker",
          "bestOverEdge",
          "bestUnderOdds",
          "bestUnderBookmaker",
          "bestUnderEdge"
        ],
        "type": "object"
      },
      "GlmBookmakerQuote": {
        "additionalProperties": false,
        "properties": {
          "bookmakerName": {
            "type": "string"
          },
          "overEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "overOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "underEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "underOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "bookmakerName",
          "overOdds",
          "underOdds",
          "overEdge",
          "underEdge"
        ],
        "type": "object"
      },
      "GlmMatch": {
        "additionalProperties": false,
        "properties": {
          "awayBets": {
            "items": {
              "$ref": "#/components/schemas/GlmBet"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "awayLambda": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "homeBets": {
            "items": {
              "$ref": "#/components/schemas/GlmBet"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "homeLambda": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "leagueName": {
            "type": [
              "string",
              "null"
            ]
          },
          "matchDate": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "totalBets": {
            "items": {
              "$ref": "#/components/schemas/GlmBet"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "totalLambda": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "eventId",
          "matchDate",
          "homeTeamId",
          "homeTeamName",
          "awayTeamId",
          "awayTeamName",
          "uniqueTournamentId",
          "leagueName",
          "slug",
          "internalId",
          "homeLambda",
          "awayLambda",
          "totalLambda",
          "homeBets",
          "awayBets",
          "totalBets"
        ],
        "type": "object"
      },
      "HeatmapData": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "points": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "seasonId": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "playerId",
          "seasonId",
          "points"
        ],
        "type": "object"
      },
      "HomeTeamStruct": {
        "additionalProperties": false,
        "properties": {
          "id": {},
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "IncidentBody": {
        "additionalProperties": false,
        "properties": {
          "awayPenaltiesPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayPenaltiesPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayRedCardsPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayRedCardsPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayYellowCardsPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayYellowCardsPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homePenaltiesPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homePenaltiesPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeRedCardsPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeRedCardsPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeYellowCardsPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeYellowCardsPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "eventId",
          "homeYellowCardsPeriod1",
          "awayYellowCardsPeriod1",
          "homeRedCardsPeriod1",
          "awayRedCardsPeriod1",
          "homePenaltiesPeriod1",
          "awayPenaltiesPeriod1",
          "homeYellowCardsPeriod2",
          "awayYellowCardsPeriod2",
          "homeRedCardsPeriod2",
          "awayRedCardsPeriod2",
          "homePenaltiesPeriod2",
          "awayPenaltiesPeriod2"
        ],
        "type": "object"
      },
      "Incidents": {
        "additionalProperties": false,
        "properties": {
          "awayPenaltiesPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayPenaltiesPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayRedCardsPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayRedCardsPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayYellowCardsPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayYellowCardsPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "createdAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "homePenaltiesPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homePenaltiesPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeRedCardsPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeRedCardsPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeYellowCardsPeriod1": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeYellowCardsPeriod2": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "updatedAt": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "eventId",
          "homeYellowCardsPeriod1",
          "homeYellowCardsPeriod2",
          "awayYellowCardsPeriod1",
          "awayYellowCardsPeriod2",
          "homeRedCardsPeriod1",
          "homeRedCardsPeriod2",
          "awayRedCardsPeriod1",
          "awayRedCardsPeriod2",
          "homePenaltiesPeriod1",
          "homePenaltiesPeriod2",
          "awayPenaltiesPeriod1",
          "awayPenaltiesPeriod2",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "Item": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "uniqueTournamentId",
          "name"
        ],
        "type": "object"
      },
      "Item6": {
        "additionalProperties": false,
        "properties": {
          "matchId": {
            "format": "int64",
            "type": "integer"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "playerId",
          "matchId"
        ],
        "type": "object"
      },
      "LeagueGroup": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "memberCount": {
            "format": "int64",
            "type": "integer"
          },
          "members": {
            "items": {
              "$ref": "#/components/schemas/LeagueGroupMember"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "updatedAt": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "members",
          "memberCount",
          "id",
          "name",
          "description",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "LeagueGroupMember": {
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": "integer"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "tournamentId",
          "name",
          "slug",
          "uniqueTournamentId"
        ],
        "type": "object"
      },
      "LeagueOption": {
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "uniqueTournamentId",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "LineupEvent": {
        "additionalProperties": false,
        "properties": {
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "lineupType": {
            "type": "string"
          },
          "matchTime": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tournamentName": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "homeTeamName",
          "awayTeamName",
          "homeTeamId",
          "awayTeamId",
          "matchTime",
          "tournamentName",
          "uniqueTournamentId",
          "lineupType"
        ],
        "type": "object"
      },
      "LineupPlayer": {
        "additionalProperties": false,
        "properties": {
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "categoryFlag": {
            "type": [
              "string",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "jerseyNumber": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matchTime": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "playerFullName": {
            "type": [
              "string",
              "null"
            ]
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerInternalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "playerName": {
            "type": [
              "string",
              "null"
            ]
          },
          "playerSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "position": {
            "type": "string"
          },
          "positionChange": {
            "$ref": "#/components/schemas/PositionChangeInfo"
          },
          "predictedAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "predictionType": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "tournamentName": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "viewPriority": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "playerId",
          "playerName",
          "playerFullName",
          "playerSlug",
          "playerInternalId",
          "jerseyNumber",
          "position",
          "predictionType",
          "predictedAt",
          "teamId",
          "teamName",
          "eventId",
          "internalId",
          "eventSlug",
          "matchTime",
          "homeTeamId",
          "homeTeamName",
          "awayTeamId",
          "awayTeamName",
          "tournamentName",
          "uniqueTournamentId",
          "categoryFlag",
          "viewPriority",
          "positionChange"
        ],
        "type": "object"
      },
      "MatchupInsight": {
        "additionalProperties": false,
        "properties": {
          "leagueAvg": {
            "format": "double",
            "type": "number"
          },
          "metricKey": {
            "type": "string"
          },
          "opponentAvg": {
            "format": "double",
            "type": "number"
          },
          "percentDiff": {
            "format": "double",
            "type": "number"
          },
          "position": {
            "type": "string"
          },
          "stat": {
            "type": "string"
          }
        },
        "required": [
          "position",
          "stat",
          "metricKey",
          "percentDiff",
          "opponentAvg",
          "leagueAvg"
        ],
        "type": "object"
      },
      "MessageEnvelope": {
        "additionalProperties": false,
        "properties": {
          "message": {
            "type": "string"
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "Metadata": {
        "additionalProperties": false,
        "properties": {
          "currentPage": {
            "format": "int64",
            "type": "integer"
          },
          "hasNextPage": {
            "type": "boolean"
          },
          "hasPreviousPage": {
            "type": "boolean"
          },
          "pageSize": {
            "format": "int64",
            "type": "integer"
          },
          "totalCount": {
            "format": "int64",
            "type": "integer"
          },
          "totalPages": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "currentPage",
          "pageSize",
          "totalCount",
          "totalPages",
          "hasNextPage",
          "hasPreviousPage"
        ],
        "type": "object"
      },
      "ModelBody": {
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "group": {
            "type": [
              "string",
              "null"
            ]
          },
          "lastXMatches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "marketType": {
            "type": [
              "string",
              "null"
            ]
          },
          "minimumMatches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "onlyIfPlayerStarted": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "opponentMultiplier": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "lastXMatches",
          "minimumMatches",
          "onlyIfPlayerStarted",
          "marketType",
          "opponentMultiplier",
          "group",
          "description",
          "status"
        ],
        "type": "object"
      },
      "Models": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "type": "string"
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "group": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "lastXMatches": {
            "format": "int64",
            "type": "integer"
          },
          "marketType": {
            "type": "string"
          },
          "minimumMatches": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "onlyIfPlayerStarted": {
            "type": "boolean"
          },
          "opponentMultiplier": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "lastXMatches",
          "minimumMatches",
          "onlyIfPlayerStarted",
          "marketType",
          "opponentMultiplier",
          "status",
          "group",
          "description",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "OpponentRanking": {
        "additionalProperties": false,
        "properties": {
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "isPreviousSeason": {
            "type": "boolean"
          },
          "leagueAverage": {
            "format": "double",
            "type": "number"
          },
          "opponentAverage": {
            "format": "double",
            "type": "number"
          },
          "opponentTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentTeamName": {
            "type": "string"
          },
          "opponentTeamSlug": {
            "type": "string"
          },
          "rank": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "seasonId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "statType": {
            "type": "string"
          },
          "total": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "eventId",
          "opponentTeamId",
          "opponentTeamName",
          "opponentTeamSlug",
          "rank",
          "total",
          "statType",
          "leagueAverage",
          "opponentAverage",
          "seasonId",
          "isPreviousSeason"
        ],
        "type": "object"
      },
      "OptionsStruct": {
        "additionalProperties": false,
        "properties": {
          "batchSize": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "dryRun": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "forceRefresh": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "forceRefresh",
          "dryRun",
          "batchSize"
        ],
        "type": "object"
      },
      "PlayerDetailData": {
        "additionalProperties": false,
        "properties": {
          "nationalTeam": {
            "$ref": "#/components/schemas/Teams"
          },
          "players": {
            "$ref": "#/components/schemas/Players"
          },
          "teams": {
            "$ref": "#/components/schemas/Teams"
          }
        },
        "required": [
          "players",
          "teams",
          "nationalTeam"
        ],
        "type": "object"
      },
      "PlayerDetailEvent": {
        "additionalProperties": false,
        "properties": {
          "awayScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeam": {
            "$ref": "#/components/schemas/PlayerDetailEventTeam"
          },
          "homeScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeam": {
            "$ref": "#/components/schemas/PlayerDetailEventTeam"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "playerTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          },
          "timeStartTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tournament": {
            "$ref": "#/components/schemas/PlayerDetailEventTournament"
          },
          "venue": {
            "$ref": "#/components/schemas/PlayerDetailEventVenue"
          }
        },
        "required": [
          "id",
          "internalId",
          "slug",
          "status",
          "timeStartTimestamp",
          "homeScoreCurrent",
          "awayScoreCurrent",
          "homeTeam",
          "awayTeam",
          "venue",
          "tournament",
          "playerTeamId"
        ],
        "type": "object"
      },
      "PlayerDetailEventTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "shortname": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "shortname"
        ],
        "type": "object"
      },
      "PlayerDetailEventTournament": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "PlayerDetailEventVenue": {
        "additionalProperties": false,
        "properties": {
          "cityName": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "cityName"
        ],
        "type": "object"
      },
      "PlayerDetailResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/PlayerDetailData"
          },
          "lastEvent": {
            "$ref": "#/components/schemas/PlayerDetailEvent"
          },
          "loan": {
            "$ref": "#/components/schemas/PlayerLoanRow"
          },
          "nextEvent": {
            "$ref": "#/components/schemas/PlayerDetailEvent"
          },
          "primaryUniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "seoStats": {
            "$ref": "#/components/schemas/PlayerSEOStats"
          }
        },
        "required": [
          "data",
          "loan",
          "nextEvent",
          "lastEvent",
          "primaryUniqueTournamentId"
        ],
        "type": "object"
      },
      "PlayerLoanRow": {
        "additionalProperties": false,
        "properties": {
          "isOnLoan": {
            "type": "boolean"
          },
          "loanEndDate": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "loanStartDate": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "loanedFromTeam": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "loanedFromTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "loanedToTeam": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "loanedToTeamName": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "isOnLoan",
          "loanedFromTeam",
          "loanedToTeam",
          "loanedFromTeamName",
          "loanedToTeamName",
          "loanStartDate",
          "loanEndDate"
        ],
        "type": "object"
      },
      "PlayerMinutes": {
        "additionalProperties": false,
        "properties": {
          "avg": {
            "format": "double",
            "type": "number"
          },
          "n": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "avg",
          "n"
        ],
        "type": "object"
      },
      "PlayerPerformanceEvent": {
        "additionalProperties": false,
        "properties": {
          "awayScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "timeStartTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "timeStartTimestamp",
          "uniqueTournamentId",
          "homeTeamId",
          "awayTeamId",
          "homeScoreCurrent",
          "awayScoreCurrent"
        ],
        "type": "object"
      },
      "PlayerPerformanceRow": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/PlayerPerformanceTeam"
          },
          "events": {
            "$ref": "#/components/schemas/PlayerPerformanceEvent"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/PlayerPerformanceTeam"
          },
          "player_statistics_event": {
            "$ref": "#/components/schemas/PlayerPerformanceStats"
          },
          "substitutedPlayerStats": {
            "$ref": "#/components/schemas/PlayerPerformanceStats"
          }
        },
        "required": [
          "player_statistics_event",
          "events",
          "homeTeam",
          "awayTeam"
        ],
        "type": "object"
      },
      "PlayerPerformanceStats": {
        "additionalProperties": false,
        "properties": {
          "accurateCross": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accuratePass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "aerialWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChanceCreated": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blockedScoringAttempt": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "challengeLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "dispossessed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "expectedAssists": {
            "type": [
              "string",
              "null"
            ]
          },
          "expectedGoals": {
            "type": [
              "string",
              "null"
            ]
          },
          "foulInvolvements": {
            "format": "int64",
            "type": "integer"
          },
          "fouls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalAssist": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "interceptionWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "keyPass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "npExpectedGoals": {
            "type": [
              "string",
              "null"
            ]
          },
          "npExpectedGoalsPer90": {
            "type": [
              "string",
              "null"
            ]
          },
          "onTargetScoringAttempt": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "position": {
            "type": "string"
          },
          "possessionLostCtrl": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "rating": {
            "type": [
              "string",
              "null"
            ]
          },
          "redCard": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "saves": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "scoredOrAssisted": {
            "format": "int64",
            "type": "integer"
          },
          "shotOffTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shots": {
            "format": "int64",
            "type": "integer"
          },
          "substitutedIn": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "substitutedOut": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "teamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalClearance": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalCross": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalOffside": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalPass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalTackle": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "touches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "wasFouled": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "wonContest": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "xGxA": {
            "format": "double",
            "type": "number"
          },
          "yellowCard": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "shots",
          "scoredOrAssisted",
          "xGxA",
          "foulInvolvements",
          "id",
          "playerId",
          "eventId",
          "teamId",
          "totalPass",
          "accuratePass",
          "totalLongBalls",
          "accurateLongBalls",
          "goalAssist",
          "totalCross",
          "accurateCross",
          "aerialWon",
          "duelLost",
          "duelWon",
          "challengeLost",
          "bigChanceCreated",
          "shotOffTarget",
          "onTargetScoringAttempt",
          "blockedScoringAttempt",
          "goals",
          "totalClearance",
          "interceptionWon",
          "totalTackle",
          "wasFouled",
          "minutesPlayed",
          "touches",
          "rating",
          "possessionLostCtrl",
          "expectedGoals",
          "npExpectedGoals",
          "npExpectedGoalsPer90",
          "keyPass",
          "expectedAssists",
          "substitutedOut",
          "substitutedIn",
          "position",
          "dispossessed",
          "fouls",
          "saves",
          "totalOffside",
          "wonContest",
          "yellowCard",
          "redCard"
        ],
        "type": "object"
      },
      "PlayerPerformanceTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "national": {
            "type": "boolean"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "national"
        ],
        "type": "object"
      },
      "PlayerPrice": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "type": "string"
          },
          "ev": {
            "format": "double",
            "type": "number"
          },
          "odds": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "bookmaker",
          "odds"
        ],
        "type": "object"
      },
      "PlayerPropScreenerActivity": {
        "additionalProperties": false,
        "properties": {
          "inPredictedLineup": {
            "type": "boolean"
          },
          "lastGameWithTeam": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "startedLastGame": {
            "type": "boolean"
          }
        },
        "required": [
          "startedLastGame",
          "lastGameWithTeam",
          "inPredictedLineup"
        ],
        "type": "object"
      },
      "PlayerPropScreenerBookmaker": {
        "additionalProperties": false,
        "properties": {
          "bookmakerId": {
            "format": "int64",
            "type": "integer"
          },
          "bookmakerName": {
            "type": "string"
          },
          "oddsValue": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "bookmakerId",
          "bookmakerName",
          "oddsValue"
        ],
        "type": "object"
      },
      "PlayerPropScreenerHitRates": {
        "additionalProperties": false,
        "properties": {
          "L10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L10WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L15WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L5": {
            "format": "int64",
            "type": "integer"
          },
          "L5WithSub": {
            "format": "int64",
            "type": "integer"
          },
          "allL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "allL10WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "allL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "allL15WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "allL5": {
            "format": "int64",
            "type": "integer"
          },
          "allL5WithSub": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "L5",
          "L10",
          "L15",
          "L5WithSub",
          "L10WithSub",
          "L15WithSub",
          "allL5",
          "allL10",
          "allL15",
          "allL5WithSub",
          "allL10WithSub",
          "allL15WithSub"
        ],
        "type": "object"
      },
      "PlayerPropScreenerPagination": {
        "additionalProperties": false,
        "properties": {
          "currentPage": {
            "format": "int64",
            "type": "integer"
          },
          "hasNextPage": {
            "type": "boolean"
          },
          "hasPreviousPage": {
            "type": "boolean"
          },
          "totalCount": {
            "format": "int64",
            "type": "integer"
          },
          "totalPages": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "currentPage",
          "totalPages",
          "totalCount",
          "hasNextPage",
          "hasPreviousPage"
        ],
        "type": "object"
      },
      "PlayerPropScreenerRanking": {
        "additionalProperties": false,
        "properties": {
          "rank": {
            "format": "int64",
            "type": "integer"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "rank",
          "total"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "PlayerPropScreenerRecentGame": {
        "additionalProperties": false,
        "properties": {
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "double",
            "type": "number"
          },
          "hasSuperSub": {
            "type": "boolean"
          },
          "isHit": {
            "type": "boolean"
          },
          "isHome": {
            "type": "boolean"
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentName": {
            "type": "string"
          },
          "opponentSlug": {
            "type": "string"
          },
          "originalStatValue": {
            "format": "double",
            "type": "number"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "statValue": {
            "format": "double",
            "type": "number"
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "eventId",
          "statValue",
          "minutesPlayed",
          "position",
          "opponentName",
          "opponentSlug",
          "opponentId",
          "isHome",
          "isHit",
          "tournamentId",
          "uniqueTournamentId",
          "eventTimestamp",
          "hasSuperSub"
        ],
        "type": "object"
      },
      "PlayerPropScreenerResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/PlayerPropScreenerResult"
            },
            "type": "array"
          },
          "pagination": {
            "$ref": "#/components/schemas/PlayerPropScreenerPagination"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "PlayerPropScreenerResult": {
        "additionalProperties": false,
        "properties": {
          "activityInfo": {
            "$ref": "#/components/schemas/PlayerPropScreenerActivity"
          },
          "allBookmakerOdds": {
            "items": {
              "$ref": "#/components/schemas/PlayerPropScreenerBookmaker"
            },
            "type": "array"
          },
          "average": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "awayTeamName": {
            "type": "string"
          },
          "awayTeamSlug": {
            "type": "string"
          },
          "bookmakerId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bookmakerName": {
            "type": [
              "string",
              "null"
            ]
          },
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/PlayerPropScreenerBookmaker"
            },
            "type": "array"
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateAllL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL10WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL15WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL5": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateAllL5WithSub": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL10WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL15WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL5": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateL5WithSub": {
            "format": "int64",
            "type": "integer"
          },
          "hitRates": {
            "$ref": "#/components/schemas/PlayerPropScreenerHitRates"
          },
          "homeTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "homeTeamName": {
            "type": "string"
          },
          "homeTeamSlug": {
            "type": "string"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "leagueAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "marketName": {
            "type": "string"
          },
          "oddsType": {
            "enum": [
              "over",
              "under"
            ],
            "type": "string"
          },
          "oddsValue": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "opponentAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "opponentRank": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentRanking": {
            "$ref": "#/components/schemas/PlayerPropScreenerRanking"
          },
          "opponentTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentTeamName": {
            "type": "string"
          },
          "opponentTeamSlug": {
            "type": "string"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerName": {
            "type": "string"
          },
          "recentGames": {
            "items": {
              "$ref": "#/components/schemas/PlayerPropScreenerRecentGame"
            },
            "type": "array"
          },
          "recentlyPlayed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "statType": {
            "enum": [
              "goals",
              "goalAssist",
              "scoredOrAssisted",
              "shots",
              "onTargetScoringAttempt",
              "totalTackle",
              "totalPass",
              "accuratePass",
              "totalCross",
              "accurateCross",
              "fouls",
              "wasFouled",
              "foulInvolvements",
              "yellowCard",
              "saves",
              "dispossessed",
              "totalOffside",
              "interceptionWon",
              "possessionLostCtrl",
              "aerialWon",
              "duelWon",
              "keyPass",
              "bigChanceCreated",
              "expectedGoals",
              "expectedAssists",
              "xGxA"
            ],
            "type": "string"
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamName": {
            "type": "string"
          },
          "teamPrimaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSecondaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSlug": {
            "type": "string"
          },
          "total": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "totalRanks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "playerId",
          "playerName",
          "statType",
          "marketName",
          "line",
          "oddsType",
          "eventId",
          "eventTimestamp",
          "teamId",
          "teamName",
          "teamSlug",
          "teamPrimaryColor",
          "teamSecondaryColor",
          "homeTeamId",
          "homeTeamName",
          "homeTeamSlug",
          "awayTeamId",
          "awayTeamName",
          "awayTeamSlug",
          "opponentTeamId",
          "opponentTeamName",
          "opponentTeamSlug",
          "opponentRank",
          "totalRanks",
          "opponentRanking",
          "leagueAverage",
          "opponentAverage",
          "bookmakers",
          "allBookmakerOdds",
          "bookmakerId",
          "bookmakerName",
          "oddsValue",
          "hitRateL5",
          "hitRateL10",
          "hitRateL15",
          "hitRateL5WithSub",
          "hitRateL10WithSub",
          "hitRateL15WithSub",
          "hitRateAllL5",
          "hitRateAllL10",
          "hitRateAllL15",
          "hitRateAllL5WithSub",
          "hitRateAllL10WithSub",
          "hitRateAllL15WithSub",
          "hitRates",
          "activityInfo",
          "recentlyPlayed",
          "total",
          "average",
          "recentGames"
        ],
        "type": "object"
      },
      "PlayerSEOStats": {
        "additionalProperties": false,
        "properties": {
          "appearances": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "assists": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "cleanSheet": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "interceptions": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "keyPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matchesStarted": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "rating": {
            "type": [
              "string",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "saves": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "seasonName": {
            "type": [
              "string",
              "null"
            ]
          },
          "seasonYear": {
            "type": [
              "string",
              "null"
            ]
          },
          "shotsOnTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tackles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalShots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "seasonName",
          "seasonYear",
          "goals",
          "assists",
          "appearances",
          "matchesStarted",
          "minutesPlayed",
          "totalShots",
          "shotsOnTarget",
          "keyPasses",
          "tackles",
          "interceptions",
          "yellowCards",
          "redCards",
          "rating",
          "cleanSheet",
          "saves"
        ],
        "type": "object"
      },
      "PlayerStatResult": {
        "additionalProperties": false,
        "properties": {
          "avg_value": {
            "format": "double",
            "type": "number"
          },
          "games_count": {
            "format": "int64",
            "type": "integer"
          },
          "last_5_games": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "avg_value",
          "games_count",
          "last_5_games"
        ],
        "type": "object"
      },
      "PlayerStatsRulesBot": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isEnabled": {
            "type": "boolean"
          },
          "statisticKey": {
            "type": "string"
          },
          "statisticsLabel": {
            "type": "string"
          },
          "updatedAt": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "statisticsLabel",
          "statisticKey",
          "isEnabled",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "Players": {
        "additionalProperties": false,
        "properties": {
          "contractuntil": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "dateofbirth": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "deceased": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "gender": {
            "type": [
              "string",
              "null"
            ]
          },
          "height": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "jerseynumber": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "marketvalue": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "nationalTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "preferredfoot": {
            "type": [
              "string",
              "null"
            ]
          },
          "shortname": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamid": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "usercount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "shortname",
          "position",
          "jerseynumber",
          "height",
          "preferredfoot",
          "usercount",
          "deceased",
          "gender",
          "countrySlug",
          "dateofbirth",
          "contractuntil",
          "marketvalue",
          "teamid",
          "nationalTeamId"
        ],
        "type": "object"
      },
      "PositionChangeInfo": {
        "additionalProperties": false,
        "properties": {
          "currentPosition": {
            "type": "string"
          },
          "gamesAnalyzed": {
            "format": "int64",
            "type": "integer"
          },
          "isPositionChange": {
            "type": "boolean"
          },
          "rawHistory": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "usualPosition": {
            "type": "string"
          }
        },
        "required": [
          "isPositionChange",
          "usualPosition",
          "currentPosition",
          "rawHistory",
          "gamesAnalyzed"
        ],
        "type": "object"
      },
      "PositionRule": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "fromPosition": {
            "type": "string"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isEnabled": {
            "type": "boolean"
          },
          "leagueGroupId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "leagueGroupName": {
            "type": [
              "string",
              "null"
            ]
          },
          "ruleType": {
            "type": "string"
          },
          "toPosition": {
            "type": "string"
          },
          "updatedAt": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "leagueGroupName",
          "id",
          "fromPosition",
          "toPosition",
          "ruleType",
          "leagueGroupId",
          "isEnabled",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "RecentMatch": {
        "additionalProperties": false,
        "properties": {
          "away_goals": {
            "format": "int64",
            "type": "integer"
          },
          "away_odds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "away_shots": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "away_shots_on_target": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "away_team": {
            "type": "string"
          },
          "date": {
            "type": "string"
          },
          "draw_odds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "home_goals": {
            "format": "int64",
            "type": "integer"
          },
          "home_odds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "home_shots": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "home_shots_on_target": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "home_team": {
            "type": "string"
          }
        },
        "required": [
          "date",
          "home_team",
          "away_team",
          "home_shots",
          "away_shots",
          "home_shots_on_target",
          "away_shots_on_target",
          "home_goals",
          "away_goals",
          "home_odds",
          "draw_odds",
          "away_odds"
        ],
        "type": "object"
      },
      "RefereeBody": {
        "additionalProperties": false,
        "properties": {
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "firstLeagueDebutTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "games": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "countrySlug",
          "games",
          "firstLeagueDebutTimestamp"
        ],
        "type": "object"
      },
      "RefereeSummary": {
        "additionalProperties": false,
        "properties": {
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "firstLeagueDebutTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "games": {
            "format": "int64",
            "type": "integer"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "nextGameAwayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "nextGameAwayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameHomeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "nextGameHomeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "nextGameSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": "integer"
          },
          "slug": {
            "type": "string"
          },
          "totalPenalties": {
            "format": "int64",
            "type": "integer"
          },
          "yellowCards": {
            "format": "int64",
            "type": "integer"
          },
          "yellowRedCards": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "countrySlug",
          "firstLeagueDebutTimestamp",
          "games",
          "yellowCards",
          "redCards",
          "yellowRedCards",
          "totalPenalties",
          "nextGameId",
          "nextGameSlug",
          "nextGameTimestamp",
          "nextGameHomeTeamId",
          "nextGameHomeTeamName",
          "nextGameAwayTeamId",
          "nextGameAwayTeamName"
        ],
        "type": "object"
      },
      "RefereeSummaryResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/RefereeSummary"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "RoundRow": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug"
        ],
        "type": "object"
      },
      "SavedFilterView": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "filters": {},
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "updatedAt": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "type",
          "filters",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "ScreenerParams": {
        "additionalProperties": false,
        "properties": {
          "bookmakers": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "competitionIds": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "endOfDay": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "games": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "hitRateOption": {
            "type": "string"
          },
          "hitRateRange": {
            "$ref": "#/components/schemas/ScreenerParamsHitRateRangeStruct"
          },
          "includeRecords": {
            "type": "boolean"
          },
          "includeStale": {
            "type": "boolean"
          },
          "lineupFilterType": {
            "type": "string"
          },
          "minLastGameWithTeam": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "oddsRange": {
            "$ref": "#/components/schemas/ScreenerParamsOddsRangeStruct"
          },
          "page": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "pageSize": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "players": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "selectedDates": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "sorting": {
            "$ref": "#/components/schemas/ScreenerParamsSortingStruct"
          },
          "staleDataThresholdHours": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "startOfDay": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "statTypes": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "type": {
            "type": "string"
          },
          "useAllTournaments": {
            "type": "boolean"
          },
          "useMinLastGameWithTeam": {
            "type": "boolean"
          },
          "useSupersub": {
            "type": "boolean"
          }
        },
        "required": [
          "games",
          "page",
          "pageSize",
          "startOfDay",
          "endOfDay",
          "competitionIds",
          "players",
          "statTypes",
          "type",
          "hitRateOption",
          "hitRateRange",
          "oddsRange",
          "sorting",
          "includeStale",
          "staleDataThresholdHours",
          "useSupersub",
          "useAllTournaments",
          "useMinLastGameWithTeam",
          "minLastGameWithTeam",
          "lineupFilterType",
          "selectedDates",
          "bookmakers",
          "includeRecords"
        ],
        "type": "object"
      },
      "ScreenerParamsHitRateRangeStruct": {
        "additionalProperties": false,
        "properties": {
          "from": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "to": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "from",
          "to"
        ],
        "type": "object"
      },
      "ScreenerParamsOddsRangeStruct": {
        "additionalProperties": false,
        "properties": {
          "from": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "to": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "from",
          "to"
        ],
        "type": "object"
      },
      "ScreenerParamsSortingStruct": {
        "additionalProperties": false,
        "properties": {
          "column": {
            "type": "string"
          },
          "direction": {
            "type": "string"
          }
        },
        "required": [
          "column",
          "direction"
        ],
        "type": "object"
      },
      "SearchFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "awayTeamSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "categoryFlag": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeTeamSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          },
          "timeStartTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tournamentName": {
            "type": [
              "string",
              "null"
            ]
          },
          "tournamentSlug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "slug",
          "homeTeamName",
          "awayTeamName",
          "homeTeamSlug",
          "awayTeamSlug",
          "homeTeamId",
          "awayTeamId",
          "timeStartTimestamp",
          "status",
          "tournamentId",
          "tournamentName",
          "tournamentSlug",
          "categoryFlag"
        ],
        "type": "object"
      },
      "SearchPlayer": {
        "additionalProperties": false,
        "properties": {
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "countrySlug"
        ],
        "type": "object"
      },
      "SearchTeam": {
        "additionalProperties": false,
        "properties": {
          "categoryFlag": {
            "type": [
              "string",
              "null"
            ]
          },
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "countrySlug",
          "categoryFlag"
        ],
        "type": "object"
      },
      "SearchTournament": {
        "additionalProperties": false,
        "properties": {
          "categoryFlag": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "uniqueTournamentId",
          "name",
          "slug",
          "categoryFlag"
        ],
        "type": "object"
      },
      "SeasonBody": {
        "additionalProperties": false,
        "properties": {
          "editor": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "year": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "year",
          "editor",
          "tournamentId"
        ],
        "type": "object"
      },
      "Seasons": {
        "additionalProperties": false,
        "properties": {
          "editor": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "year": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "year",
          "editor",
          "tournamentId",
          "uniqueTournamentId"
        ],
        "type": "object"
      },
      "SorareInsideLineups": {
        "additionalProperties": false,
        "properties": {
          "analysisGeneratedAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "analysisModel": {
            "type": [
              "string",
              "null"
            ]
          },
          "awayAnalysis": {
            "type": [
              "string",
              "null"
            ]
          },
          "awayReliability": {
            "type": [
              "string",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "competition": {
            "type": [
              "string",
              "null"
            ]
          },
          "competitionId": {
            "type": [
              "string",
              "null"
            ]
          },
          "createdAt": {
            "type": "string"
          },
          "gameweek": {
            "type": "string"
          },
          "homeAnalysis": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeReliability": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "kickoffAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "lineupsFetchedAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "matchId": {
            "type": "string"
          },
          "payload": {
            "additionalProperties": true,
            "type": "object"
          },
          "region": {
            "type": [
              "string",
              "null"
            ]
          },
          "resolutionMethod": {
            "type": [
              "string",
              "null"
            ]
          },
          "resolutionScore": {
            "type": [
              "string",
              "null"
            ]
          },
          "sorareGameId": {
            "type": [
              "string",
              "null"
            ]
          },
          "sorareMatchKey": {
            "type": [
              "string",
              "null"
            ]
          },
          "updatedAt": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "gameweek",
          "matchId",
          "sorareMatchKey",
          "sorareGameId",
          "homeTeamId",
          "awayTeamId",
          "homeTeamName",
          "awayTeamName",
          "competition",
          "competitionId",
          "region",
          "kickoffAt",
          "homeReliability",
          "awayReliability",
          "homeAnalysis",
          "awayAnalysis",
          "analysisModel",
          "analysisGeneratedAt",
          "payload",
          "lineupsFetchedAt",
          "resolutionMethod",
          "resolutionScore",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "SubSplit": {
        "additionalProperties": false,
        "properties": {
          "subPct": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "subStat": {
            "format": "double",
            "type": "number"
          },
          "totalStat": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "subPct",
          "subStat",
          "totalStat"
        ],
        "type": "object"
      },
      "SubSplitResponse": {
        "additionalProperties": false,
        "properties": {
          "matches": {
            "format": "int64",
            "type": "integer"
          },
          "playerMinutes": {
            "additionalProperties": {
              "$ref": "#/components/schemas/PlayerMinutes"
            },
            "type": "object"
          },
          "splits": {
            "additionalProperties": {
              "$ref": "#/components/schemas/SubSplit"
            },
            "type": "object"
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "teamId",
          "matches",
          "splits",
          "playerMinutes"
        ],
        "type": "object"
      },
      "SystemStats": {
        "additionalProperties": false,
        "properties": {
          "apiRequests": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "apiResponses": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "data": {
            "additionalProperties": true,
            "type": "object"
          },
          "error": {
            "type": [
              "string",
              "null"
            ]
          },
          "eventType": {
            "type": "string"
          },
          "failedApiCalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "messageId": {
            "type": "string"
          },
          "processingEndTime": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "processingStartTime": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "rescheduledInfo": {
            "additionalProperties": true,
            "type": "object"
          },
          "retryCount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "status": {
            "type": "string"
          },
          "successfulApiCalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalApiCalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "id",
          "messageId",
          "eventType",
          "status",
          "data",
          "error",
          "processingStartTime",
          "processingEndTime",
          "retryCount",
          "apiRequests",
          "apiResponses",
          "totalApiCalls",
          "successfulApiCalls",
          "failedApiCalls",
          "createdAt",
          "updatedAt",
          "rescheduledInfo"
        ],
        "type": "object"
      },
      "TeamByEventBookmaker": {
        "additionalProperties": false,
        "properties": {
          "bookmakerId": {
            "format": "int64",
            "type": "integer"
          },
          "bookmakerName": {
            "type": "string"
          },
          "marketName": {
            "type": "string"
          },
          "odds": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "bookmakerId",
          "bookmakerName",
          "marketName",
          "odds"
        ],
        "type": "object"
      },
      "TeamByEventRow": {
        "additionalProperties": false,
        "properties": {
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/TeamByEventBookmaker"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "hitRateL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "hitRateL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "leagueId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "leagueName": {
            "type": [
              "string",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "oddsType": {
            "type": "string"
          },
          "opponentHitRateL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "opponentHitRateL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "opponentHitRateL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "opponentTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "opponentTeamSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "statDisplay": {
            "type": "string"
          },
          "statType": {
            "type": "string"
          },
          "teamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSlug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "teamId",
          "teamName",
          "teamSlug",
          "opponentTeamId",
          "opponentTeamName",
          "opponentTeamSlug",
          "eventId",
          "eventTimestamp",
          "statType",
          "statDisplay",
          "line",
          "oddsType",
          "leagueId",
          "leagueName",
          "bookmakers",
          "hitRateL5",
          "hitRateL10",
          "hitRateL15",
          "opponentHitRateL5",
          "opponentHitRateL10",
          "opponentHitRateL15"
        ],
        "type": "object"
      },
      "TeamDetailData": {
        "additionalProperties": false,
        "properties": {
          "team": {
            "$ref": "#/components/schemas/Teams"
          },
          "tournaments": {
            "$ref": "#/components/schemas/Tournaments"
          }
        },
        "required": [
          "team",
          "tournaments"
        ],
        "type": "object"
      },
      "TeamDetailResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/TeamDetailData"
          },
          "seoData": {
            "$ref": "#/components/schemas/TeamSEOData"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "TeamExpectedCards": {
        "additionalProperties": false,
        "properties": {
          "allLines": {
            "items": {
              "$ref": "#/components/schemas/CardLine"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "bestLine": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "lambda": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "overOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamName": {
            "type": "string"
          },
          "underOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "teamId",
          "teamName",
          "lambda",
          "bestLine",
          "overOdds",
          "underOdds",
          "allLines"
        ],
        "type": "object"
      },
      "TeamPerformanceEvent": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "result": {
            "type": [
              "string",
              "null"
            ]
          },
          "score": {
            "$ref": "#/components/schemas/TeamPerformanceScore"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "timeStartTimestamp": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "timeStartTimestamp",
          "score",
          "result"
        ],
        "type": "object"
      },
      "TeamPerformanceLeague": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "TeamPerformanceResult": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/TeamPerformanceTeam"
          },
          "event": {
            "$ref": "#/components/schemas/TeamPerformanceEvent"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/TeamPerformanceTeam"
          },
          "league": {
            "$ref": "#/components/schemas/TeamPerformanceLeague"
          },
          "opponentStatistics": {
            "additionalProperties": {
              "format": "double",
              "type": "number"
            },
            "type": "object"
          },
          "statistics": {
            "additionalProperties": {
              "format": "double",
              "type": "number"
            },
            "type": "object"
          }
        },
        "required": [
          "event",
          "homeTeam",
          "awayTeam",
          "league",
          "statistics",
          "opponentStatistics"
        ],
        "type": "object"
      },
      "TeamPerformanceScore": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "home": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "home",
          "away"
        ],
        "type": "object"
      },
      "TeamPerformanceTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "shortname": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "shortname",
          "slug"
        ],
        "type": "object"
      },
      "TeamRosterEntry": {
        "additionalProperties": false,
        "properties": {
          "players": {
            "$ref": "#/components/schemas/TeamRosterPlayer"
          }
        },
        "required": [
          "players"
        ],
        "type": "object"
      },
      "TeamRosterPlayer": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "position"
        ],
        "type": "object"
      },
      "TeamSEOData": {
        "additionalProperties": false,
        "properties": {
          "averageBallPossession": {
            "type": [
              "string",
              "null"
            ]
          },
          "cleanSheets": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "draws": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsConceded": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsScored": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "losses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "points": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "position": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "scoresAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "scoresFor": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "seasonId": {
            "format": "int64",
            "type": "integer"
          },
          "seasonName": {
            "type": [
              "string",
              "null"
            ]
          },
          "seasonYear": {
            "type": [
              "string",
              "null"
            ]
          },
          "shotsOnTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "topScorer": {
            "$ref": "#/components/schemas/TeamTopScorer"
          },
          "wins": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "seasonId",
          "seasonName",
          "seasonYear",
          "position",
          "matches",
          "wins",
          "draws",
          "losses",
          "points",
          "scoresFor",
          "scoresAgainst",
          "goalsScored",
          "goalsConceded",
          "cleanSheets",
          "shotsOnTarget",
          "averageBallPossession",
          "topScorer"
        ],
        "type": "object"
      },
      "TeamScreenerFilters": {
        "additionalProperties": false,
        "properties": {
          "bookmakers": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventIds": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "leagueIds": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "limit": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxHitRateAllL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxHitRateAllL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxHitRateAllL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxHitRateL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxHitRateL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxHitRateL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxOpponentHitRateAllL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxOpponentHitRateAllL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxOpponentHitRateAllL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxOpponentHitRateL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxOpponentHitRateL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "maxOpponentHitRateL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minHitRateAllL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minHitRateAllL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minHitRateAllL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minHitRateL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minHitRateL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minHitRateL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minOpponentHitRateAllL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minOpponentHitRateAllL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minOpponentHitRateAllL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minOpponentHitRateL10": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minOpponentHitRateL15": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minOpponentHitRateL5": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "oddsType": {
            "type": "string"
          },
          "offset": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "selectedDates": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "sortColumn": {
            "type": "string"
          },
          "sortDirection": {
            "type": "string"
          },
          "statTypes": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "teamIds": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "eventIds",
          "leagueIds",
          "statTypes",
          "teamIds",
          "bookmakers",
          "oddsType",
          "minOdds",
          "maxOdds",
          "minHitRateL5",
          "maxHitRateL5",
          "minHitRateL10",
          "maxHitRateL10",
          "minHitRateL15",
          "maxHitRateL15",
          "minOpponentHitRateL5",
          "maxOpponentHitRateL5",
          "minOpponentHitRateL10",
          "maxOpponentHitRateL10",
          "minOpponentHitRateL15",
          "maxOpponentHitRateL15",
          "minHitRateAllL5",
          "maxHitRateAllL5",
          "minHitRateAllL10",
          "maxHitRateAllL10",
          "minHitRateAllL15",
          "maxHitRateAllL15",
          "minOpponentHitRateAllL5",
          "maxOpponentHitRateAllL5",
          "minOpponentHitRateAllL10",
          "maxOpponentHitRateAllL10",
          "minOpponentHitRateAllL15",
          "maxOpponentHitRateAllL15",
          "selectedDates",
          "sortColumn",
          "sortDirection",
          "limit",
          "offset"
        ],
        "type": "object"
      },
      "TeamScreenerRow": {
        "additionalProperties": false,
        "properties": {
          "bookmakers": {
            "additionalProperties": true,
            "type": "object"
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateAllL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL5": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL5": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "leagueId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "leagueName": {
            "type": [
              "string",
              "null"
            ]
          },
          "line": {
            "type": [
              "string",
              "null"
            ]
          },
          "oddsType": {
            "type": "string"
          },
          "opponentHitRateAllL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentHitRateAllL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentHitRateAllL5": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentHitRateL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentHitRateL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentHitRateL5": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentTeamName": {
            "type": "string"
          },
          "opponentTeamSlug": {
            "type": "string"
          },
          "statDisplay": {
            "type": "string"
          },
          "statType": {
            "type": "string"
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamName": {
            "type": "string"
          },
          "teamSlug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "teamId",
          "teamName",
          "teamSlug",
          "opponentTeamId",
          "opponentTeamName",
          "opponentTeamSlug",
          "eventId",
          "eventTimestamp",
          "statType",
          "statDisplay",
          "line",
          "oddsType",
          "leagueId",
          "leagueName",
          "bookmakers",
          "hitRateL5",
          "hitRateL10",
          "hitRateL15",
          "opponentHitRateL5",
          "opponentHitRateL10",
          "opponentHitRateL15",
          "hitRateAllL5",
          "hitRateAllL10",
          "hitRateAllL15",
          "opponentHitRateAllL5",
          "opponentHitRateAllL10",
          "opponentHitRateAllL15"
        ],
        "type": "object"
      },
      "TeamStatistics": {
        "additionalProperties": false,
        "properties": {
          "accurateCrosses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateCrossesPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "accurateFinalThirdPassesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateLongBallsPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "accurateOppositionHalfPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateOppositionHalfPassesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateOppositionHalfPassesPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "accurateOwnHalfPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateOwnHalfPassesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateOwnHalfPassesPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "accuratePasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accuratePassesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accuratePassesPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "aerialDuelsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "aerialDuelsWonPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "assists": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "averageBallPossession": {
            "type": [
              "string",
              "null"
            ]
          },
          "avgRating": {
            "type": [
              "string",
              "null"
            ]
          },
          "awardedMatches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "ballRecovery": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChances": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChancesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChancesCreated": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChancesCreatedAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChancesMissed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChancesMissedAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blockedScoringAttempt": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blockedScoringAttemptAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "cleanSheets": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "clearances": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "clearancesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "clearancesOffLine": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "corners": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "cornersAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "crossesSuccessfulAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "crossesTotalAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "dribbleAttempts": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "dribbleAttemptsTotalAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "dribbleAttemptsWonAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelsWonPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "errorsLeadingToGoal": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "errorsLeadingToGoalAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "errorsLeadingToShot": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "errorsLeadingToShotAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fastBreakGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fastBreakShots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fastBreaks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fouls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "freeKickGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "freeKickShots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "freeKicks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalKicks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsConceded": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsFromInsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsFromOutsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsScored": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "groundDuelsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "groundDuelsWonPercentage": {
            "type": [
              "string",
              "null"
            ]
          },
          "headedGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitWoodwork": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitWoodworkAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "interceptions": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "interceptionsAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "keyPassesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "lastManTackles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "leftFootGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "longBallsSuccessfulAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "longBallsTotalAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "offsides": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "offsidesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "oppositionHalfPassesTotalAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "ownGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "ownHalfPassesTotalAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesCommitted": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesTaken": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltyGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltyGoalsConceded": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "possessionLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "redCardsAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "rightFootGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "saves": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "seasonId": {
            "format": "int64",
            "type": "integer"
          },
          "shots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsBlockedAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsFromInsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsFromInsideTheBoxAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsFromOutsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsFromOutsideTheBoxAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOffTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOffTargetAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOnTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOnTargetAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "successfulDribbles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tackles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tacklesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "throwIns": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalAerialDuels": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalCrosses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalDuels": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalFinalThirdPassesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalGroundDuels": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalOppositionHalfPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalOwnHalfPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalPassesAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowCardsAgainst": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowRedCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "teamId",
          "seasonId",
          "matches",
          "awardedMatches",
          "goalsScored",
          "goalsConceded",
          "ownGoals",
          "assists",
          "shots",
          "penaltyGoals",
          "penaltiesTaken",
          "freeKickGoals",
          "freeKickShots",
          "goalsFromInsideTheBox",
          "goalsFromOutsideTheBox",
          "shotsFromInsideTheBox",
          "shotsFromOutsideTheBox",
          "headedGoals",
          "leftFootGoals",
          "rightFootGoals",
          "bigChances",
          "bigChancesCreated",
          "bigChancesMissed",
          "shotsOnTarget",
          "shotsOffTarget",
          "blockedScoringAttempt",
          "successfulDribbles",
          "dribbleAttempts",
          "corners",
          "hitWoodwork",
          "fastBreaks",
          "fastBreakGoals",
          "fastBreakShots",
          "averageBallPossession",
          "totalPasses",
          "accuratePasses",
          "accuratePassesPercentage",
          "totalOwnHalfPasses",
          "accurateOwnHalfPasses",
          "accurateOwnHalfPassesPercentage",
          "totalOppositionHalfPasses",
          "accurateOppositionHalfPasses",
          "accurateOppositionHalfPassesPercentage",
          "totalLongBalls",
          "accurateLongBalls",
          "accurateLongBallsPercentage",
          "totalCrosses",
          "accurateCrosses",
          "accurateCrossesPercentage",
          "cleanSheets",
          "tackles",
          "interceptions",
          "saves",
          "errorsLeadingToGoal",
          "errorsLeadingToShot",
          "penaltiesCommitted",
          "penaltyGoalsConceded",
          "clearances",
          "clearancesOffLine",
          "lastManTackles",
          "totalDuels",
          "duelsWon",
          "duelsWonPercentage",
          "totalGroundDuels",
          "groundDuelsWon",
          "groundDuelsWonPercentage",
          "totalAerialDuels",
          "aerialDuelsWon",
          "aerialDuelsWonPercentage",
          "possessionLost",
          "offsides",
          "fouls",
          "yellowCards",
          "yellowRedCards",
          "redCards",
          "avgRating",
          "accurateFinalThirdPassesAgainst",
          "accurateOppositionHalfPassesAgainst",
          "accurateOwnHalfPassesAgainst",
          "accuratePassesAgainst",
          "bigChancesAgainst",
          "bigChancesCreatedAgainst",
          "bigChancesMissedAgainst",
          "clearancesAgainst",
          "cornersAgainst",
          "crossesSuccessfulAgainst",
          "crossesTotalAgainst",
          "dribbleAttemptsTotalAgainst",
          "dribbleAttemptsWonAgainst",
          "errorsLeadingToGoalAgainst",
          "errorsLeadingToShotAgainst",
          "hitWoodworkAgainst",
          "interceptionsAgainst",
          "keyPassesAgainst",
          "longBallsSuccessfulAgainst",
          "longBallsTotalAgainst",
          "offsidesAgainst",
          "redCardsAgainst",
          "shotsAgainst",
          "shotsBlockedAgainst",
          "shotsFromInsideTheBoxAgainst",
          "shotsFromOutsideTheBoxAgainst",
          "shotsOffTargetAgainst",
          "shotsOnTargetAgainst",
          "blockedScoringAttemptAgainst",
          "tacklesAgainst",
          "totalFinalThirdPassesAgainst",
          "oppositionHalfPassesTotalAgainst",
          "ownHalfPassesTotalAgainst",
          "totalPassesAgainst",
          "yellowCardsAgainst",
          "throwIns",
          "goalKicks",
          "ballRecovery",
          "freeKicks"
        ],
        "type": "object"
      },
      "TeamTopScorer": {
        "additionalProperties": false,
        "properties": {
          "goals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "goals",
          "slug",
          "internalId"
        ],
        "type": "object"
      },
      "TeamTrendResult": {
        "additionalProperties": false,
        "properties": {
          "awayTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "awayTeamName": {
            "type": "string"
          },
          "awayTeamSlug": {
            "type": "string"
          },
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/TeamTrendsBookmaker"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "homeTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "homeTeamName": {
            "type": "string"
          },
          "homeTeamSlug": {
            "type": "string"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "leagueId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "leagueName": {
            "type": [
              "string",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "oddsType": {
            "type": "string"
          },
          "opponentHitRate": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentTeamName": {
            "type": "string"
          },
          "opponentTeamSlug": {
            "type": "string"
          },
          "recentGames": {
            "items": {
              "$ref": "#/components/schemas/TeamTrendsRecentGame"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "statDisplay": {
            "type": "string"
          },
          "statType": {
            "type": "string"
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamName": {
            "type": "string"
          },
          "teamPrimaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSecondaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSlug": {
            "type": "string"
          },
          "trendAvg": {
            "format": "double",
            "type": "number"
          },
          "trendHits": {
            "format": "int64",
            "type": "integer"
          },
          "trendTotal": {
            "format": "double",
            "type": "number"
          },
          "trendWindow": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "teamId",
          "teamName",
          "teamSlug",
          "teamPrimaryColor",
          "teamSecondaryColor",
          "statType",
          "statDisplay",
          "line",
          "oddsType",
          "eventId",
          "eventTimestamp",
          "homeTeamId",
          "homeTeamName",
          "homeTeamSlug",
          "awayTeamId",
          "awayTeamName",
          "awayTeamSlug",
          "opponentTeamId",
          "opponentTeamName",
          "opponentTeamSlug",
          "opponentHitRate",
          "leagueId",
          "leagueName",
          "bookmakers",
          "trendHits",
          "trendWindow",
          "trendTotal",
          "trendAvg",
          "recentGames"
        ],
        "type": "object"
      },
      "TeamTrendsBookmaker": {
        "additionalProperties": false,
        "properties": {
          "bookmakerId": {},
          "bookmakerName": {},
          "oddsValue": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "bookmakerId",
          "bookmakerName",
          "oddsValue"
        ],
        "type": "object"
      },
      "TeamTrendsParams": {
        "additionalProperties": false,
        "properties": {
          "games": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "oddsRange": {
            "$ref": "#/components/schemas/TeamTrendsParamsOddsRangeStruct"
          },
          "page": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "pageSize": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "sorting": {
            "$ref": "#/components/schemas/TeamTrendsParamsSortingStruct"
          },
          "statTypes": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "games",
          "page",
          "pageSize",
          "statTypes",
          "oddsRange",
          "sorting"
        ],
        "type": "object"
      },
      "TeamTrendsParamsOddsRangeStruct": {
        "additionalProperties": false,
        "properties": {
          "from": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "to": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "from",
          "to"
        ],
        "type": "object"
      },
      "TeamTrendsParamsSortingStruct": {
        "additionalProperties": false,
        "properties": {
          "column": {
            "type": "string"
          },
          "direction": {
            "type": "string"
          }
        },
        "required": [
          "column",
          "direction"
        ],
        "type": "object"
      },
      "TeamTrendsRecentGame": {
        "additionalProperties": false,
        "properties": {
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "isHit": {
            "type": "boolean"
          },
          "isHome": {
            "type": "boolean"
          },
          "opponentId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentName": {
            "type": "string"
          },
          "opponentSlug": {
            "type": "string"
          },
          "statValue": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "eventId",
          "statValue",
          "opponentName",
          "opponentSlug",
          "opponentId",
          "isHome",
          "isHit",
          "eventTimestamp"
        ],
        "type": "object"
      },
      "Teams": {
        "additionalProperties": false,
        "properties": {
          "categoryId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "foundationdate": {
            "type": [
              "string",
              "null"
            ]
          },
          "gender": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "national": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "shortname": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamcolorsprimary": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamcolorssecondary": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamcolorstext": {
            "type": [
              "string",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "usercount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "venueId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "shortname",
          "gender",
          "tournamentId",
          "usercount",
          "teamcolorsprimary",
          "teamcolorssecondary",
          "teamcolorstext",
          "foundationdate",
          "countrySlug",
          "venueId",
          "national",
          "categoryId"
        ],
        "type": "object"
      },
      "TipsterPreviewBody": {
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "tags": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "tips": {
            "items": {
              "$ref": "#/components/schemas/TipsterTip"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "title",
          "description",
          "tags",
          "tips"
        ],
        "type": "object"
      },
      "TipsterPreviewUpdateBody": {
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          },
          "tags": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "tips": {
            "items": {
              "$ref": "#/components/schemas/TipsterTip"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "title",
          "description",
          "tags",
          "status",
          "tips"
        ],
        "type": "object"
      },
      "TipsterTip": {
        "additionalProperties": false,
        "properties": {
          "bettingTips": {
            "type": "string"
          },
          "content": {
            "type": "string"
          },
          "fixture": {
            "$ref": "#/components/schemas/TipsterTipFixtureStruct"
          }
        },
        "required": [
          "fixture",
          "content",
          "bettingTips"
        ],
        "type": "object"
      },
      "TipsterTipFixtureStruct": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/AwayTeamStruct"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/HomeTeamStruct"
          },
          "id": {},
          "slug": {
            "type": "string"
          },
          "startTimestamp": {},
          "tournament": {
            "$ref": "#/components/schemas/TournamentStruct"
          }
        },
        "required": [
          "id",
          "slug",
          "homeTeam",
          "awayTeam",
          "tournament",
          "startTimestamp"
        ],
        "type": "object"
      },
      "TournamentSeason": {
        "additionalProperties": false,
        "properties": {
          "seasonId": {
            "format": "int64",
            "type": "integer"
          },
          "seasonName": {
            "type": "string"
          }
        },
        "required": [
          "seasonId",
          "seasonName"
        ],
        "type": "object"
      },
      "TournamentSeasonsEntry": {
        "additionalProperties": false,
        "properties": {
          "isNational": {
            "type": "boolean"
          },
          "seasons": {
            "items": {
              "$ref": "#/components/schemas/TournamentSeason"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "tournamentName": {
            "type": "string"
          }
        },
        "required": [
          "tournamentName",
          "isNational",
          "seasons"
        ],
        "type": "object"
      },
      "TournamentStruct": {
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "slug"
        ],
        "type": "object"
      },
      "Tournaments": {
        "additionalProperties": false,
        "properties": {
          "ai_analysis_allowed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "categoryId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "competitionType": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "heatmapLoad": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "isAlt": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "isFavorite": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "isGroup": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "isLive": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "isNational": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "onForTelegramBot": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "predictlineup_allowed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "priority": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotmapLoad": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "shouldShow": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "viewPriority": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "slug",
          "categoryId",
          "priority",
          "isGroup",
          "isLive",
          "uniqueTournamentId",
          "shouldShow",
          "isFavorite",
          "isAlt",
          "isNational",
          "viewPriority",
          "heatmapLoad",
          "shotmapLoad",
          "onForTelegramBot",
          "predictlineup_allowed",
          "ai_analysis_allowed",
          "competitionType"
        ],
        "type": "object"
      },
      "TrackerBankrollView": {
        "additionalProperties": false,
        "properties": {
          "currency": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "isDefault": {
            "type": "boolean"
          },
          "mode": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "startingBalance": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "unitValue": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "mode",
          "currency",
          "unitValue",
          "startingBalance",
          "isDefault"
        ],
        "type": "object"
      },
      "TrackerBetUpdateBody": {
        "additionalProperties": false,
        "properties": {
          "actualResult": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bookmakerId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "id": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "notes": {
            "type": [
              "string",
              "null"
            ]
          },
          "oddsTaken": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "type": [
              "string",
              "null"
            ]
          },
          "stake": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "stakeCurrency": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          },
          "tags": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "stake",
          "oddsTaken",
          "notes",
          "status",
          "actualResult",
          "source",
          "bookmakerId",
          "tags",
          "stakeCurrency"
        ],
        "type": "object"
      },
      "TrackerSettings": {
        "additionalProperties": false,
        "properties": {
          "currency": {
            "type": "string"
          },
          "stakeMode": {
            "type": "string"
          },
          "unitValue": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "stakeMode",
          "currency",
          "unitValue"
        ],
        "type": "object"
      },
      "TrendRecentGame": {
        "additionalProperties": false,
        "properties": {
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "double",
            "type": "number"
          },
          "hasSuperSub": {
            "type": "boolean"
          },
          "isHit": {
            "type": "boolean"
          },
          "isHome": {
            "type": "boolean"
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentName": {
            "type": "string"
          },
          "opponentSlug": {
            "type": "string"
          },
          "originalStatValue": {
            "format": "double",
            "type": "number"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "statValue": {
            "format": "double",
            "type": "number"
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "eventId",
          "statValue",
          "minutesPlayed",
          "position",
          "opponentName",
          "opponentSlug",
          "opponentId",
          "isHome",
          "isHit",
          "tournamentId",
          "uniqueTournamentId",
          "eventTimestamp",
          "hasSuperSub"
        ],
        "type": "object"
      },
      "TrendResult": {
        "additionalProperties": false,
        "properties": {
          "activityInfo": {
            "$ref": "#/components/schemas/ActivityInfo"
          },
          "awayTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "awayTeamName": {
            "type": "string"
          },
          "awayTeamSlug": {
            "type": "string"
          },
          "bookmakers": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventInternalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "eventTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "homeTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "homeTeamName": {
            "type": "string"
          },
          "homeTeamSlug": {
            "type": "string"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "inPredictedLineup": {
            "type": "boolean"
          },
          "leagueAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "marketName": {
            "type": "string"
          },
          "oddsType": {
            "type": "string"
          },
          "opponentAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "opponentRank": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentTeamName": {
            "type": "string"
          },
          "opponentTeamSlug": {
            "type": "string"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerName": {
            "type": "string"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "recentGames": {
            "items": {
              "$ref": "#/components/schemas/TrendRecentGame"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "statType": {
            "type": "string"
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamName": {
            "type": "string"
          },
          "teamPrimaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSecondaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSlug": {
            "type": "string"
          },
          "totalRanks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "trendAvg": {
            "format": "double",
            "type": "number"
          },
          "trendHits": {
            "format": "int64",
            "type": "integer"
          },
          "trendTotal": {
            "format": "double",
            "type": "number"
          },
          "trendWindow": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "playerId",
          "playerName",
          "statType",
          "marketName",
          "line",
          "oddsType",
          "eventId",
          "eventInternalId",
          "eventTimestamp",
          "teamId",
          "teamName",
          "teamSlug",
          "teamPrimaryColor",
          "teamSecondaryColor",
          "homeTeamId",
          "homeTeamName",
          "homeTeamSlug",
          "awayTeamId",
          "awayTeamName",
          "awayTeamSlug",
          "opponentTeamId",
          "opponentTeamName",
          "opponentTeamSlug",
          "opponentRank",
          "totalRanks",
          "leagueAverage",
          "opponentAverage",
          "bookmakers",
          "trendHits",
          "trendWindow",
          "trendTotal",
          "trendAvg",
          "recentGames",
          "inPredictedLineup",
          "activityInfo",
          "position"
        ],
        "type": "object"
      },
      "TrendsParams": {
        "additionalProperties": false,
        "properties": {
          "bookmakers": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "games": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "inPredictedLineup": {
            "type": "boolean"
          },
          "lines": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "maxLastGameWithTeam": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minHitRate": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minMinutes": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minWindow": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "nationalOnly": {
            "type": "boolean"
          },
          "oddsRange": {
            "$ref": "#/components/schemas/TrendsParamsOddsRangeStruct"
          },
          "page": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "pageSize": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "playerId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "positions": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "sorting": {
            "$ref": "#/components/schemas/TrendsParamsSortingStruct"
          },
          "startedLastGame": {
            "type": "boolean"
          },
          "statTypes": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "superSub": {
            "type": "boolean"
          },
          "type": {
            "type": "string"
          },
          "uniqueTournamentId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "games",
          "playerId",
          "uniqueTournamentId",
          "page",
          "pageSize",
          "statTypes",
          "type",
          "bookmakers",
          "oddsRange",
          "sorting",
          "minWindow",
          "minHitRate",
          "superSub",
          "nationalOnly",
          "inPredictedLineup",
          "startedLastGame",
          "maxLastGameWithTeam",
          "minMinutes",
          "positions",
          "lines"
        ],
        "type": "object"
      },
      "TrendsParamsOddsRangeStruct": {
        "additionalProperties": false,
        "properties": {
          "from": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "to": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "from",
          "to"
        ],
        "type": "object"
      },
      "TrendsParamsSortingStruct": {
        "additionalProperties": false,
        "properties": {
          "column": {
            "type": "string"
          },
          "direction": {
            "type": "string"
          }
        },
        "required": [
          "column",
          "direction"
        ],
        "type": "object"
      },
      "TweetMention": {
        "additionalProperties": false,
        "properties": {
          "author_username": {
            "type": "string"
          },
          "created_at": {
            "type": "string"
          },
          "follower_count": {
            "format": "int64",
            "type": "integer"
          },
          "hidden": {
            "type": "boolean"
          },
          "id": {
            "type": "string"
          },
          "images": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "tweet_id": {
            "type": "string"
          },
          "tweet_text": {
            "type": "string"
          }
        },
        "required": [
          "tweet_id",
          "author_username",
          "tweet_text",
          "created_at"
        ],
        "type": "object"
      },
      "TweetsRecentResponse": {
        "additionalProperties": false,
        "properties": {
          "count": {
            "format": "int64",
            "type": "integer"
          },
          "mentions": {
            "items": {
              "$ref": "#/components/schemas/TweetMention"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "success": {
            "type": "boolean"
          },
          "timestamp": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "count",
          "mentions",
          "timestamp"
        ],
        "type": "object"
      },
      "UiMessage": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "parts": {
            "items": {
              "$ref": "#/components/schemas/UiMessagePart"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "role": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "role",
          "parts"
        ],
        "type": "object"
      },
      "UiMessagePart": {
        "additionalProperties": false,
        "properties": {
          "input": {},
          "output": {},
          "result": {},
          "state": {
            "type": "string"
          },
          "text": {
            "type": "string"
          },
          "toolCallId": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "type",
          "text",
          "output",
          "result",
          "input",
          "state",
          "toolCallId"
        ],
        "type": "object"
      },
      "UpcomingFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "startTime": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "venueId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "homeTeamId",
          "awayTeamId",
          "tournamentId",
          "startTime",
          "slug",
          "status",
          "homeTeamName",
          "awayTeamName",
          "venueId"
        ],
        "type": "object"
      },
      "UpcomingMultiBody": {
        "additionalProperties": false,
        "properties": {
          "days": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "limit": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "tournamentIds": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "uniqueTournamentIds": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "tournamentIds",
          "uniqueTournamentIds",
          "days",
          "limit"
        ],
        "type": "object"
      },
      "UpcomingMultiFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "startTime": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "venueId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "homeTeamId",
          "awayTeamId",
          "tournamentId",
          "startTime",
          "slug",
          "status",
          "homeTeamName",
          "awayTeamName",
          "venueId"
        ],
        "type": "object"
      },
      "V2Account": {
        "additionalProperties": false,
        "properties": {
          "email": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "role": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "email",
          "role"
        ],
        "type": "object"
      },
      "V2AdminBotRoutingGetOKBody": {
        "additionalProperties": false,
        "properties": {
          "superadmin_default_target": {
            "type": "string"
          },
          "workers_force_prod": {
            "type": "boolean"
          }
        },
        "required": [
          "superadmin_default_target",
          "workers_force_prod"
        ],
        "type": "object"
      },
      "V2AdminBotRoutingPutInputBody": {
        "additionalProperties": false,
        "properties": {
          "superadmin_default_target": {
            "type": [
              "string",
              "null"
            ]
          },
          "workers_force_prod": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "superadmin_default_target",
          "workers_force_prod"
        ],
        "type": "object"
      },
      "V2AdminBotRoutingPutOKBody": {
        "additionalProperties": false,
        "properties": {
          "superadmin_default_target": {
            "type": "string"
          },
          "updated": {
            "type": "boolean"
          },
          "workers_force_prod": {
            "type": "boolean"
          }
        },
        "required": [
          "superadmin_default_target",
          "updated",
          "workers_force_prod"
        ],
        "type": "object"
      },
      "V2AdminPlayerAssignmentsReconcileInputBody": {
        "additionalProperties": false,
        "properties": {
          "options": {
            "$ref": "#/components/schemas/OptionsStruct"
          },
          "playerIds": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "teamId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "tournamentId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "playerIds",
          "teamId",
          "tournamentId",
          "options"
        ],
        "type": "object"
      },
      "V2AdminPlayerAssignmentsReconcileOKBody": {
        "additionalProperties": false,
        "properties": {
          "batchSize": {
            "format": "int64",
            "type": "integer"
          },
          "batchesQueued": {
            "format": "int64",
            "type": "integer"
          },
          "dryRun": {
            "type": "boolean"
          },
          "errors": {},
          "messageIds": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "success": {
            "type": "boolean"
          },
          "totalPlayers": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "success",
          "totalPlayers"
        ],
        "type": "object"
      },
      "V2AdminSendCustomMessageInputBody": {
        "additionalProperties": false,
        "properties": {
          "message": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "V2AdminSendCustomMessageOKBody": {
        "additionalProperties": false,
        "properties": {
          "message": {
            "type": "string"
          },
          "subscriberCount": {
            "format": "int64",
            "type": "integer"
          },
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "message",
          "subscriberCount",
          "success"
        ],
        "type": "object"
      },
      "V2AdminViewResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {}
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2AlertLines": {
        "additionalProperties": false,
        "properties": {
          "fivePlusFouls": {
            "type": "boolean"
          },
          "fourFouls": {
            "type": "boolean"
          },
          "threeFouls": {
            "type": "boolean"
          },
          "twoFouls": {
            "type": "boolean"
          },
          "yellowCards": {
            "type": "boolean"
          }
        },
        "required": [
          "twoFouls",
          "threeFouls",
          "fourFouls",
          "fivePlusFouls",
          "yellowCards"
        ],
        "type": "object"
      },
      "V2AlertLinesUpdate": {
        "additionalProperties": false,
        "properties": {
          "fivePlusFouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "fourFouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "threeFouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "twoFouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "yellowCards": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "twoFouls",
          "threeFouls",
          "fourFouls",
          "fivePlusFouls",
          "yellowCards"
        ],
        "type": "object"
      },
      "V2AlertPreferenceCompetitionsOKBody": {
        "additionalProperties": false,
        "properties": {
          "leagues": {
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "leagues"
        ],
        "type": "object"
      },
      "V2AlertPreferences": {
        "additionalProperties": false,
        "properties": {
          "active": {
            "type": "boolean"
          },
          "eligible": {
            "type": "boolean"
          },
          "lines": {
            "$ref": "#/components/schemas/V2AlertLines"
          },
          "mutedCompetitions": {
            "items": {
              "$ref": "#/components/schemas/V2ResourceReference"
            },
            "type": "array"
          },
          "telegramLinked": {
            "type": "boolean"
          }
        },
        "required": [
          "eligible",
          "active",
          "telegramLinked",
          "lines",
          "mutedCompetitions"
        ],
        "type": "object"
      },
      "V2AlertPreferencesViewDeleteInputBody": {
        "additionalProperties": false,
        "properties": {
          "mutedUniqueTournamentIds": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "notify2Fouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "notify3Fouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "notify4Fouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "notify5PlusFouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "notifyYellowCards": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "notify2Fouls",
          "notify3Fouls",
          "notify4Fouls",
          "notify5PlusFouls",
          "notifyYellowCards",
          "mutedUniqueTournamentIds"
        ],
        "type": "object"
      },
      "V2AlertPreferencesViewDeleteOKBody": {
        "additionalProperties": false,
        "properties": {
          "eligible": {
            "type": "boolean"
          },
          "isLiveAlertActive": {
            "type": "boolean"
          },
          "preferences": {
            "additionalProperties": {},
            "type": "object"
          },
          "success": {
            "type": "boolean"
          },
          "telegramLinked": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "V2AlertPreferencesViewGetOKBody": {
        "additionalProperties": false,
        "properties": {
          "eligible": {
            "type": "boolean"
          },
          "isLiveAlertActive": {
            "type": "boolean"
          },
          "preferences": {
            "additionalProperties": {},
            "type": "object"
          },
          "success": {
            "type": "boolean"
          },
          "telegramLinked": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "V2AlertPreferencesViewPatchInputBody": {
        "additionalProperties": false,
        "properties": {
          "mutedUniqueTournamentIds": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "notify2Fouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "notify3Fouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "notify4Fouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "notify5PlusFouls": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "notifyYellowCards": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "notify2Fouls",
          "notify3Fouls",
          "notify4Fouls",
          "notify5PlusFouls",
          "notifyYellowCards",
          "mutedUniqueTournamentIds"
        ],
        "type": "object"
      },
      "V2AlertPreferencesViewPatchOKBody": {
        "additionalProperties": false,
        "properties": {
          "eligible": {
            "type": "boolean"
          },
          "isLiveAlertActive": {
            "type": "boolean"
          },
          "preferences": {
            "additionalProperties": {},
            "type": "object"
          },
          "success": {
            "type": "boolean"
          },
          "telegramLinked": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "V2ApplySubscriptionRetentionDiscountOKBody": {
        "additionalProperties": false,
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "V2AssistantChatInputBody": {
        "additionalProperties": false,
        "properties": {
          "messages": {
            "items": {
              "$ref": "#/components/schemas/UiMessage"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "messages"
        ],
        "type": "object"
      },
      "V2Bankroll": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "currency": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "isDefault": {
            "type": "boolean"
          },
          "mode": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "startingBalance": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "unitValue": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "mode",
          "currency",
          "unitValue",
          "startingBalance",
          "isDefault",
          "createdAt"
        ],
        "type": "object"
      },
      "V2BankrollsViewDeleteOKBody": {
        "additionalProperties": false,
        "properties": {
          "bankroll": {
            "$ref": "#/components/schemas/TrackerBankrollView"
          },
          "bankrolls": {
            "items": {
              "$ref": "#/components/schemas/TrackerBankrollView"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "type": "object"
      },
      "V2BankrollsViewGetOKBody": {
        "additionalProperties": false,
        "properties": {
          "bankroll": {
            "$ref": "#/components/schemas/TrackerBankrollView"
          },
          "bankrolls": {
            "items": {
              "$ref": "#/components/schemas/TrackerBankrollView"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "type": "object"
      },
      "V2BankrollsViewPatchOKBody": {
        "additionalProperties": false,
        "properties": {
          "bankroll": {
            "$ref": "#/components/schemas/TrackerBankrollView"
          },
          "bankrolls": {
            "items": {
              "$ref": "#/components/schemas/TrackerBankrollView"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "type": "object"
      },
      "V2BankrollsViewPostOKBody": {
        "additionalProperties": false,
        "properties": {
          "bankroll": {
            "$ref": "#/components/schemas/TrackerBankrollView"
          },
          "bankrolls": {
            "items": {
              "$ref": "#/components/schemas/TrackerBankrollView"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "type": "object"
      },
      "V2BasketballCompetitionFixturesOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballCompetitionTeamsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/BasketballTeamSummary"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballCompetitionsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {
              "items": {
                "$ref": "#/components/schemas/BasketballTournamentGroup"
              },
              "type": [
                "array",
                "null"
              ]
            },
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballFixturePlayerOddsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballFixturesOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballPlayerOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": true,
            "type": "object"
          },
          "nextEvent": {}
        },
        "required": [
          "data",
          "nextEvent"
        ],
        "type": "object"
      },
      "V2BasketballPlayerPerformanceOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballPlayersOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballSearchOKBody": {
        "additionalProperties": false,
        "properties": {
          "fixtures": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "players": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "teams": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "fixtures",
          "players",
          "teams"
        ],
        "type": "object"
      },
      "V2BasketballTeamOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {}
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballTeamPerformanceOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2BasketballTeamPlayerPerformanceOKBody": {
        "additionalProperties": false,
        "properties": {
          "currentFixturePlayerStats": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "data": {
            "items": {
              "$ref": "#/components/schemas/BasketballPlayerLine"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "events": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "currentFixturePlayerStats",
          "data",
          "events"
        ],
        "type": "object"
      },
      "V2BasketballTeamUpcomingFixturesOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2BetTrackerSettings": {
        "additionalProperties": false,
        "properties": {
          "currency": {
            "type": "string"
          },
          "stakeMode": {
            "type": "string"
          },
          "tags": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "unitValue": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "stakeMode",
          "currency",
          "unitValue",
          "tags"
        ],
        "type": "object"
      },
      "V2BetTrackerSettingsViewGetOKBody": {
        "additionalProperties": false,
        "properties": {
          "settings": {
            "$ref": "#/components/schemas/TrackerSettings"
          }
        },
        "required": [
          "settings"
        ],
        "type": "object"
      },
      "V2BetTrackerSettingsViewPutInputBody": {
        "additionalProperties": false,
        "properties": {
          "currency": {
            "type": [
              "string",
              "null"
            ]
          },
          "stakeMode": {
            "type": [
              "string",
              "null"
            ]
          },
          "unitValue": {}
        },
        "required": [
          "stakeMode",
          "currency",
          "unitValue"
        ],
        "type": "object"
      },
      "V2BetTrackerSettingsViewPutOKBody": {
        "additionalProperties": false,
        "properties": {
          "settings": {
            "$ref": "#/components/schemas/TrackerSettings"
          }
        },
        "required": [
          "settings"
        ],
        "type": "object"
      },
      "V2BettingHistoryBet": {
        "additionalProperties": false,
        "properties": {
          "backedOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "profit": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "runningProfit": {
            "format": "double",
            "type": "number"
          },
          "stake": {
            "format": "double",
            "type": "number"
          },
          "won": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "backedOdds",
          "won",
          "stake",
          "profit",
          "runningProfit"
        ],
        "type": "object"
      },
      "V2BettingHistoryFilters": {
        "additionalProperties": false,
        "properties": {
          "competitionId": {
            "type": [
              "string",
              "null"
            ]
          },
          "from": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "limit": {
            "format": "int64",
            "type": "integer"
          },
          "side": {
            "enum": [
              "team"
            ],
            "type": "string"
          },
          "stake": {
            "format": "double",
            "type": "number"
          },
          "to": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "venue": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "limit",
          "stake",
          "side",
          "venue",
          "competitionId",
          "from",
          "to"
        ],
        "type": "object"
      },
      "V2BettingHistoryMatch": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "bet": {
            "$ref": "#/components/schemas/V2BettingHistoryBet"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "fixture": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "home": {
            "type": "boolean"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "odds": {
            "$ref": "#/components/schemas/V2BettingHistoryOdds"
          },
          "result": {
            "enum": [
              "win",
              "draw",
              "loss"
            ],
            "type": "string"
          },
          "score": {
            "$ref": "#/components/schemas/V2FixtureScore"
          }
        },
        "required": [
          "fixture",
          "kickoffAt",
          "competition",
          "homeTeam",
          "awayTeam",
          "score",
          "home",
          "result",
          "odds",
          "bet"
        ],
        "type": "object"
      },
      "V2BettingHistoryOdds": {
        "additionalProperties": false,
        "properties": {
          "bestAwayWin": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestDraw": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestHomeWin": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bookmaker": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "bestHomeWin",
          "bestDraw",
          "bestAwayWin",
          "bookmaker"
        ],
        "type": "object"
      },
      "V2BettingHistorySummary": {
        "additionalProperties": false,
        "properties": {
          "backedWinRatePercent": {
            "format": "double",
            "type": "number"
          },
          "matchesWithOdds": {
            "format": "int64",
            "type": "integer"
          },
          "returns": {
            "$ref": "#/components/schemas/V2BettingReturns"
          },
          "totalMatches": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "totalMatches",
          "matchesWithOdds",
          "returns",
          "backedWinRatePercent"
        ],
        "type": "object"
      },
      "V2BettingOddsBracket": {
        "additionalProperties": false,
        "properties": {
          "drawn": {
            "format": "int64",
            "type": "integer"
          },
          "label": {
            "type": "string"
          },
          "lost": {
            "format": "int64",
            "type": "integer"
          },
          "maxOdds": {
            "format": "double",
            "type": "number"
          },
          "minOdds": {
            "format": "double",
            "type": "number"
          },
          "played": {
            "format": "int64",
            "type": "integer"
          },
          "returns": {
            "$ref": "#/components/schemas/V2BettingReturns"
          },
          "winRatePercent": {
            "format": "double",
            "type": "number"
          },
          "won": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "label",
          "minOdds",
          "maxOdds",
          "played",
          "won",
          "drawn",
          "lost",
          "winRatePercent",
          "returns"
        ],
        "type": "object"
      },
      "V2BettingReturns": {
        "additionalProperties": false,
        "properties": {
          "profit": {
            "format": "double",
            "type": "number"
          },
          "roiPercent": {
            "format": "double",
            "type": "number"
          },
          "totalReturned": {
            "format": "double",
            "type": "number"
          },
          "totalStaked": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "totalStaked",
          "totalReturned",
          "profit",
          "roiPercent"
        ],
        "type": "object"
      },
      "V2Bookmaker": {
        "additionalProperties": false,
        "properties": {
          "active": {
            "type": "boolean"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "source": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "source",
          "active"
        ],
        "type": "object"
      },
      "V2BookmakerPrice": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "price": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "bookmaker",
          "price"
        ],
        "type": "object"
      },
      "V2BracketParticipant": {
        "additionalProperties": false,
        "properties": {
          "placeholder": {
            "type": [
              "string",
              "null"
            ]
          },
          "score": {
            "type": [
              "string",
              "null"
            ]
          },
          "seed": {
            "type": [
              "string",
              "null"
            ]
          },
          "sourceTieId": {
            "type": [
              "string",
              "null"
            ]
          },
          "team": {
            "$ref": "#/components/schemas/V2NullableResourceReference"
          },
          "winner": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "team",
          "score",
          "seed",
          "winner",
          "sourceTieId",
          "placeholder"
        ],
        "type": "object"
      },
      "V2BracketRound": {
        "additionalProperties": false,
        "properties": {
          "kindCode": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matchesInRound": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "order": {
            "format": "int64",
            "type": "integer"
          },
          "ties": {
            "items": {
              "$ref": "#/components/schemas/V2BracketTie"
            },
            "type": "array"
          }
        },
        "required": [
          "order",
          "name",
          "kindCode",
          "matchesInRound",
          "ties"
        ],
        "type": "object"
      },
      "V2BracketTie": {
        "additionalProperties": false,
        "properties": {
          "automaticProgression": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "away": {
            "$ref": "#/components/schemas/V2BracketParticipant"
          },
          "finished": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "fixtureIds": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "hasNextRoundLink": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "home": {
            "$ref": "#/components/schemas/V2BracketParticipant"
          },
          "id": {
            "type": "string"
          },
          "inProgress": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "order": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "result": {
            "type": [
              "string",
              "null"
            ]
          },
          "startedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "order",
          "fixtureIds",
          "finished",
          "inProgress",
          "hasNextRoundLink",
          "automaticProgression",
          "startedAt",
          "result",
          "home",
          "away"
        ],
        "type": "object"
      },
      "V2CancelSubscriptionOKBody": {
        "additionalProperties": false,
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "V2CardOddsBatchInputBody": {
        "additionalProperties": false,
        "properties": {
          "eventIds": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "eventIds"
        ],
        "type": "object"
      },
      "V2CommentaryPlayerStatistic": {
        "additionalProperties": false,
        "properties": {
          "firstHalfFoulsCommitted": {
            "format": "int64",
            "type": "integer"
          },
          "firstHalfFoulsWon": {
            "format": "int64",
            "type": "integer"
          },
          "firstHalfShots": {
            "format": "int64",
            "type": "integer"
          },
          "firstHalfShotsOnTarget": {
            "format": "int64",
            "type": "integer"
          },
          "fixture": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "headedShots": {
            "format": "int64",
            "type": "integer"
          },
          "headedShotsOnTarget": {
            "format": "int64",
            "type": "integer"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "playerName": {
            "type": "string"
          },
          "shotsOnTargetOutsideBox": {
            "format": "int64",
            "type": "integer"
          },
          "shotsOutsideBox": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "fixture",
          "player",
          "playerName",
          "shotsOutsideBox",
          "shotsOnTargetOutsideBox",
          "headedShots",
          "headedShotsOnTarget",
          "firstHalfShots",
          "firstHalfShotsOnTarget",
          "firstHalfFoulsCommitted",
          "firstHalfFoulsWon"
        ],
        "type": "object"
      },
      "V2Competition": {
        "additionalProperties": false,
        "properties": {
          "capabilities": {
            "$ref": "#/components/schemas/V2CompetitionCapabilities"
          },
          "fixturesInWindow": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "primaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "region": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "secondaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "primaryColor",
          "secondaryColor",
          "region",
          "capabilities",
          "fixturesInWindow"
        ],
        "type": "object"
      },
      "V2CompetitionBracket": {
        "additionalProperties": false,
        "properties": {
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "currentRound": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "formatCode": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "phase": {
            "$ref": "#/components/schemas/V2NullableResourceReference"
          },
          "rounds": {
            "items": {
              "$ref": "#/components/schemas/V2BracketRound"
            },
            "type": "array"
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "currentRound",
          "formatCode",
          "competition",
          "season",
          "phase",
          "updatedAt",
          "rounds"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2CompetitionBracketViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2CompetitionCapabilities": {
        "additionalProperties": false,
        "properties": {
          "liveAlerts": {
            "type": "boolean"
          },
          "performanceGraph": {
            "type": "boolean"
          },
          "playerStatistics": {
            "type": "boolean"
          }
        },
        "required": [
          "performanceGraph",
          "playerStatistics",
          "liveAlerts"
        ],
        "type": "object"
      },
      "V2CompetitionDirectory": {
        "additionalProperties": false,
        "properties": {
          "from": {
            "format": "date-time",
            "type": "string"
          },
          "groups": {
            "items": {
              "$ref": "#/components/schemas/V2CompetitionDirectoryGroup"
            },
            "type": "array"
          },
          "to": {
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "from",
          "to",
          "groups"
        ],
        "type": "object"
      },
      "V2CompetitionDirectoryGroup": {
        "additionalProperties": false,
        "properties": {
          "competitions": {
            "items": {
              "$ref": "#/components/schemas/V2CompetitionDirectoryItem"
            },
            "type": "array"
          },
          "regionSlug": {
            "type": "string"
          }
        },
        "required": [
          "regionSlug",
          "competitions"
        ],
        "type": "object"
      },
      "V2CompetitionDirectoryItem": {
        "additionalProperties": false,
        "properties": {
          "fixtureCount": {
            "format": "int64",
            "type": "integer"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "popular": {
            "type": "boolean"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "fixtureCount",
          "popular"
        ],
        "type": "object"
      },
      "V2CompetitionFixturesViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2CompetitionOverviewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2CompetitionPhase": {
        "additionalProperties": false,
        "properties": {
          "capabilities": {
            "$ref": "#/components/schemas/V2PhaseCapabilities"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "group": {
            "type": "boolean"
          },
          "id": {
            "type": "string"
          },
          "live": {
            "type": "boolean"
          },
          "name": {
            "type": "string"
          },
          "region": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "competition",
          "region",
          "group",
          "live",
          "capabilities"
        ],
        "type": "object"
      },
      "V2CompetitionRound": {
        "additionalProperties": false,
        "properties": {
          "number": {
            "format": "int64",
            "type": "integer"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "number",
          "slug"
        ],
        "type": "object"
      },
      "V2CompetitionRoundFixturesViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2CompetitionRoundsViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/RoundRow"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2CompetitionSeason": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "year": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "year"
        ],
        "type": "object"
      },
      "V2CompetitionSeasonViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/Seasons"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2CompetitionStandingsViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2Country": {
        "additionalProperties": false,
        "properties": {
          "alpha2": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "alpha2"
        ],
        "type": "object"
      },
      "V2CountryReference": {
        "additionalProperties": false,
        "properties": {
          "alpha2": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "alpha2"
        ],
        "type": "object"
      },
      "V2CreateBillingPortalSessionOKBody": {
        "additionalProperties": false,
        "properties": {
          "url": {
            "type": "string"
          }
        },
        "required": [
          "url"
        ],
        "type": "object"
      },
      "V2CreateCheckoutSessionInputBody": {
        "additionalProperties": false,
        "properties": {
          "priceId": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "priceId"
        ],
        "type": "object"
      },
      "V2CreateCheckoutSessionOKBody": {
        "additionalProperties": false,
        "properties": {
          "url": {
            "type": "string"
          }
        },
        "required": [
          "url"
        ],
        "type": "object"
      },
      "V2CreateCompetitionCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "message": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "message",
          "name"
        ],
        "type": "object"
      },
      "V2CreateCompetitionInputBody": {
        "additionalProperties": false,
        "properties": {
          "categoryId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "displayInverseHomeAway": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "hasEventPlayerStatistics": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "hasPerformanceGraph": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "primaryColorHex": {
            "type": [
              "string",
              "null"
            ]
          },
          "secondaryColorHex": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "userCount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "primaryColorHex",
          "secondaryColorHex",
          "categoryId",
          "userCount",
          "hasPerformanceGraph",
          "hasEventPlayerStatistics",
          "displayInverseHomeAway"
        ],
        "type": "object"
      },
      "V2CreateCountryCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "alpha2": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "alpha2",
          "message",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "V2CreateFixtureCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "event": {
            "$ref": "#/components/schemas/Events"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "event",
          "message"
        ],
        "type": "object"
      },
      "V2CreateIncidentCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "message"
        ],
        "type": "object"
      },
      "V2CreateManagerCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "message": {
            "type": "string"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "message",
          "name"
        ],
        "type": "object"
      },
      "V2CreateManagerInputBody": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "V2CreatePlayerCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "message": {
            "type": "string"
          },
          "team": {
            "$ref": "#/components/schemas/Players"
          }
        },
        "required": [
          "message",
          "team"
        ],
        "type": "object"
      },
      "V2CreatePlayerInputBody": {
        "additionalProperties": false,
        "properties": {
          "contractuntil": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "dateofbirth": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "deceased": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "gender": {
            "type": [
              "string",
              "null"
            ]
          },
          "height": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "jerseynumber": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "marketvalue": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "preferredfoot": {
            "type": [
              "string",
              "null"
            ]
          },
          "shortname": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamid": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "usercount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortname",
          "position",
          "jerseynumber",
          "height",
          "preferredfoot",
          "usercount",
          "deceased",
          "gender",
          "countrySlug",
          "dateofbirth",
          "contractuntil",
          "marketvalue",
          "teamid"
        ],
        "type": "object"
      },
      "V2CreateRefereeCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "message": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "message",
          "name"
        ],
        "type": "object"
      },
      "V2CreateRegionCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "message": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "message",
          "name"
        ],
        "type": "object"
      },
      "V2CreateSavedScreenerFilterCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/SavedFilterView"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2CreateSavedScreenerFilterInputBody": {
        "additionalProperties": false,
        "properties": {
          "filters": {},
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "type",
          "filters"
        ],
        "type": "object"
      },
      "V2CreateSeasonCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "message": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "message",
          "name"
        ],
        "type": "object"
      },
      "V2CreateTeamCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "message": {
            "type": "string"
          },
          "team": {
            "$ref": "#/components/schemas/Teams"
          }
        },
        "required": [
          "message",
          "team"
        ],
        "type": "object"
      },
      "V2CreateTeamInputBody": {
        "additionalProperties": false,
        "properties": {
          "categoryId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "foundationdate": {
            "type": [
              "string",
              "null"
            ]
          },
          "gender": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "national": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "shortname": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamcolorsprimary": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamcolorssecondary": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamcolorstext": {
            "type": [
              "string",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "usercount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "venueId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortname",
          "gender",
          "tournamentId",
          "usercount",
          "teamcolorsprimary",
          "teamcolorssecondary",
          "teamcolorstext",
          "foundationdate",
          "countrySlug",
          "venueId",
          "national",
          "categoryId"
        ],
        "type": "object"
      },
      "V2CreateTipsterPreviewCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "preview": {},
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "preview"
        ],
        "type": "object"
      },
      "V2CreateValueBetLineupAlertInputBody": {
        "additionalProperties": false,
        "properties": {
          "line": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "marketType": {
            "type": [
              "string",
              "null"
            ]
          },
          "matchDate": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "matchId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "note": {
            "type": [
              "string",
              "null"
            ]
          },
          "playerId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "playerName": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "playerId",
          "playerName",
          "teamId",
          "matchId",
          "matchDate",
          "marketType",
          "line",
          "note"
        ],
        "type": "object"
      },
      "V2CreateValueBetLineupAlertOKBody": {
        "additionalProperties": false,
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "V2CreateVenueCreatedBody": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "message": {
            "type": "string"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "message",
          "name"
        ],
        "type": "object"
      },
      "V2DashboardBettingOddsRulesCreateInputBody": {
        "additionalProperties": false,
        "properties": {
          "label": {
            "type": "string"
          },
          "marketDescription": {
            "type": "string"
          },
          "total": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "label",
          "marketDescription",
          "total"
        ],
        "type": "object"
      },
      "V2DashboardBettingOddsRulesToggleInputBody": {
        "additionalProperties": false,
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "id": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "enabled"
        ],
        "type": "object"
      },
      "V2DashboardBotAlertsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2DashboardBotToggleOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "message"
        ],
        "type": "object"
      },
      "V2DashboardDailySpreadsheetOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/DailyFixture"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2DashboardLeagueGroupLeaguesAddInputBody": {
        "additionalProperties": false,
        "properties": {
          "tournamentIds": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "tournamentIds"
        ],
        "type": "object"
      },
      "V2DashboardLeagueGroupLeaguesRemoveInputBody": {
        "additionalProperties": false,
        "properties": {
          "tournamentIds": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "tournamentIds"
        ],
        "type": "object"
      },
      "V2DashboardLeagueGroupsCreateInputBody": {
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "description"
        ],
        "type": "object"
      },
      "V2DashboardLeagueGroupsUpdateInputBody": {
        "additionalProperties": false,
        "properties": {
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "description"
        ],
        "type": "object"
      },
      "V2DashboardLeagueUpdateInputBody": {
        "additionalProperties": false,
        "properties": {
          "ai_analysis_allowed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "heatmapLoad": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "id": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "isFavorite": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "predictlineup_allowed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "shotmapLoad": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "shouldShow": {
            "type": [
              "boolean",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "shouldShow",
          "isFavorite",
          "heatmapLoad",
          "shotmapLoad",
          "predictlineup_allowed",
          "ai_analysis_allowed"
        ],
        "type": "object"
      },
      "V2DashboardPromptTemplateUpdateInputBody": {
        "additionalProperties": false,
        "properties": {
          "content": {
            "type": [
              "string",
              "null"
            ]
          },
          "isActive": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "content",
          "isActive"
        ],
        "type": "object"
      },
      "V2DashboardPromptTemplatesCreateInputBody": {
        "additionalProperties": false,
        "properties": {
          "content": {
            "type": [
              "string",
              "null"
            ]
          },
          "isActive": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "content",
          "isActive"
        ],
        "type": "object"
      },
      "V2DashboardSportsmonkMappingListOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2DashboardSportsmonkMappingUpdateInputBody": {
        "additionalProperties": false,
        "properties": {
          "teamId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "teamId",
          "teamName"
        ],
        "type": "object"
      },
      "V2DashboardSportsmonkMappingUpdateOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/V2DashboardSportsmonkMappingUpdateOKBodyDataStruct"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "message"
        ],
        "type": "object"
      },
      "V2DashboardSportsmonkMappingUpdateOKBodyDataStruct": {
        "additionalProperties": false,
        "properties": {
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "teamId",
          "teamName"
        ],
        "type": "object"
      },
      "V2DashboardStaleOddsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "page": {
            "format": "int64",
            "type": "integer"
          },
          "pageSize": {
            "format": "int64",
            "type": "integer"
          },
          "totalCount": {
            "format": "int64",
            "type": "integer"
          },
          "totalPages": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "data",
          "page",
          "pageSize",
          "totalCount",
          "totalPages"
        ],
        "type": "object"
      },
      "V2DashboardStatsRulesCreateInputBody": {
        "additionalProperties": false,
        "properties": {
          "statisticKey": {
            "type": "string"
          },
          "statisticsLabel": {
            "type": "string"
          }
        },
        "required": [
          "statisticsLabel",
          "statisticKey"
        ],
        "type": "object"
      },
      "V2DashboardStatsRulesToggleInputBody": {
        "additionalProperties": false,
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "id": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "enabled"
        ],
        "type": "object"
      },
      "V2DashboardSystemStatsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/SystemStats"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2DataCoverageViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/DataVisualizerEvent"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2DataVisualizerByIDsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/DataVisualizerEvent"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2DataVisualizerDailySummary": {
        "additionalProperties": false,
        "properties": {
          "corruptedTeam": {
            "format": "int64",
            "type": "integer"
          },
          "date": {
            "type": "string"
          },
          "good": {
            "format": "int64",
            "type": "integer"
          },
          "missingTeam": {
            "format": "int64",
            "type": "integer"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "date",
          "total",
          "good",
          "corruptedTeam",
          "missingTeam"
        ],
        "type": "object"
      },
      "V2DataVisualizerEvent": {
        "additionalProperties": false,
        "properties": {
          "awayScore": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeam": {
            "type": "string"
          },
          "awayTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "corruptedPlayerStatsCount": {
            "format": "int64",
            "type": "integer"
          },
          "hasCorruptedPlayerStats": {
            "type": "boolean"
          },
          "hasCorruptedTeamStats": {
            "type": "boolean"
          },
          "hasPlayerStats": {
            "type": "boolean"
          },
          "hasStats": {
            "type": "boolean"
          },
          "homeScore": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeam": {
            "type": "string"
          },
          "homeTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "isUnsupportedTournament": {
            "type": "boolean"
          },
          "league": {
            "type": "string"
          },
          "matchDate": {
            "type": "string"
          },
          "matchTime": {
            "type": "string"
          },
          "playerStatsCount": {
            "format": "int64",
            "type": "integer"
          },
          "slug": {
            "type": "string"
          },
          "statsCount": {
            "format": "int64",
            "type": "integer"
          },
          "status": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "internalId",
          "homeTeam",
          "awayTeam",
          "homeTeamId",
          "awayTeamId",
          "league",
          "matchDate",
          "matchTime",
          "status",
          "homeScore",
          "awayScore",
          "hasStats",
          "statsCount",
          "hasCorruptedTeamStats",
          "hasPlayerStats",
          "playerStatsCount",
          "hasCorruptedPlayerStats",
          "corruptedPlayerStatsCount",
          "isUnsupportedTournament",
          "slug"
        ],
        "type": "object"
      },
      "V2DataVisualizerMonthlySummary": {
        "additionalProperties": false,
        "properties": {
          "corruptedTeam": {
            "format": "int64",
            "type": "integer"
          },
          "days": {
            "items": {
              "$ref": "#/components/schemas/V2DataVisualizerDailySummary"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "good": {
            "format": "int64",
            "type": "integer"
          },
          "missingTeam": {
            "format": "int64",
            "type": "integer"
          },
          "month": {
            "type": "string"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "month",
          "days",
          "total",
          "good",
          "corruptedTeam",
          "missingTeam"
        ],
        "type": "object"
      },
      "V2DataVisualizerResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/V2DataVisualizerEvent"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2DataVisualizerSummary": {
        "additionalProperties": false,
        "properties": {
          "corruptedEventCount": {
            "format": "int64",
            "type": "integer"
          },
          "corruptedEvents": {
            "items": {
              "$ref": "#/components/schemas/V2DataVisualizerEvent"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "corruptedEventsTruncated": {
            "type": "boolean"
          },
          "corruptedPlayerStats": {
            "format": "int64",
            "type": "integer"
          },
          "corruptedTeamStats": {
            "format": "int64",
            "type": "integer"
          },
          "dailyData": {
            "items": {
              "$ref": "#/components/schemas/V2DataVisualizerDailySummary"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "excludedEvents": {
            "format": "int64",
            "type": "integer"
          },
          "finishedCorruptedPlayerStats": {
            "format": "int64",
            "type": "integer"
          },
          "finishedCorruptedTeamStats": {
            "format": "int64",
            "type": "integer"
          },
          "finishedEvents": {
            "format": "int64",
            "type": "integer"
          },
          "finishedWithPlayerStats": {
            "format": "int64",
            "type": "integer"
          },
          "finishedWithStats": {
            "format": "int64",
            "type": "integer"
          },
          "goodEvents": {
            "format": "int64",
            "type": "integer"
          },
          "missingPlayerStats": {
            "format": "int64",
            "type": "integer"
          },
          "missingTeamStats": {
            "format": "int64",
            "type": "integer"
          },
          "monthlyData": {
            "items": {
              "$ref": "#/components/schemas/V2DataVisualizerMonthlySummary"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "playerStatsCorruptionRate": {
            "format": "double",
            "type": "number"
          },
          "teamStatsCorruptionRate": {
            "format": "double",
            "type": "number"
          },
          "totalEvents": {
            "format": "int64",
            "type": "integer"
          },
          "unsupportedTeamEvents": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "totalEvents",
          "goodEvents",
          "corruptedTeamStats",
          "corruptedPlayerStats",
          "missingTeamStats",
          "missingPlayerStats",
          "finishedEvents",
          "finishedWithStats",
          "finishedCorruptedTeamStats",
          "finishedWithPlayerStats",
          "finishedCorruptedPlayerStats",
          "unsupportedTeamEvents",
          "excludedEvents",
          "teamStatsCorruptionRate",
          "playerStatsCorruptionRate",
          "dailyData",
          "monthlyData",
          "corruptedEvents",
          "corruptedEventCount",
          "corruptedEventsTruncated"
        ],
        "type": "object"
      },
      "V2DataVisualizerSummaryResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/V2DataVisualizerSummary"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2ExpectedReturnDate": {
        "additionalProperties": false,
        "properties": {
          "day": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "month": {
            "format": "int64",
            "type": "integer"
          },
          "precision": {
            "enum": [
              "exact",
              "month"
            ],
            "type": "string"
          },
          "year": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "day",
          "month",
          "year",
          "precision"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2FavoriteNotes": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "notes": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "notes"
        ],
        "type": "object"
      },
      "V2FavoriteReference": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "V2FavoriteUpcomingFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2FixtureTeam"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2FixtureTeam"
          },
          "id": {
            "type": "string"
          },
          "internalId": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "phase": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "slug": {
            "type": "string"
          },
          "status": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "internalId",
          "slug",
          "status",
          "kickoffAt",
          "phase",
          "homeTeam",
          "awayTeam"
        ],
        "type": "object"
      },
      "V2Fixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2FixtureTeam"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "coverage": {
            "$ref": "#/components/schemas/V2FixtureCoverage"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2FixtureTeam"
          },
          "id": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "phase": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "referee": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "round": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "score": {
            "$ref": "#/components/schemas/V2FixtureScore"
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": "string"
          },
          "venue": {
            "$ref": "#/components/schemas/V2FixtureVenue"
          }
        },
        "required": [
          "id",
          "slug",
          "status",
          "kickoffAt",
          "round",
          "competition",
          "season",
          "phase",
          "homeTeam",
          "awayTeam",
          "venue",
          "referee",
          "score",
          "coverage"
        ],
        "type": "object"
      },
      "V2FixtureBulkTeamOddsOKBody": {
        "additionalProperties": false,
        "properties": {
          "bookmakerSummary": {
            "additionalProperties": {
              "format": "int64",
              "type": "integer"
            },
            "type": "object"
          },
          "data": {
            "additionalProperties": {},
            "type": "object"
          },
          "eventIds": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventsWithOdds": {
            "format": "int64",
            "type": "integer"
          },
          "totalEvents": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureCountsByDateOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {
              "format": "int64",
              "type": "integer"
            },
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureCoverage": {
        "additionalProperties": false,
        "properties": {
          "heatmaps": {
            "type": "boolean"
          },
          "lineup": {
            "type": "string"
          },
          "odds": {
            "type": "boolean"
          },
          "playerStatistics": {
            "type": "boolean"
          },
          "shotmaps": {
            "type": "boolean"
          },
          "statistics": {
            "type": "boolean"
          }
        },
        "required": [
          "lineup",
          "statistics",
          "playerStatistics",
          "odds",
          "heatmaps",
          "shotmaps"
        ],
        "type": "object"
      },
      "V2FixtureDayCategory": {
        "additionalProperties": false,
        "properties": {
          "flag": {
            "type": "string"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "slug",
          "name",
          "flag"
        ],
        "type": "object"
      },
      "V2FixtureDayCompetition": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "name",
          "uniqueTournamentId"
        ],
        "type": "object"
      },
      "V2FixtureDayEvent": {
        "additionalProperties": false,
        "properties": {
          "awayScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "refereeId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "timeStartTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "slug",
          "status",
          "timeStartTimestamp",
          "homeScoreCurrent",
          "awayScoreCurrent",
          "refereeId",
          "uniqueTournamentId"
        ],
        "type": "object"
      },
      "V2FixtureDayFacets": {
        "additionalProperties": false,
        "properties": {
          "competitions": {
            "items": {
              "$ref": "#/components/schemas/V2FixtureDayCompetition"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "competitions"
        ],
        "type": "object"
      },
      "V2FixtureDayPhase": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "internalId",
          "slug",
          "name",
          "uniqueTournamentId"
        ],
        "type": "object"
      },
      "V2FixtureDayResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/V2FixtureDayRow"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "facets": {
            "$ref": "#/components/schemas/V2FixtureDayFacets"
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination",
          "facets"
        ],
        "type": "object"
      },
      "V2FixtureDayRow": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2FixtureDayTeam"
          },
          "categories": {
            "$ref": "#/components/schemas/V2FixtureDayCategory"
          },
          "events": {
            "$ref": "#/components/schemas/V2FixtureDayEvent"
          },
          "hasLineup": {
            "type": "boolean"
          },
          "hasOdd": {
            "type": "boolean"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2FixtureDayTeam"
          },
          "lineupType": {
            "type": "string"
          },
          "phase": {
            "$ref": "#/components/schemas/V2FixtureDayPhase"
          },
          "refereeAvgCards": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "refereeGames": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "refereeName": {
            "type": [
              "string",
              "null"
            ]
          },
          "refereeRedCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "refereeYellowCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "uniqueViewPriority": {
            "format": "int64",
            "type": "integer"
          },
          "unique_tournaments": {
            "$ref": "#/components/schemas/V2FixtureDayUniqueTournament"
          }
        },
        "required": [
          "events",
          "unique_tournaments",
          "phase",
          "categories",
          "homeTeam",
          "awayTeam",
          "refereeName",
          "refereeYellowCards",
          "refereeRedCards",
          "refereeGames",
          "refereeAvgCards",
          "hasOdd",
          "hasLineup",
          "lineupType",
          "uniqueViewPriority"
        ],
        "type": "object"
      },
      "V2FixtureDayTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "shortname": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "internalId",
          "slug",
          "name",
          "shortname"
        ],
        "type": "object"
      },
      "V2FixtureDayUniqueTournament": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "slug",
          "name"
        ],
        "type": "object"
      },
      "V2FixtureDirectoryViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/Events"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2FixtureExpectedCardsOKBody": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/TeamExpectedCards"
          },
          "bookmaker": {},
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/TeamExpectedCards"
          },
          "totalExpectedCards": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "awayTeam",
          "bookmaker",
          "eventId",
          "homeTeam",
          "totalExpectedCards"
        ],
        "type": "object"
      },
      "V2FixtureExtraStatisticsBatchInputBody": {
        "additionalProperties": false,
        "properties": {
          "eventIds": {
            "items": {},
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "eventIds"
        ],
        "type": "object"
      },
      "V2FixtureExtraStatisticsBatchOKBody": {
        "additionalProperties": false,
        "properties": {
          "results": {
            "items": {
              "$ref": "#/components/schemas/BatchExtraStatsResult"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "results"
        ],
        "type": "object"
      },
      "V2FixtureExtraStatisticsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/CommentaryPlayerStats"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "hasCommentary": {
            "type": "boolean"
          },
          "matchStatus": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "hasCommentary"
        ],
        "type": "object"
      },
      "V2FixtureFormations": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "$ref": "#/components/schemas/V2TeamFormation"
          },
          "home": {
            "$ref": "#/components/schemas/V2TeamFormation"
          },
          "status": {
            "enum": [
              "confirmed",
              "projected",
              "historical",
              "unavailable"
            ],
            "type": "string"
          }
        },
        "required": [
          "status",
          "home",
          "away"
        ],
        "type": "object"
      },
      "V2FixtureHeatmapViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureIncident": {
        "additionalProperties": false,
        "properties": {
          "addedTime": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "assist": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "class": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "minute": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "reason": {
            "type": [
              "string",
              "null"
            ]
          },
          "rescinded": {
            "type": "boolean"
          },
          "score": {
            "$ref": "#/components/schemas/V2FixtureScore"
          },
          "side": {
            "type": [
              "string",
              "null"
            ]
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "type",
          "class",
          "side",
          "minute",
          "addedTime",
          "player",
          "assist",
          "reason",
          "rescinded",
          "score"
        ],
        "type": "object"
      },
      "V2FixtureLineup": {
        "additionalProperties": false,
        "properties": {
          "players": {
            "items": {
              "$ref": "#/components/schemas/V2FixtureLineupPlayer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "status": {
            "type": "string"
          }
        },
        "required": [
          "status",
          "players"
        ],
        "type": "object"
      },
      "V2FixtureLineupAnalysisOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/SorareInsideLineups"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureLineupPlayer": {
        "additionalProperties": false,
        "properties": {
          "confidence": {
            "type": [
              "string",
              "null"
            ]
          },
          "jerseyNumber": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "position": {
            "type": "string"
          },
          "side": {
            "type": "string"
          },
          "starter": {
            "type": "boolean"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "player",
          "team",
          "side",
          "position",
          "starter",
          "jerseyNumber",
          "confidence"
        ],
        "type": "object"
      },
      "V2FixtureLineupPreviewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/SorareInsideLineups"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureLineupStatusOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureLiveScore": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fixtureId": {
            "type": "string"
          },
          "home": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "status": {
            "type": "string"
          }
        },
        "required": [
          "fixtureId",
          "home",
          "away",
          "status"
        ],
        "type": "object"
      },
      "V2FixtureMonth": {
        "additionalProperties": false,
        "properties": {
          "days": {
            "items": {
              "$ref": "#/components/schemas/V2FixtureMonthDay"
            },
            "type": "array"
          },
          "fixtureCount": {
            "format": "int64",
            "type": "integer"
          },
          "month": {
            "type": "string"
          },
          "timeZone": {
            "type": "string"
          }
        },
        "required": [
          "month",
          "timeZone",
          "fixtureCount",
          "days"
        ],
        "type": "object"
      },
      "V2FixtureMonthCompetition": {
        "additionalProperties": false,
        "properties": {
          "fixtures": {
            "items": {
              "$ref": "#/components/schemas/V2FixtureMonthFixture"
            },
            "type": "array"
          },
          "flag": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "flag",
          "fixtures"
        ],
        "type": "object"
      },
      "V2FixtureMonthDay": {
        "additionalProperties": false,
        "properties": {
          "date": {
            "type": "string"
          },
          "fixtureCount": {
            "format": "int64",
            "type": "integer"
          },
          "liveCount": {
            "format": "int64",
            "type": "integer"
          },
          "other": {
            "items": {
              "$ref": "#/components/schemas/V2FixtureMonthCompetition"
            },
            "type": "array"
          },
          "popular": {
            "items": {
              "$ref": "#/components/schemas/V2FixtureMonthCompetition"
            },
            "type": "array"
          }
        },
        "required": [
          "date",
          "fixtureCount",
          "liveCount",
          "popular",
          "other"
        ],
        "type": "object"
      },
      "V2FixtureMonthFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2FixtureMonthTeam"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2FixtureMonthTeam"
          },
          "id": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": "string"
          },
          "score": {
            "$ref": "#/components/schemas/V2FixtureMonthScore"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "slug",
          "kickoffAt",
          "status",
          "homeTeam",
          "awayTeam",
          "score"
        ],
        "type": "object"
      },
      "V2FixtureMonthScore": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "home": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "home",
          "away"
        ],
        "type": "object"
      },
      "V2FixtureMonthTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortName"
        ],
        "type": "object"
      },
      "V2FixtureOddsComparisonViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "availableBookmakers": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "markets": {
            "items": {
              "$ref": "#/components/schemas/ComparisonMarket"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "availableBookmakers",
          "markets"
        ],
        "type": "object"
      },
      "V2FixturePlayerHeatmap": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "points": {
            "items": {
              "$ref": "#/components/schemas/V2HeatmapPoint"
            },
            "type": "array"
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "side": {
            "enum": [
              "home",
              "away"
            ],
            "type": "string"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "id",
          "player",
          "team",
          "side",
          "season",
          "points"
        ],
        "type": "object"
      },
      "V2FixturePlayerStatistic": {
        "additionalProperties": false,
        "properties": {
          "assists": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "expectedAssists": {
            "type": [
              "string",
              "null"
            ]
          },
          "expectedGoals": {
            "type": [
              "string",
              "null"
            ]
          },
          "goals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "passesAttempted": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "passesCompleted": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "position": {
            "type": "string"
          },
          "rating": {
            "type": [
              "string",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "saves": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOffTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOnTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tackles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "yellowCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "player",
          "team",
          "position",
          "minutesPlayed",
          "rating",
          "goals",
          "assists",
          "expectedGoals",
          "expectedAssists",
          "shotsOnTarget",
          "shotsOffTarget",
          "passesAttempted",
          "passesCompleted",
          "tackles",
          "saves",
          "yellowCards",
          "redCards"
        ],
        "type": "object"
      },
      "V2FixturePlayersViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixturePredictedFormationsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixturePredictedLineupsOKBody": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "additionalProperties": {},
            "type": "object"
          },
          "homeTeam": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "awayTeam",
          "homeTeam"
        ],
        "type": "object"
      },
      "V2FixtureScore": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayNormal": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "home": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeNormal": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "home",
          "away",
          "homeNormal",
          "awayNormal"
        ],
        "type": "object"
      },
      "V2FixtureShot": {
        "additionalProperties": false,
        "properties": {
          "additionalInformation": {
            "$ref": "#/components/schemas/V2ShotAdditionalInfo"
          },
          "angle": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "blocked": {
            "type": "boolean"
          },
          "blockedByPlayer": {
            "$ref": "#/components/schemas/V2NullableResourceReference"
          },
          "bodyPart": {
            "type": [
              "string",
              "null"
            ]
          },
          "distance": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "expectedGoals": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "goal": {
            "type": "boolean"
          },
          "headed": {
            "type": "boolean"
          },
          "id": {
            "type": "string"
          },
          "minute": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "onTarget": {
            "type": "boolean"
          },
          "outsidePenaltyArea": {
            "type": "boolean"
          },
          "penalty": {
            "type": "boolean"
          },
          "player": {
            "$ref": "#/components/schemas/V2NullableResourceReference"
          },
          "result": {
            "type": "string"
          },
          "side": {
            "enum": [
              "home",
              "away"
            ],
            "type": "string"
          },
          "situation": {
            "type": [
              "string",
              "null"
            ]
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "x": {
            "format": "double",
            "type": "number"
          },
          "y": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "id",
          "player",
          "team",
          "side",
          "x",
          "y",
          "minute",
          "result",
          "expectedGoals",
          "situation",
          "bodyPart",
          "blocked",
          "blockedByPlayer",
          "distance",
          "angle",
          "goal",
          "onTarget",
          "headed",
          "outsidePenaltyArea",
          "penalty",
          "additionalInformation"
        ],
        "type": "object"
      },
      "V2FixtureShotMap": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": [
              "string",
              "null"
            ]
          },
          "lastUpdatedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "nonPenaltyExpectedGoals": {
            "$ref": "#/components/schemas/V2ShotExpectedGoalsSummary"
          },
          "shots": {
            "items": {
              "$ref": "#/components/schemas/V2FixtureShot"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "lastUpdatedAt",
          "shots",
          "nonPenaltyExpectedGoals"
        ],
        "type": "object"
      },
      "V2FixtureShotsModelOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureShotsModelOddsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureStatistic": {
        "additionalProperties": false,
        "properties": {
          "awayTotal": {
            "type": [
              "string",
              "null"
            ]
          },
          "awayValue": {
            "type": "string"
          },
          "group": {
            "type": "string"
          },
          "homeTotal": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeValue": {
            "type": "string"
          },
          "key": {
            "type": "string"
          },
          "period": {
            "type": "string"
          }
        },
        "required": [
          "period",
          "group",
          "key",
          "homeValue",
          "awayValue",
          "homeTotal",
          "awayTotal"
        ],
        "type": "object"
      },
      "V2FixtureTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortName"
        ],
        "type": "object"
      },
      "V2FixtureTeamLineupViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureTeamOddsOKBody": {
        "additionalProperties": false,
        "properties": {
          "bookmakerSummary": {
            "additionalProperties": {
              "format": "int64",
              "type": "integer"
            },
            "type": "object"
          },
          "data": {
            "additionalProperties": {},
            "type": "object"
          },
          "eventId": {
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2FixtureUnavailability": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "items": {
              "$ref": "#/components/schemas/V2PlayerUnavailability"
            },
            "type": "array"
          },
          "home": {
            "items": {
              "$ref": "#/components/schemas/V2PlayerUnavailability"
            },
            "type": "array"
          }
        },
        "required": [
          "home",
          "away"
        ],
        "type": "object"
      },
      "V2FixtureVenue": {
        "additionalProperties": false,
        "properties": {
          "cityName": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "cityName"
        ],
        "type": "object"
      },
      "V2HeatmapPoint": {
        "additionalProperties": false,
        "properties": {
          "count": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "x": {
            "format": "double",
            "type": "number"
          },
          "y": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "x",
          "y",
          "count"
        ],
        "type": "object"
      },
      "V2HeroRow": {
        "additionalProperties": false,
        "properties": {
          "addedTotal": {
            "format": "double",
            "type": "number"
          },
          "avgMinutes": {
            "format": "double",
            "type": "number"
          },
          "baseAvg": {
            "format": "double",
            "type": "number"
          },
          "baseTotal": {
            "format": "double",
            "type": "number"
          },
          "boostPct": {
            "format": "double",
            "type": "number"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerInternalId": {
            "format": "int64",
            "type": "integer"
          },
          "playerName": {
            "type": "string"
          },
          "playerSlug": {
            "type": "string"
          },
          "rank": {
            "format": "int64",
            "type": "integer"
          },
          "starts": {
            "format": "double",
            "type": "number"
          },
          "subbedOff": {
            "format": "double",
            "type": "number"
          },
          "teamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "withSubAvg": {
            "format": "double",
            "type": "number"
          },
          "withSubTotal": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "rank",
          "playerId",
          "playerInternalId",
          "playerName",
          "playerSlug",
          "teamId",
          "teamName",
          "teamSlug",
          "starts",
          "subbedOff",
          "avgMinutes",
          "baseTotal",
          "addedTotal",
          "withSubTotal",
          "baseAvg",
          "withSubAvg",
          "boostPct"
        ],
        "type": "object"
      },
      "V2HeroesResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/V2HeroRow"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "generatedAt": {
            "format": "int64",
            "type": "integer"
          },
          "leagues": {
            "items": {
              "$ref": "#/components/schemas/LeagueOption"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          },
          "stat": {
            "type": "string"
          },
          "thresholds": {
            "$ref": "#/components/schemas/V2HeroesThresholds"
          },
          "window": {
            "type": "string"
          }
        },
        "required": [
          "generatedAt",
          "stat",
          "window",
          "thresholds",
          "leagues",
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2HeroesThresholds": {
        "additionalProperties": false,
        "properties": {
          "minBaseTotal": {
            "format": "double",
            "type": "number"
          },
          "minStarts": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "minStarts",
          "minBaseTotal"
        ],
        "type": "object"
      },
      "V2HomeToday": {
        "additionalProperties": false,
        "properties": {
          "competitions": {
            "format": "int64",
            "type": "integer"
          },
          "date": {
            "type": "string"
          },
          "fixtures": {
            "items": {
              "$ref": "#/components/schemas/V2HomeTodayFixture"
            },
            "type": "array"
          },
          "goals": {
            "format": "int64",
            "type": "integer"
          },
          "lineupsConfirmed": {
            "format": "int64",
            "type": "integer"
          },
          "live": {
            "format": "int64",
            "type": "integer"
          },
          "nextKickoff": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "timeZone": {
            "type": "string"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "date",
          "timeZone",
          "total",
          "live",
          "nextKickoff",
          "competitions",
          "goals",
          "lineupsConfirmed",
          "fixtures"
        ],
        "type": "object"
      },
      "V2HomeTodayFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2HomeTodayTeam"
          },
          "competition": {
            "type": "string"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2HomeTodayTeam"
          },
          "id": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": "string"
          },
          "score": {
            "$ref": "#/components/schemas/V2FixtureMonthScore"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "slug",
          "kickoffAt",
          "status",
          "competition",
          "homeTeam",
          "awayTeam",
          "score"
        ],
        "type": "object"
      },
      "V2HomeTodayTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "primaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "secondaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortName",
          "primaryColor",
          "secondaryColor"
        ],
        "type": "object"
      },
      "V2HundredClubBookmaker": {
        "additionalProperties": false,
        "properties": {
          "bookmakerId": {
            "format": "int64",
            "type": "integer"
          },
          "bookmakerName": {
            "type": "string"
          },
          "oddsValue": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "bookmakerId",
          "bookmakerName",
          "oddsValue"
        ],
        "type": "object"
      },
      "V2HundredClubResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/V2HundredClubRow"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2HundredClubRow": {
        "additionalProperties": false,
        "properties": {
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/V2HundredClubBookmaker"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "marketName": {
            "type": "string"
          },
          "oddsType": {
            "type": "string"
          },
          "opponentTeamName": {
            "type": "string"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerName": {
            "type": "string"
          },
          "statType": {
            "type": "string"
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamName": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "playerId",
          "playerName",
          "statType",
          "marketName",
          "line",
          "oddsType",
          "eventId",
          "eventTimestamp",
          "teamId",
          "teamName",
          "opponentTeamName",
          "bookmakers"
        ],
        "type": "object"
      },
      "V2ImageOKBody": {
        "additionalProperties": false,
        "properties": {
          "url": {
            "type": "string"
          }
        },
        "required": [
          "url"
        ],
        "type": "object"
      },
      "V2ImagesOKBody": {
        "additionalProperties": false,
        "properties": {
          "url": {
            "type": "string"
          }
        },
        "required": [
          "url"
        ],
        "type": "object"
      },
      "V2IngestImageInputBody": {
        "additionalProperties": false,
        "properties": {
          "id": {},
          "type": {
            "type": "string"
          }
        },
        "required": [
          "type",
          "id"
        ],
        "type": "object"
      },
      "V2InvalidField": {
        "additionalProperties": false,
        "properties": {
          "code": {
            "type": "string"
          },
          "field": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "field",
          "code",
          "message"
        ],
        "type": "object"
      },
      "V2LineupsResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/LineupPlayer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "events": {
            "items": {
              "$ref": "#/components/schemas/LineupEvent"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          },
          "positionChangeCount": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "data",
          "events",
          "positionChangeCount",
          "pagination"
        ],
        "type": "object"
      },
      "V2Links": {
        "additionalProperties": false,
        "properties": {
          "next": {
            "type": [
              "string",
              "null"
            ]
          },
          "previous": {
            "type": [
              "string",
              "null"
            ]
          },
          "self": {
            "type": "string"
          }
        },
        "required": [
          "self",
          "next",
          "previous"
        ],
        "type": "object"
      },
      "V2Manager": {
        "additionalProperties": false,
        "properties": {
          "country": {
            "$ref": "#/components/schemas/V2CountryReference"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortName",
          "country"
        ],
        "type": "object"
      },
      "V2MatchdayFixturesViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {},
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2MatchupEdgesOKBody": {
        "additionalProperties": false,
        "properties": {
          "debug": {
            "additionalProperties": {},
            "type": "object"
          },
          "groups": {
            "items": {
              "$ref": "#/components/schemas/MatchupInsight"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "insights": {
            "items": {
              "$ref": "#/components/schemas/MatchupInsight"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "lookback": {
            "format": "int64",
            "type": "integer"
          },
          "opponent": {},
          "positions": {
            "items": {
              "$ref": "#/components/schemas/MatchupInsight"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "team": {}
        },
        "required": [
          "groups",
          "insights",
          "lookback",
          "opponent",
          "positions",
          "team"
        ],
        "type": "object"
      },
      "V2ModelsOKBody": {
        "additionalProperties": false,
        "properties": {
          "count": {
            "format": "int64",
            "type": "integer"
          },
          "data": {
            "items": {
              "$ref": "#/components/schemas/Models"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "count",
          "data"
        ],
        "type": "object"
      },
      "V2NextFixtureByTeam": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2NextFixtureTeam"
          },
          "competition": {
            "type": "string"
          },
          "fixtureId": {
            "type": "string"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2NextFixtureTeam"
          },
          "isHome": {
            "type": "boolean"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "teamId": {
            "type": "string"
          }
        },
        "required": [
          "teamId",
          "fixtureId",
          "slug",
          "kickoffAt",
          "competition",
          "homeTeam",
          "awayTeam",
          "isHome"
        ],
        "type": "object"
      },
      "V2NextFixtureTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortName"
        ],
        "type": "object"
      },
      "V2NullableResourceReference": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2NullableSideValues": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "home": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "home",
          "away"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2OddsMovement": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "current": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "line": {
            "type": [
              "string",
              "null"
            ]
          },
          "market": {
            "type": "string"
          },
          "period": {
            "type": "string"
          },
          "player": {
            "type": [
              "string",
              "null"
            ]
          },
          "previous": {
            "type": [
              "string",
              "null"
            ]
          },
          "recordedAt": {
            "format": "date-time",
            "type": "string"
          },
          "selection": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "bookmaker",
          "market",
          "period",
          "line",
          "selection",
          "player",
          "previous",
          "current",
          "recordedAt"
        ],
        "type": "object"
      },
      "V2OddsSnapshot": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "id": {
            "type": "string"
          },
          "markets": {},
          "status": {
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "bookmaker",
          "status",
          "markets",
          "updatedAt"
        ],
        "type": "object"
      },
      "V2OpponentRankingsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/OpponentRanking"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2OutlierBestOdds": {
        "additionalProperties": false,
        "properties": {
          "highest": {
            "$ref": "#/components/schemas/V2OutlierBookmaker"
          },
          "lowest": {
            "$ref": "#/components/schemas/V2OutlierBookmaker"
          }
        },
        "required": [
          "highest",
          "lowest"
        ],
        "type": "object"
      },
      "V2OutlierBookmaker": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "type": "string"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "identifier": {
            "type": "string"
          },
          "odd": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "id",
          "bookmaker",
          "odd",
          "identifier"
        ],
        "type": "object"
      },
      "V2OutlierRow": {
        "additionalProperties": false,
        "properties": {
          "avg_odd": {
            "format": "double",
            "type": "number"
          },
          "away_team_id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayteam": {
            "type": "string"
          },
          "best_odds": {
            "$ref": "#/components/schemas/V2OutlierBestOdds"
          },
          "bookmaker_count": {
            "format": "int64",
            "type": "integer"
          },
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/V2OutlierBookmaker"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "date": {
            "type": "string"
          },
          "home_team_id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hometeam": {
            "type": "string"
          },
          "league_name": {
            "type": "string"
          },
          "line": {
            "type": "string"
          },
          "market": {
            "type": "string"
          },
          "market_id": {
            "type": "string"
          },
          "market_original": {
            "type": "string"
          },
          "market_type": {
            "type": "string"
          },
          "max_odd": {
            "format": "double",
            "type": "number"
          },
          "odds_discrepancy": {
            "format": "double",
            "type": "number"
          },
          "player_id": {
            "format": "int64",
            "type": "integer"
          },
          "playername": {
            "type": "string"
          }
        },
        "required": [
          "market_id",
          "player_id",
          "playername",
          "home_team_id",
          "away_team_id",
          "hometeam",
          "awayteam",
          "date",
          "league_name",
          "market",
          "market_original",
          "market_type",
          "line",
          "max_odd",
          "avg_odd",
          "odds_discrepancy",
          "best_odds",
          "bookmakers",
          "bookmaker_count"
        ],
        "type": "object"
      },
      "V2OutliersResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/V2OutlierRow"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2Page": {
        "additionalProperties": false,
        "properties": {
          "hasNext": {
            "type": "boolean"
          },
          "hasPrevious": {
            "type": "boolean"
          },
          "limit": {
            "format": "int64",
            "type": "integer"
          },
          "nextCursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "previousCursor": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "limit",
          "nextCursor",
          "previousCursor",
          "hasNext",
          "hasPrevious"
        ],
        "type": "object"
      },
      "V2PauseSubscriptionInputBody": {
        "additionalProperties": false,
        "properties": {
          "duration": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "duration"
        ],
        "type": "object"
      },
      "V2PauseSubscriptionOKBody": {
        "additionalProperties": false,
        "properties": {
          "resumesAt": {
            "type": "string"
          },
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "resumesAt",
          "success"
        ],
        "type": "object"
      },
      "V2PhaseCapabilities": {
        "additionalProperties": false,
        "properties": {
          "aiAnalysis": {
            "type": "boolean"
          },
          "heatmaps": {
            "type": "boolean"
          },
          "lineupProjections": {
            "type": "boolean"
          },
          "shotmaps": {
            "type": "boolean"
          }
        },
        "required": [
          "lineupProjections",
          "aiAnalysis",
          "heatmaps",
          "shotmaps"
        ],
        "type": "object"
      },
      "V2PhaseOverviewViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhaseRoundFixturesOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhaseSeasonBettingTrendsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhaseSeasonFixturesOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhaseSeasonPlayerRankingsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhaseSeasonStandingsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhaseSeasonsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/Seasons"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhaseUpcomingFixtureViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/UpcomingFixture"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhaseUpcomingFixturesOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/UpcomingMultiFixture"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PhasesOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {
              "items": {
                "$ref": "#/components/schemas/ConsolidatedTournament"
              },
              "type": [
                "array",
                "null"
              ]
            },
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2Player": {
        "additionalProperties": false,
        "properties": {
          "country": {
            "$ref": "#/components/schemas/V2CountryReference"
          },
          "gender": {
            "type": [
              "string",
              "null"
            ]
          },
          "heightCm": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "jerseyNumber": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "preferredFoot": {
            "type": [
              "string",
              "null"
            ]
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortName",
          "position",
          "jerseyNumber",
          "heightCm",
          "preferredFoot",
          "gender",
          "country",
          "team"
        ],
        "type": "object"
      },
      "V2PlayerCardRanking": {
        "additionalProperties": false,
        "properties": {
          "appearances": {
            "format": "int64",
            "type": "integer"
          },
          "bookedPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "cardsPer90": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "cardsPerAppearance": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "foulsPerAppearance": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "minutesPerAppearance": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "nation": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": "integer"
          },
          "tacklesPerAppearance": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "yellowCards": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "player",
          "team",
          "nation",
          "position",
          "appearances",
          "yellowCards",
          "redCards",
          "cardsPerAppearance",
          "cardsPer90",
          "bookedPercentage",
          "foulsPerAppearance",
          "tacklesPerAppearance",
          "minutesPerAppearance"
        ],
        "type": "object"
      },
      "V2PlayerCardStatisticsOKBody": {
        "additionalProperties": false,
        "properties": {
          "games": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "gamesAnalyzed": {
            "format": "int64",
            "type": "integer"
          },
          "playerCards": {
            "additionalProperties": {},
            "type": "object"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerPercentage": {},
          "teamCards": {
            "additionalProperties": {},
            "type": "object"
          },
          "teamId": {}
        },
        "required": [
          "games",
          "gamesAnalyzed",
          "playerCards",
          "playerId",
          "playerPercentage",
          "teamCards",
          "teamId"
        ],
        "type": "object"
      },
      "V2PlayerCompetitionSeason": {
        "additionalProperties": false,
        "properties": {
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "hasAggregateStatistics": {
            "type": "boolean"
          },
          "national": {
            "type": "boolean"
          },
          "played": {
            "type": "boolean"
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "competition",
          "season",
          "national",
          "hasAggregateStatistics",
          "played"
        ],
        "type": "object"
      },
      "V2PlayerDirectoryOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PlayerExpectedCardsOKBody": {
        "additionalProperties": false,
        "properties": {
          "bestLine": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bookmaker": {
            "type": [
              "string",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "expectedMins": {
            "format": "int64",
            "type": "integer"
          },
          "expectedPlayerCards": {
            "format": "double",
            "type": "number"
          },
          "gamesAnalyzed": {
            "format": "int64",
            "type": "integer"
          },
          "over05": {},
          "over15": {},
          "playerAvgCards": {
            "format": "double",
            "type": "number"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerPercentage": {
            "format": "double",
            "type": "number"
          },
          "playerPercentageXmins": {
            "format": "double",
            "type": "number"
          },
          "teamAvgCards": {
            "format": "double",
            "type": "number"
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamLambda": {},
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "yellowCardOdds": {
            "items": {
              "$ref": "#/components/schemas/PlayerPrice"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "bestLine",
          "bestOverOdds",
          "bestUnderOdds",
          "bookmaker",
          "eventId",
          "expectedMins",
          "expectedPlayerCards",
          "gamesAnalyzed",
          "over05",
          "over15",
          "playerAvgCards",
          "playerId",
          "playerPercentage",
          "playerPercentageXmins",
          "teamAvgCards",
          "teamId",
          "teamLambda",
          "teamName",
          "yellowCardOdds"
        ],
        "type": "object"
      },
      "V2PlayerFavorite": {
        "additionalProperties": false,
        "properties": {
          "internalId": {
            "type": "string"
          },
          "notes": {
            "type": [
              "string",
              "null"
            ]
          },
          "player": {
            "$ref": "#/components/schemas/V2Player"
          },
          "upcomingFixture": {
            "$ref": "#/components/schemas/V2FavoriteUpcomingFixture"
          }
        },
        "required": [
          "player",
          "internalId",
          "notes",
          "upcomingFixture"
        ],
        "type": "object"
      },
      "V2PlayerFixtureStatistics": {
        "additionalProperties": false,
        "properties": {
          "accurateCross": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accuratePass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "aerialWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChanceCreated": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blockedScoringAttempt": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "challengeLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "dispossessed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "expectedAssists": {
            "type": [
              "string",
              "null"
            ]
          },
          "expectedGoals": {
            "type": [
              "string",
              "null"
            ]
          },
          "expectedGoalsAndAssists": {
            "type": [
              "string",
              "null"
            ]
          },
          "foulInvolvements": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fouls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalAssist": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "interceptionWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "keyPass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "npExpectedGoals": {
            "type": [
              "string",
              "null"
            ]
          },
          "npExpectedGoalsPer90": {
            "type": [
              "string",
              "null"
            ]
          },
          "onTargetScoringAttempt": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "possessionLostCtrl": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "rating": {
            "type": [
              "string",
              "null"
            ]
          },
          "redCard": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "saves": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "scoredOrAssisted": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotOffTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "substitutedIn": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "substitutedOut": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalClearance": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalCross": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalOffside": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalPass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalTackle": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "touches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "wasFouled": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "wonContest": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowCard": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "minutesPlayed",
          "rating",
          "goals",
          "goalAssist",
          "expectedGoals",
          "expectedAssists",
          "npExpectedGoals",
          "npExpectedGoalsPer90",
          "onTargetScoringAttempt",
          "shotOffTarget",
          "blockedScoringAttempt",
          "bigChanceCreated",
          "keyPass",
          "totalPass",
          "accuratePass",
          "totalLongBalls",
          "accurateLongBalls",
          "totalCross",
          "accurateCross",
          "touches",
          "possessionLostCtrl",
          "dispossessed",
          "wonContest",
          "aerialWon",
          "duelWon",
          "duelLost",
          "challengeLost",
          "totalTackle",
          "totalClearance",
          "interceptionWon",
          "saves",
          "fouls",
          "wasFouled",
          "totalOffside",
          "yellowCard",
          "redCard",
          "substitutedIn",
          "substitutedOut",
          "shots",
          "scoredOrAssisted",
          "foulInvolvements",
          "expectedGoalsAndAssists"
        ],
        "type": "object"
      },
      "V2PlayerFormationHeatmap": {
        "additionalProperties": false,
        "properties": {
          "formation": {
            "type": "string"
          },
          "matches": {
            "format": "int64",
            "type": "integer"
          },
          "points": {
            "items": {
              "$ref": "#/components/schemas/V2HeatmapPoint"
            },
            "type": "array"
          }
        },
        "required": [
          "formation",
          "matches",
          "points"
        ],
        "type": "object"
      },
      "V2PlayerFormationHeatmapViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {}
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PlayerFormationOptionsViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PlayerHeatmapViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/HeatmapData"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PlayerNextFixtureOddsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "meta": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "meta"
        ],
        "type": "object"
      },
      "V2PlayerPercentile": {
        "additionalProperties": false,
        "properties": {
          "delta": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "key": {
            "type": "string"
          },
          "rank": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "key",
          "rank",
          "delta"
        ],
        "type": "object"
      },
      "V2PlayerPercentilesViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "bucket": {},
          "dataSource": {
            "type": "string"
          },
          "deltas": {
            "additionalProperties": {},
            "type": "object"
          },
          "minMinutes": {
            "format": "int64",
            "type": "integer"
          },
          "poolSize": {
            "format": "int64",
            "type": "integer"
          },
          "position": {
            "type": "string"
          },
          "ranks": {
            "additionalProperties": {},
            "type": "object"
          },
          "reason": {
            "type": "string"
          },
          "window": {
            "type": "string"
          }
        },
        "required": [
          "bucket",
          "dataSource",
          "minMinutes",
          "position",
          "window"
        ],
        "type": "object"
      },
      "V2PlayerPerformanceOutputBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/PlayerPerformanceRow"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PlayerPositionsViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "mostPlayed": {},
          "positions": {},
          "totalMatches": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "mostPlayed",
          "positions",
          "totalMatches"
        ],
        "type": "object"
      },
      "V2PlayerPropMarket": {
        "additionalProperties": false,
        "properties": {
          "line": {
            "format": "double",
            "type": "number"
          },
          "market": {
            "type": "string"
          },
          "over": {
            "$ref": "#/components/schemas/V2PlayerPropPrices"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "under": {
            "$ref": "#/components/schemas/V2PlayerPropPrices"
          }
        },
        "required": [
          "player",
          "market",
          "line",
          "over",
          "under"
        ],
        "type": "object"
      },
      "V2PlayerPropPrices": {
        "additionalProperties": false,
        "properties": {
          "best": {
            "$ref": "#/components/schemas/V2BookmakerPrice"
          },
          "prices": {
            "items": {
              "$ref": "#/components/schemas/V2BookmakerPrice"
            },
            "type": "array"
          }
        },
        "required": [
          "best",
          "prices"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2PlayerPropScreenerActivity": {
        "additionalProperties": false,
        "properties": {
          "inPredictedLineup": {
            "type": "boolean"
          },
          "lastGameWithTeam": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "startedLastGame": {
            "type": "boolean"
          }
        },
        "required": [
          "startedLastGame",
          "lastGameWithTeam",
          "inPredictedLineup"
        ],
        "type": "object"
      },
      "V2PlayerPropScreenerBookmaker": {
        "additionalProperties": false,
        "properties": {
          "bookmakerId": {
            "format": "int64",
            "type": "integer"
          },
          "bookmakerName": {
            "type": "string"
          },
          "oddsValue": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "bookmakerId",
          "bookmakerName",
          "oddsValue"
        ],
        "type": "object"
      },
      "V2PlayerPropScreenerHitRates": {
        "additionalProperties": false,
        "properties": {
          "L10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L10WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L15WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L5": {
            "format": "int64",
            "type": "integer"
          },
          "L5WithSub": {
            "format": "int64",
            "type": "integer"
          },
          "allL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "allL10WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "allL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "allL15WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "allL5": {
            "format": "int64",
            "type": "integer"
          },
          "allL5WithSub": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "L5",
          "L10",
          "L15",
          "L5WithSub",
          "L10WithSub",
          "L15WithSub",
          "allL5",
          "allL10",
          "allL15",
          "allL5WithSub",
          "allL10WithSub",
          "allL15WithSub"
        ],
        "type": "object"
      },
      "V2PlayerPropScreenerPagination": {
        "additionalProperties": false,
        "properties": {
          "currentPage": {
            "format": "int64",
            "type": "integer"
          },
          "hasNextPage": {
            "type": "boolean"
          },
          "hasPreviousPage": {
            "type": "boolean"
          },
          "totalCount": {
            "format": "int64",
            "type": "integer"
          },
          "totalPages": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "currentPage",
          "totalPages",
          "totalCount",
          "hasNextPage",
          "hasPreviousPage"
        ],
        "type": "object"
      },
      "V2PlayerPropScreenerRanking": {
        "additionalProperties": false,
        "properties": {
          "rank": {
            "format": "int64",
            "type": "integer"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "rank",
          "total"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2PlayerPropScreenerRecentGame": {
        "additionalProperties": false,
        "properties": {
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "double",
            "type": "number"
          },
          "hasSuperSub": {
            "type": "boolean"
          },
          "isHit": {
            "type": "boolean"
          },
          "isHome": {
            "type": "boolean"
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentName": {
            "type": "string"
          },
          "opponentSlug": {
            "type": "string"
          },
          "originalStatValue": {
            "format": "double",
            "type": "number"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "statValue": {
            "format": "double",
            "type": "number"
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "eventId",
          "statValue",
          "minutesPlayed",
          "position",
          "opponentName",
          "opponentSlug",
          "opponentId",
          "isHome",
          "isHit",
          "tournamentId",
          "uniqueTournamentId",
          "eventTimestamp",
          "hasSuperSub"
        ],
        "type": "object"
      },
      "V2PlayerPropScreenerResult": {
        "additionalProperties": false,
        "properties": {
          "activityInfo": {
            "$ref": "#/components/schemas/V2PlayerPropScreenerActivity"
          },
          "allBookmakerOdds": {
            "items": {
              "$ref": "#/components/schemas/V2PlayerPropScreenerBookmaker"
            },
            "type": "array"
          },
          "average": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "awayTeamName": {
            "type": "string"
          },
          "awayTeamSlug": {
            "type": "string"
          },
          "bookmakerId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bookmakerName": {
            "type": [
              "string",
              "null"
            ]
          },
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/V2PlayerPropScreenerBookmaker"
            },
            "type": "array"
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateAllL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL10WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL15WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateAllL5": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateAllL5WithSub": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateL10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL10WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL15": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL15WithSub": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitRateL5": {
            "format": "int64",
            "type": "integer"
          },
          "hitRateL5WithSub": {
            "format": "int64",
            "type": "integer"
          },
          "hitRates": {
            "$ref": "#/components/schemas/V2PlayerPropScreenerHitRates"
          },
          "homeTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "homeTeamName": {
            "type": "string"
          },
          "homeTeamSlug": {
            "type": "string"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "leagueAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "marketName": {
            "type": "string"
          },
          "oddsType": {
            "enum": [
              "over",
              "under"
            ],
            "type": "string"
          },
          "oddsValue": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "opponentAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "opponentRank": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "opponentRanking": {
            "$ref": "#/components/schemas/V2PlayerPropScreenerRanking"
          },
          "opponentTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentTeamName": {
            "type": "string"
          },
          "opponentTeamSlug": {
            "type": "string"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerName": {
            "type": "string"
          },
          "recentGames": {
            "items": {
              "$ref": "#/components/schemas/V2PlayerPropScreenerRecentGame"
            },
            "type": "array"
          },
          "recentlyPlayed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "statType": {
            "enum": [
              "goals",
              "goalAssist",
              "scoredOrAssisted",
              "shots",
              "onTargetScoringAttempt",
              "totalTackle",
              "totalPass",
              "accuratePass",
              "totalCross",
              "accurateCross",
              "fouls",
              "wasFouled",
              "foulInvolvements",
              "yellowCard",
              "saves",
              "dispossessed",
              "totalOffside",
              "interceptionWon",
              "possessionLostCtrl",
              "aerialWon",
              "duelWon",
              "keyPass",
              "bigChanceCreated",
              "expectedGoals",
              "expectedAssists",
              "xGxA"
            ],
            "type": "string"
          },
          "teamId": {
            "format": "int64",
            "type": "integer"
          },
          "teamName": {
            "type": "string"
          },
          "teamPrimaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSecondaryColor": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamSlug": {
            "type": "string"
          },
          "total": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "totalRanks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "playerId",
          "playerName",
          "statType",
          "marketName",
          "line",
          "oddsType",
          "eventId",
          "eventTimestamp",
          "teamId",
          "teamName",
          "teamSlug",
          "teamPrimaryColor",
          "teamSecondaryColor",
          "homeTeamId",
          "homeTeamName",
          "homeTeamSlug",
          "awayTeamId",
          "awayTeamName",
          "awayTeamSlug",
          "opponentTeamId",
          "opponentTeamName",
          "opponentTeamSlug",
          "opponentRank",
          "totalRanks",
          "opponentRanking",
          "leagueAverage",
          "opponentAverage",
          "bookmakers",
          "allBookmakerOdds",
          "bookmakerId",
          "bookmakerName",
          "oddsValue",
          "hitRateL5",
          "hitRateL10",
          "hitRateL15",
          "hitRateL5WithSub",
          "hitRateL10WithSub",
          "hitRateL15WithSub",
          "hitRateAllL5",
          "hitRateAllL10",
          "hitRateAllL15",
          "hitRateAllL5WithSub",
          "hitRateAllL10WithSub",
          "hitRateAllL15WithSub",
          "hitRates",
          "activityInfo",
          "recentlyPlayed",
          "total",
          "average",
          "recentGames"
        ],
        "type": "object"
      },
      "V2PlayerRankingStats": {
        "additionalProperties": false,
        "properties": {
          "accurateLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accuratePasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "aerialDuelsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChancesCreated": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blockedShots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "clearances": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "dispossessed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelsLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "expectedAssists": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "expectedGoals": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "foulsCommitted": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "foulsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "interceptions": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "keyPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "nonPenaltyExpectedGoals": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "offsides": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "saves": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOnTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tackles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalCrosses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalShots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "touches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "minutesPlayed",
          "totalPasses",
          "accuratePasses",
          "totalLongBalls",
          "accurateLongBalls",
          "totalCrosses",
          "bigChancesCreated",
          "keyPasses",
          "totalShots",
          "shotsOnTarget",
          "expectedGoals",
          "nonPenaltyExpectedGoals",
          "tackles",
          "clearances",
          "interceptions",
          "aerialDuelsWon",
          "blockedShots",
          "duelsWon",
          "duelsLost",
          "dispossessed",
          "foulsCommitted",
          "foulsWon",
          "saves",
          "offsides",
          "touches",
          "expectedAssists",
          "yellowCards",
          "redCards"
        ],
        "type": "object"
      },
      "V2PlayerSeasonAppearances": {
        "additionalProperties": false,
        "properties": {
          "matches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matchesStarted": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "ratedMatches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "rating": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "teamOfTheWeek": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalRating": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "matches",
          "matchesStarted",
          "minutesPlayed",
          "rating",
          "totalRating",
          "ratedMatches",
          "teamOfTheWeek"
        ],
        "type": "object"
      },
      "V2PlayerSeasonAttack": {
        "additionalProperties": false,
        "properties": {
          "bigChancesMissed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "expectedGoals": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "freeKickGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "freeKicks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalConversionPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "goals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsAndAssists": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsFromInsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsFromOutsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "headedGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "hitWoodwork": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "leftFootGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesHitPost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesMissed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesOnTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesTaken": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltyConversion": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "penaltyGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "rightFootGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "scoringFrequency": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "setPieceConversion": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "shotsFromInsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsFromOutsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsFromSetPiece": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOffTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotsOnTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalShots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "goals",
          "goalsAndAssists",
          "expectedGoals",
          "totalShots",
          "shotsOnTarget",
          "shotsOffTarget",
          "shotsFromInsideTheBox",
          "shotsFromOutsideTheBox",
          "goalsFromInsideTheBox",
          "goalsFromOutsideTheBox",
          "headedGoals",
          "leftFootGoals",
          "rightFootGoals",
          "bigChancesMissed",
          "hitWoodwork",
          "goalConversionPercentage",
          "scoringFrequency",
          "penaltiesTaken",
          "penaltyGoals",
          "penaltiesWon",
          "penaltiesOnTarget",
          "penaltiesMissed",
          "penaltiesHitPost",
          "penaltyConversion",
          "shotsFromSetPiece",
          "setPieceConversion",
          "freeKicks",
          "freeKickGoals"
        ],
        "type": "object"
      },
      "V2PlayerSeasonDefending": {
        "additionalProperties": false,
        "properties": {
          "ballRecoveries": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blockedShots": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "clearances": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "dribbledPast": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "errorsLeadingToGoal": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "errorsLeadingToShot": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "interceptions": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "ownGoals": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesConceded": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "possessionWonAttackingThird": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tackles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tacklesWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tacklesWonPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "tackles",
          "tacklesWon",
          "tacklesWonPercentage",
          "interceptions",
          "clearances",
          "ballRecoveries",
          "blockedShots",
          "possessionWonAttackingThird",
          "dribbledPast",
          "errorsLeadingToGoal",
          "errorsLeadingToShot",
          "ownGoals",
          "penaltiesConceded"
        ],
        "type": "object"
      },
      "V2PlayerSeasonDiscipline": {
        "additionalProperties": false,
        "properties": {
          "directRedCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "fouls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "offsides": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "wasFouled": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowRedCards": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "fouls",
          "wasFouled",
          "offsides",
          "yellowCards",
          "yellowRedCards",
          "directRedCards",
          "redCards"
        ],
        "type": "object"
      },
      "V2PlayerSeasonGoalkeeping": {
        "additionalProperties": false,
        "properties": {
          "cleanSheets": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "crossesNotClaimed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalKicks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsConceded": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsConcededInsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goalsConcededOutsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "highClaims": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesFaced": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "penaltiesSaved": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "punches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "runsOut": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "savedShotsFromInsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "savedShotsFromOutsideTheBox": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "saves": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "savesCaught": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "savesParried": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "successfulRunsOut": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "saves",
          "savesCaught",
          "savesParried",
          "savedShotsFromInsideTheBox",
          "savedShotsFromOutsideTheBox",
          "goalsConceded",
          "goalsConcededInsideTheBox",
          "goalsConcededOutsideTheBox",
          "cleanSheets",
          "penaltiesFaced",
          "penaltiesSaved",
          "punches",
          "highClaims",
          "crossesNotClaimed",
          "runsOut",
          "successfulRunsOut",
          "goalKicks"
        ],
        "type": "object"
      },
      "V2PlayerSeasonHeatmap": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "points": {
            "items": {
              "$ref": "#/components/schemas/V2HeatmapPoint"
            },
            "type": "array"
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "id",
          "player",
          "season",
          "points"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2PlayerSeasonPassing": {
        "additionalProperties": false,
        "properties": {
          "accurateChippedPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateCrosses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateCrossesPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "accurateFinalThirdPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateLongBallsPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "accurateOppositionHalfPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateOwnHalfPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accuratePasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accuratePassesPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "assists": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "bigChancesCreated": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "expectedAssists": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "inaccuratePasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "keyPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "passesToAssist": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotAssists": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalChippedPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalCrosses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalOppositionHalfPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalOwnHalfPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalPasses": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "assists",
          "expectedAssists",
          "bigChancesCreated",
          "keyPasses",
          "passesToAssist",
          "shotAssists",
          "totalPasses",
          "accuratePasses",
          "inaccuratePasses",
          "accuratePassesPercentage",
          "totalOwnHalfPasses",
          "accurateOwnHalfPasses",
          "totalOppositionHalfPasses",
          "accurateOppositionHalfPasses",
          "accurateFinalThirdPasses",
          "totalLongBalls",
          "accurateLongBalls",
          "accurateLongBallsPercentage",
          "totalCrosses",
          "accurateCrosses",
          "accurateCrossesPercentage",
          "totalChippedPasses",
          "accurateChippedPasses"
        ],
        "type": "object"
      },
      "V2PlayerSeasonPercentiles": {
        "additionalProperties": false,
        "properties": {
          "bucket": {
            "type": [
              "string",
              "null"
            ]
          },
          "minMinutes": {
            "format": "int64",
            "type": "integer"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "poolSize": {
            "format": "int64",
            "type": "integer"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "reason": {
            "enum": [
              "playerNotInPool",
              "poolTooSmall",
              "noPosition"
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "source": {
            "enum": [
              "aggregate",
              "fixtures",
              "fixturesRolling"
            ],
            "type": "string"
          },
          "statistics": {
            "items": {
              "$ref": "#/components/schemas/V2PlayerPercentile"
            },
            "type": "array"
          },
          "window": {
            "enum": [
              "season",
              "rolling365d"
            ],
            "type": "string"
          }
        },
        "required": [
          "player",
          "season",
          "window",
          "position",
          "bucket",
          "poolSize",
          "minMinutes",
          "source",
          "reason",
          "statistics"
        ],
        "type": "object"
      },
      "V2PlayerSeasonPosition": {
        "additionalProperties": false,
        "properties": {
          "code": {
            "type": "string"
          },
          "starts": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "code",
          "starts"
        ],
        "type": "object"
      },
      "V2PlayerSeasonPositions": {
        "additionalProperties": false,
        "properties": {
          "mostPlayed": {
            "type": [
              "string",
              "null"
            ]
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "positions": {
            "items": {
              "$ref": "#/components/schemas/V2PlayerSeasonPosition"
            },
            "type": "array"
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "totalStarts": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "player",
          "season",
          "positions",
          "mostPlayed",
          "totalStarts"
        ],
        "type": "object"
      },
      "V2PlayerSeasonPossession": {
        "additionalProperties": false,
        "properties": {
          "aerialDuelsLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "aerialDuelsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "aerialDuelsWonPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "dispossessed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelsLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "groundDuelsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "groundDuelsWonPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "possessionLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "successfulDribbles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "successfulDribblesPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "totalDribbles": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalDuelsWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalDuelsWonPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "touches": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "touches",
          "totalDribbles",
          "successfulDribbles",
          "successfulDribblesPercentage",
          "dispossessed",
          "possessionLost",
          "totalDuelsWon",
          "totalDuelsWonPercentage",
          "groundDuelsWon",
          "groundDuelsWonPercentage",
          "aerialDuelsWon",
          "aerialDuelsWonPercentage",
          "duelsLost",
          "aerialDuelsLost"
        ],
        "type": "object"
      },
      "V2PlayerSeasonRanking": {
        "additionalProperties": false,
        "properties": {
          "appearances": {
            "format": "int64",
            "type": "integer"
          },
          "assists": {
            "format": "int64",
            "type": "integer"
          },
          "goals": {
            "format": "int64",
            "type": "integer"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "rank": {
            "format": "int64",
            "type": "integer"
          },
          "statistics": {
            "$ref": "#/components/schemas/V2PlayerRankingStats"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "rank",
          "player",
          "team",
          "position",
          "appearances",
          "goals",
          "assists",
          "statistics"
        ],
        "type": "object"
      },
      "V2PlayerSeasonStatistics": {
        "additionalProperties": false,
        "properties": {
          "appearances": {
            "$ref": "#/components/schemas/V2PlayerSeasonAppearances"
          },
          "attack": {
            "$ref": "#/components/schemas/V2PlayerSeasonAttack"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "defending": {
            "$ref": "#/components/schemas/V2PlayerSeasonDefending"
          },
          "discipline": {
            "$ref": "#/components/schemas/V2PlayerSeasonDiscipline"
          },
          "goalkeeping": {
            "$ref": "#/components/schemas/V2PlayerSeasonGoalkeeping"
          },
          "passing": {
            "$ref": "#/components/schemas/V2PlayerSeasonPassing"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "possession": {
            "$ref": "#/components/schemas/V2PlayerSeasonPossession"
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "source": {
            "enum": [
              "aggregate",
              "fixtures"
            ],
            "type": "string"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "player",
          "season",
          "competition",
          "team",
          "source",
          "appearances",
          "attack",
          "passing",
          "possession",
          "defending",
          "discipline",
          "goalkeeping"
        ],
        "type": "object"
      },
      "V2PlayerStatisticsViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {},
          "dataSource": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "dataSource"
        ],
        "type": "object"
      },
      "V2PlayerTrendsResponse": {
        "additionalProperties": false,
        "properties": {
          "availableLines": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "data": {
            "items": {
              "$ref": "#/components/schemas/TrendResult"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination",
          "availableLines"
        ],
        "type": "object"
      },
      "V2PlayerUnavailability": {
        "additionalProperties": false,
        "properties": {
          "competition": {
            "$ref": "#/components/schemas/V2NullableResourceReference"
          },
          "endsAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "expectedReturn": {
            "$ref": "#/components/schemas/V2ExpectedReturnDate"
          },
          "id": {
            "type": "string"
          },
          "kind": {
            "enum": [
              "injury",
              "suspension"
            ],
            "type": "string"
          },
          "matchesRemaining": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "reason": {
            "type": [
              "string",
              "null"
            ]
          },
          "sourceLastUpdatedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "startedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "enum": [
              "out",
              "dayToDay"
            ],
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "kind",
          "player",
          "position",
          "reason",
          "status",
          "expectedReturn",
          "matchesRemaining",
          "competition",
          "startedAt",
          "endsAt",
          "sourceLastUpdatedAt"
        ],
        "type": "object"
      },
      "V2Preview": {
        "additionalProperties": false,
        "properties": {
          "author": {
            "$ref": "#/components/schemas/V2PreviewAuthor"
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "publishedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          },
          "tags": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tips": {
            "items": {
              "$ref": "#/components/schemas/V2PreviewTip"
            },
            "type": "array"
          },
          "title": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "slug",
          "title",
          "description",
          "author",
          "publishedAt",
          "tags",
          "tips"
        ],
        "type": "object"
      },
      "V2PreviewAuthor": {
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string"
          },
          "role": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "role"
        ],
        "type": "object"
      },
      "V2PreviewTip": {
        "additionalProperties": false,
        "properties": {
          "bettingTips": {
            "type": "string"
          },
          "content": {
            "type": "string"
          },
          "displayOrder": {
            "format": "int64",
            "type": "integer"
          },
          "fixture": {
            "$ref": "#/components/schemas/V2PreviewTipFixture"
          },
          "id": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "fixture",
          "content",
          "bettingTips",
          "displayOrder"
        ],
        "type": "object"
      },
      "V2PreviewTipCompetition": {
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "slug"
        ],
        "type": "object"
      },
      "V2PreviewTipFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "competition": {
            "$ref": "#/components/schemas/V2PreviewTipCompetition"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "id": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "slug",
          "kickoffAt",
          "competition",
          "homeTeam",
          "awayTeam"
        ],
        "type": "object"
      },
      "V2Problem": {
        "additionalProperties": false,
        "properties": {
          "code": {
            "type": "string"
          },
          "detail": {
            "type": "string"
          },
          "errors": {
            "items": {
              "$ref": "#/components/schemas/V2InvalidField"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "instance": {
            "type": "string"
          },
          "requestId": {
            "type": "string"
          },
          "status": {
            "format": "int64",
            "type": "integer"
          },
          "title": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "type",
          "title",
          "status",
          "detail",
          "instance",
          "code",
          "requestId"
        ],
        "type": "object"
      },
      "V2PropCandidate": {
        "additionalProperties": false,
        "properties": {
          "activity": {
            "$ref": "#/components/schemas/V2PropCandidateActivity"
          },
          "fixture": {
            "$ref": "#/components/schemas/V2PropCandidateFixture"
          },
          "form": {
            "$ref": "#/components/schemas/V2PropCandidateForm"
          },
          "market": {
            "$ref": "#/components/schemas/V2PropCandidateMarket"
          },
          "odds": {
            "items": {
              "$ref": "#/components/schemas/V2PropCandidateOddsLine"
            },
            "type": "array"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "recentAppearances": {
            "items": {
              "$ref": "#/components/schemas/V2PropCandidateAppearance"
            },
            "type": "array"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "trend": {
            "$ref": "#/components/schemas/V2PropCandidateTrend"
          }
        },
        "required": [
          "player",
          "team",
          "position",
          "fixture",
          "market",
          "form",
          "trend",
          "activity",
          "recentAppearances",
          "odds"
        ],
        "type": "object"
      },
      "V2PropCandidateActivity": {
        "additionalProperties": false,
        "properties": {
          "gamesSinceLastAppearance": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "inPredictedLineup": {
            "type": "boolean"
          },
          "startedLastGame": {
            "type": "boolean"
          }
        },
        "required": [
          "startedLastGame",
          "gamesSinceLastAppearance",
          "inPredictedLineup"
        ],
        "type": "object"
      },
      "V2PropCandidateAppearance": {
        "additionalProperties": false,
        "properties": {
          "fixture": {
            "$ref": "#/components/schemas/V2PropCandidateAppearanceFixture"
          },
          "minutesPlayed": {
            "format": "int64",
            "type": "integer"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "replacedPlayer": {
            "$ref": "#/components/schemas/V2PropCandidateReplacement"
          },
          "value": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "fixture",
          "value",
          "minutesPlayed",
          "position",
          "replacedPlayer"
        ],
        "type": "object"
      },
      "V2PropCandidateAppearanceFixture": {
        "additionalProperties": false,
        "properties": {
          "awayScore": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "homeScore": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "id": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "kickoffAt",
          "homeTeam",
          "awayTeam",
          "homeScore",
          "awayScore"
        ],
        "type": "object"
      },
      "V2PropCandidateFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "id": {
            "type": "string"
          },
          "isHome": {
            "type": "boolean"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "opponent": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "phase": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "kickoffAt",
          "competition",
          "phase",
          "homeTeam",
          "awayTeam",
          "isHome",
          "opponent"
        ],
        "type": "object"
      },
      "V2PropCandidateForm": {
        "additionalProperties": false,
        "properties": {
          "average": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "games": {
            "format": "int64",
            "type": "integer"
          },
          "hitRate": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "hits": {
            "format": "int64",
            "type": "integer"
          },
          "perNinety": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "total": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "games",
          "total",
          "average",
          "perNinety",
          "hits",
          "hitRate"
        ],
        "type": "object"
      },
      "V2PropCandidateMarket": {
        "additionalProperties": false,
        "properties": {
          "key": {
            "type": "string"
          },
          "threshold": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "key",
          "threshold"
        ],
        "type": "object"
      },
      "V2PropCandidateOddsLine": {
        "additionalProperties": false,
        "properties": {
          "line": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "quotes": {
            "items": {
              "$ref": "#/components/schemas/V2PropCandidateQuote"
            },
            "type": "array"
          }
        },
        "required": [
          "line",
          "quotes"
        ],
        "type": "object"
      },
      "V2PropCandidateQuote": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "type": "string"
          },
          "bookmakerId": {
            "type": [
              "string",
              "null"
            ]
          },
          "over": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "under": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "bookmaker",
          "bookmakerId",
          "over",
          "under"
        ],
        "type": "object"
      },
      "V2PropCandidateReplacement": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "value": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "value"
        ],
        "type": "object"
      },
      "V2PropCandidateTrend": {
        "additionalProperties": false,
        "properties": {
          "changePercent": {
            "format": "double",
            "type": "number"
          },
          "direction": {
            "type": "string"
          },
          "gamesUsed": {
            "format": "int64",
            "type": "integer"
          },
          "olderAverage": {
            "format": "double",
            "type": "number"
          },
          "olderGames": {
            "format": "int64",
            "type": "integer"
          },
          "recentAverage": {
            "format": "double",
            "type": "number"
          },
          "recentGames": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "recentAverage",
          "olderAverage",
          "changePercent",
          "direction",
          "recentGames",
          "olderGames",
          "gamesUsed"
        ],
        "type": "object"
      },
      "V2PropHitRates": {
        "additionalProperties": false,
        "properties": {
          "last10": {
            "format": "int64",
            "type": "integer"
          },
          "last15": {
            "format": "int64",
            "type": "integer"
          },
          "last5": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "last5",
          "last10",
          "last15"
        ],
        "type": "object"
      },
      "V2PropOpponent": {
        "additionalProperties": false,
        "properties": {
          "rank": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "totalRanks": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "team",
          "rank",
          "totalRanks"
        ],
        "type": "object"
      },
      "V2PropPlayerDataInputBody": {
        "additionalProperties": false,
        "properties": {
          "players": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "selectedLeagueOnly": {
            "type": "boolean"
          },
          "statTypes": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "players",
          "statTypes",
          "selectedLeagueOnly",
          "tournamentId"
        ],
        "type": "object"
      },
      "V2PropPlayerDataOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PropPlayerStatisticsBatchInputBody": {
        "additionalProperties": false,
        "properties": {
          "gamesCount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "requests": {
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "requests",
          "gamesCount"
        ],
        "type": "object"
      },
      "V2PropPlayerStatisticsBatchOKBody": {
        "additionalProperties": false,
        "properties": {
          "activityInfo": {
            "additionalProperties": {
              "$ref": "#/components/schemas/ActivityInfo"
            },
            "type": "object"
          },
          "cached": {
            "format": "int64",
            "type": "integer"
          },
          "fetched": {
            "format": "int64",
            "type": "integer"
          },
          "stats": {
            "additionalProperties": {
              "$ref": "#/components/schemas/PlayerStatResult"
            },
            "type": "object"
          }
        },
        "required": [
          "activityInfo",
          "cached",
          "fetched",
          "stats"
        ],
        "type": "object"
      },
      "V2PropPrice": {
        "additionalProperties": false,
        "properties": {
          "bookmakerId": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "price": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "bookmakerId",
          "name",
          "price"
        ],
        "type": "object"
      },
      "V2PropSelection": {
        "additionalProperties": false,
        "properties": {
          "fixture": {
            "$ref": "#/components/schemas/V2WatchlistFixture"
          },
          "hitRates": {
            "$ref": "#/components/schemas/V2PropHitRates"
          },
          "id": {
            "type": "string"
          },
          "leagueAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "marketName": {
            "type": "string"
          },
          "opponent": {
            "$ref": "#/components/schemas/V2PropOpponent"
          },
          "opponentAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "player": {
            "$ref": "#/components/schemas/V2WatchlistPlayer"
          },
          "prices": {
            "items": {
              "$ref": "#/components/schemas/V2PropPrice"
            },
            "type": "array"
          },
          "recentlyPlayed": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "side": {
            "type": "string"
          },
          "statType": {
            "type": "string"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "updatedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "player",
          "statType",
          "marketName",
          "line",
          "side",
          "team",
          "opponent",
          "fixture",
          "hitRates",
          "prices",
          "leagueAverage",
          "opponentAverage",
          "recentlyPlayed",
          "updatedAt"
        ],
        "type": "object"
      },
      "V2PropWatchlistEntry": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "prop": {
            "$ref": "#/components/schemas/V2PropSelection"
          },
          "savedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "savedAt",
          "prop"
        ],
        "type": "object"
      },
      "V2PropWatchlistViewGetOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2PropWatchlistViewPostInputBody": {
        "additionalProperties": false,
        "properties": {
          "screenerId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "screenerId"
        ],
        "type": "object"
      },
      "V2RecentMatchesOKBody": {
        "additionalProperties": false,
        "properties": {
          "matches": {
            "items": {
              "$ref": "#/components/schemas/RecentMatch"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "matches"
        ],
        "type": "object"
      },
      "V2Referee": {
        "additionalProperties": false,
        "properties": {
          "country": {
            "$ref": "#/components/schemas/V2CountryReference"
          },
          "firstLeagueDebutTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "country",
          "firstLeagueDebutTimestamp"
        ],
        "type": "object"
      },
      "V2RefereeCardRanking": {
        "additionalProperties": false,
        "properties": {
          "bothTeamsOver15CardsPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "cardsPerGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "firstHalfCardsPerGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "foulsPerGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "games": {
            "format": "int64",
            "type": "integer"
          },
          "nextFixture": {
            "$ref": "#/components/schemas/V2RefereeNextFixture"
          },
          "over35CardsPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "over45CardsPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "over55CardsPercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "penalties": {
            "format": "int64",
            "type": "integer"
          },
          "penaltiesPerGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": "integer"
          },
          "redsPerGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "referee": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "secondHalfCardsPerGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "yellowCards": {
            "format": "int64",
            "type": "integer"
          },
          "yellowsPerGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "referee",
          "countrySlug",
          "games",
          "yellowCards",
          "redCards",
          "penalties",
          "cardsPerGame",
          "yellowsPerGame",
          "redsPerGame",
          "penaltiesPerGame",
          "foulsPerGame",
          "over35CardsPercentage",
          "over45CardsPercentage",
          "over55CardsPercentage",
          "bothTeamsOver15CardsPercentage",
          "firstHalfCardsPerGame",
          "secondHalfCardsPerGame",
          "nextFixture"
        ],
        "type": "object"
      },
      "V2RefereeCompetitionStatistic": {
        "additionalProperties": false,
        "properties": {
          "appearances": {
            "format": "int64",
            "type": "integer"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "penalties": {
            "format": "int64",
            "type": "integer"
          },
          "redCards": {
            "format": "int64",
            "type": "integer"
          },
          "yellowCards": {
            "format": "int64",
            "type": "integer"
          },
          "yellowRedCards": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "competition",
          "appearances",
          "yellowCards",
          "redCards",
          "yellowRedCards",
          "penalties"
        ],
        "type": "object"
      },
      "V2RefereeIncidentsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2RefereeNextFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2FixtureTeam"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2FixtureTeam"
          },
          "id": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "kickoffAt",
          "competition",
          "homeTeam",
          "awayTeam"
        ],
        "type": "object"
      },
      "V2RefereeRow": {
        "additionalProperties": false,
        "properties": {
          "avgCardsPerGame": {
            "format": "double",
            "type": "number"
          },
          "avgFirstHalfCards": {
            "format": "double",
            "type": "number"
          },
          "avgFoulsPerGame": {
            "format": "double",
            "type": "number"
          },
          "avgRedCardsPerGame": {
            "format": "double",
            "type": "number"
          },
          "avgSecondHalfCards": {
            "format": "double",
            "type": "number"
          },
          "avgYellowCardsPerGame": {
            "format": "double",
            "type": "number"
          },
          "bothTeamsCardPct": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bothTeamsO15CardPct": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "games": {
            "format": "int64",
            "type": "integer"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "nextGameAwayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "nextGameAwayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameAwayTeamShortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameAwayTeamSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameHomeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "nextGameHomeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameHomeTeamShortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameHomeTeamSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "nextGameInternalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "nextGameSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "nextGameTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "o35CardsPct": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "o45CardsPct": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "o55CardsPct": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "redCards": {
            "format": "int64",
            "type": "integer"
          },
          "slug": {
            "type": "string"
          },
          "totalPenalties": {
            "format": "int64",
            "type": "integer"
          },
          "yellowCards": {
            "format": "int64",
            "type": "integer"
          },
          "yellowRedCards": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "games",
          "yellowCards",
          "redCards",
          "yellowRedCards",
          "totalPenalties",
          "avgCardsPerGame",
          "avgYellowCardsPerGame",
          "avgRedCardsPerGame",
          "avgFoulsPerGame",
          "avgFirstHalfCards",
          "avgSecondHalfCards",
          "o35CardsPct",
          "o45CardsPct",
          "o55CardsPct",
          "bothTeamsCardPct",
          "bothTeamsO15CardPct",
          "nextGameId",
          "nextGameInternalId",
          "nextGameSlug",
          "nextGameTimestamp",
          "nextGameHomeTeamId",
          "nextGameHomeTeamName",
          "nextGameHomeTeamShortName",
          "nextGameHomeTeamSlug",
          "nextGameAwayTeamId",
          "nextGameAwayTeamName",
          "nextGameAwayTeamShortName",
          "nextGameAwayTeamSlug"
        ],
        "type": "object"
      },
      "V2RefereeStatisticsViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2RefereesResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/V2RefereeRow"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2Region": {
        "additionalProperties": false,
        "properties": {
          "alpha2": {
            "type": [
              "string",
              "null"
            ]
          },
          "flag": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "flag",
          "alpha2"
        ],
        "type": "object"
      },
      "V2RemoveValueBetLineupAlertInputBody": {
        "additionalProperties": false,
        "properties": {
          "matchId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "playerId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "playerId",
          "matchId"
        ],
        "type": "object"
      },
      "V2RemoveValueBetLineupAlertOKBody": {
        "additionalProperties": false,
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "V2ResourceReference": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "V2ResumeSubscriptionOKBody": {
        "additionalProperties": false,
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "V2SavedPick": {
        "additionalProperties": false,
        "properties": {
          "key": {
            "type": "string"
          },
          "league": {
            "$ref": "#/components/schemas/V2SavedPickLeague"
          },
          "market": {
            "$ref": "#/components/schemas/V2SavedPickMarket"
          },
          "match": {
            "$ref": "#/components/schemas/V2SavedPickMatch"
          },
          "meta": {
            "$ref": "#/components/schemas/V2SavedPickMeta"
          },
          "subject": {
            "$ref": "#/components/schemas/V2SavedPickSubject"
          },
          "team": {
            "$ref": "#/components/schemas/V2SavedPickTeam"
          }
        },
        "required": [
          "key",
          "subject",
          "team",
          "match",
          "market",
          "league",
          "meta"
        ],
        "type": "object"
      },
      "V2SavedPickLeague": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "V2SavedPickMarket": {
        "additionalProperties": false,
        "properties": {
          "direction": {
            "type": "string"
          },
          "label": {
            "type": [
              "string",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "type",
          "label",
          "line",
          "direction"
        ],
        "type": "object"
      },
      "V2SavedPickMatch": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2SavedPickTeam"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2SavedPickTeam"
          },
          "id": {
            "type": "string"
          },
          "internalId": {
            "type": [
              "string",
              "null"
            ]
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "internalId",
          "kickoffAt",
          "homeTeam",
          "awayTeam"
        ],
        "type": "object"
      },
      "V2SavedPickMeta": {
        "additionalProperties": false,
        "properties": {
          "bookmakerAtSave": {
            "type": [
              "string",
              "null"
            ]
          },
          "oddsAtSave": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "savedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "sourceTools": {
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "savedAt",
          "sourceTools",
          "oddsAtSave",
          "bookmakerAtSave"
        ],
        "type": "object"
      },
      "V2SavedPickReference": {
        "additionalProperties": false,
        "properties": {
          "key": {
            "type": "string"
          }
        },
        "required": [
          "key"
        ],
        "type": "object"
      },
      "V2SavedPickSubject": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "type",
          "id",
          "name"
        ],
        "type": "object"
      },
      "V2SavedPickTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "V2SavedScreenerFiltersOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/SavedFilterView"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2ScreenerPlayersOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2SearchDiscovery": {
        "additionalProperties": false,
        "properties": {
          "competitions": {
            "items": {
              "$ref": "#/components/schemas/V2SearchDiscoveryCompetition"
            },
            "type": "array"
          },
          "fixtures": {
            "items": {
              "$ref": "#/components/schemas/V2HomeTodayFixture"
            },
            "type": "array"
          },
          "players": {
            "items": {
              "$ref": "#/components/schemas/V2SearchDiscoveryPlayer"
            },
            "type": "array"
          },
          "teams": {
            "items": {
              "$ref": "#/components/schemas/V2SearchDiscoveryTeam"
            },
            "type": "array"
          }
        },
        "required": [
          "fixtures",
          "players",
          "teams",
          "competitions"
        ],
        "type": "object"
      },
      "V2SearchDiscoveryCompetition": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "regionSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "regionSlug"
        ],
        "type": "object"
      },
      "V2SearchDiscoveryPlayer": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          },
          "teamId": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "position",
          "teamId"
        ],
        "type": "object"
      },
      "V2SearchDiscoveryTeam": {
        "additionalProperties": false,
        "properties": {
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortName",
          "countrySlug"
        ],
        "type": "object"
      },
      "V2SearchOKBody": {
        "additionalProperties": false,
        "properties": {
          "fixtures": {
            "items": {
              "$ref": "#/components/schemas/SearchFixture"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "players": {
            "items": {
              "$ref": "#/components/schemas/SearchPlayer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "teams": {
            "items": {
              "$ref": "#/components/schemas/SearchTeam"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "tournaments": {
            "items": {
              "$ref": "#/components/schemas/SearchTournament"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "fixtures",
          "players",
          "teams",
          "tournaments"
        ],
        "type": "object"
      },
      "V2Season": {
        "additionalProperties": false,
        "properties": {
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "year": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "year",
          "competition"
        ],
        "type": "object"
      },
      "V2SeasonStandings": {
        "additionalProperties": false,
        "properties": {
          "groups": {
            "items": {
              "$ref": "#/components/schemas/V2StandingGroup"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "groups"
        ],
        "type": "object"
      },
      "V2ShotAdditionalInfo": {
        "additionalProperties": false,
        "properties": {
          "draw": {
            "$ref": "#/components/schemas/V2ShotDraw"
          },
          "expectedGoalsOnTarget": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "goalMouthLocation": {
            "type": [
              "string",
              "null"
            ]
          },
          "goalZone": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "goalMouthLocation",
          "goalZone",
          "expectedGoalsOnTarget",
          "draw"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2ShotCoordinate": {
        "additionalProperties": false,
        "properties": {
          "x": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "y": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "x",
          "y"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2ShotDraw": {
        "additionalProperties": false,
        "properties": {
          "block": {
            "$ref": "#/components/schemas/V2ShotCoordinate"
          },
          "end": {
            "$ref": "#/components/schemas/V2ShotCoordinate"
          },
          "start": {
            "$ref": "#/components/schemas/V2ShotCoordinate"
          }
        },
        "required": [
          "start",
          "end",
          "block"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2ShotExpectedGoalsSummary": {
        "additionalProperties": false,
        "properties": {
          "calculated": {
            "$ref": "#/components/schemas/V2SideValues"
          },
          "stored": {
            "$ref": "#/components/schemas/V2NullableSideValues"
          }
        },
        "required": [
          "calculated",
          "stored"
        ],
        "type": "object"
      },
      "V2SideValues": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "home": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "home",
          "away"
        ],
        "type": "object"
      },
      "V2StandingEntry": {
        "additionalProperties": false,
        "properties": {
          "draws": {
            "format": "int64",
            "type": "integer"
          },
          "goalDifference": {
            "format": "int64",
            "type": "integer"
          },
          "goalsAgainst": {
            "format": "int64",
            "type": "integer"
          },
          "goalsFor": {
            "format": "int64",
            "type": "integer"
          },
          "losses": {
            "format": "int64",
            "type": "integer"
          },
          "played": {
            "format": "int64",
            "type": "integer"
          },
          "points": {
            "format": "int64",
            "type": "integer"
          },
          "position": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "team": {
            "$ref": "#/components/schemas/V2FixtureTeam"
          },
          "wins": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "position",
          "team",
          "played",
          "wins",
          "draws",
          "losses",
          "goalsFor",
          "goalsAgainst",
          "goalDifference",
          "points"
        ],
        "type": "object"
      },
      "V2StandingGroup": {
        "additionalProperties": false,
        "properties": {
          "phase": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "rows": {
            "items": {
              "$ref": "#/components/schemas/V2StandingEntry"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "phase",
          "rows"
        ],
        "type": "object"
      },
      "V2SubscriptionOKBody": {
        "additionalProperties": false,
        "properties": {
          "subscription": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "subscription"
        ],
        "type": "object"
      },
      "V2SuggestionsInputBody": {
        "additionalProperties": false,
        "properties": {
          "messages": {
            "items": {
              "$ref": "#/components/schemas/UiMessage"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pageContext": {}
        },
        "required": [
          "messages",
          "pageContext"
        ],
        "type": "object"
      },
      "V2SuggestionsOKBody": {
        "additionalProperties": false,
        "properties": {
          "suggestions": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "suggestions"
        ],
        "type": "object"
      },
      "V2Team": {
        "additionalProperties": false,
        "properties": {
          "colors": {
            "$ref": "#/components/schemas/V2TeamColors"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "country": {
            "$ref": "#/components/schemas/V2CountryReference"
          },
          "gender": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "national": {
            "type": "boolean"
          },
          "phase": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          },
          "userCount": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "shortName",
          "userCount",
          "gender",
          "national",
          "country",
          "colors",
          "phase",
          "competition"
        ],
        "type": "object"
      },
      "V2TeamBettingHistory": {
        "additionalProperties": false,
        "properties": {
          "brackets": {
            "items": {
              "$ref": "#/components/schemas/V2BettingOddsBracket"
            },
            "type": "array"
          },
          "filters": {
            "$ref": "#/components/schemas/V2BettingHistoryFilters"
          },
          "matches": {
            "items": {
              "$ref": "#/components/schemas/V2BettingHistoryMatch"
            },
            "type": "array"
          },
          "summary": {
            "$ref": "#/components/schemas/V2BettingHistorySummary"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "team",
          "filters",
          "matches",
          "brackets",
          "summary"
        ],
        "type": "object"
      },
      "V2TeamCardMatchTotals": {
        "additionalProperties": false,
        "properties": {
          "cardsPerGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "over35Percentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "over45Percentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "cardsPerGame",
          "over35Percentage",
          "over45Percentage"
        ],
        "type": "object"
      },
      "V2TeamCardRanking": {
        "additionalProperties": false,
        "properties": {
          "cardsAgainst": {
            "$ref": "#/components/schemas/V2TeamCardSide"
          },
          "cardsFor": {
            "$ref": "#/components/schemas/V2TeamCardSide"
          },
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "games": {
            "format": "int64",
            "type": "integer"
          },
          "match": {
            "$ref": "#/components/schemas/V2TeamCardMatchTotals"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "team",
          "countrySlug",
          "games",
          "cardsFor",
          "cardsAgainst",
          "match"
        ],
        "type": "object"
      },
      "V2TeamCardSide": {
        "additionalProperties": false,
        "properties": {
          "over15Percentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "perGame": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "perGame",
          "over15Percentage"
        ],
        "type": "object"
      },
      "V2TeamColors": {
        "additionalProperties": false,
        "properties": {
          "primary": {
            "type": [
              "string",
              "null"
            ]
          },
          "secondary": {
            "type": [
              "string",
              "null"
            ]
          },
          "text": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "primary",
          "secondary",
          "text"
        ],
        "type": "object"
      },
      "V2TeamComparisonOKBody": {
        "additionalProperties": false,
        "properties": {
          "additionalStats": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "awayTeam": {
            "additionalProperties": {},
            "type": "object"
          },
          "data": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "homeTeam": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "additionalStats",
          "awayTeam",
          "data",
          "homeTeam"
        ],
        "type": "object"
      },
      "V2TeamCompetitionSeason": {
        "additionalProperties": false,
        "properties": {
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "finished": {
            "format": "int64",
            "type": "integer"
          },
          "fixtures": {
            "format": "int64",
            "type": "integer"
          },
          "hasPlayerStatistics": {
            "type": "boolean"
          },
          "national": {
            "type": "boolean"
          },
          "season": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "competition",
          "season",
          "national",
          "fixtures",
          "finished",
          "hasPlayerStatistics"
        ],
        "type": "object"
      },
      "V2TeamFavorite": {
        "additionalProperties": false,
        "properties": {
          "internalId": {
            "type": "string"
          },
          "notes": {
            "type": [
              "string",
              "null"
            ]
          },
          "team": {
            "$ref": "#/components/schemas/V2Team"
          },
          "upcomingFixture": {
            "$ref": "#/components/schemas/V2FavoriteUpcomingFixture"
          }
        },
        "required": [
          "team",
          "internalId",
          "notes",
          "upcomingFixture"
        ],
        "type": "object"
      },
      "V2TeamFixtureStatisticsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamFixturesViewOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamFixturesWithOddsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamFormation": {
        "additionalProperties": false,
        "properties": {
          "formation": {
            "type": "string"
          },
          "fromFixture": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "source": {
            "enum": [
              "confirmed",
              "projected",
              "historical"
            ],
            "type": "string"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          }
        },
        "required": [
          "team",
          "formation",
          "source",
          "fromFixture"
        ],
        "type": [
          "object",
          "null"
        ]
      },
      "V2TeamGLMResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/GlmMatch"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2TeamLastFormationOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/V2TeamLastFormationOKBodyDataStruct"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamLastFormationOKBodyDataStruct": {
        "additionalProperties": false,
        "properties": {
          "awayScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "formation": {
            "type": [
              "string",
              "null"
            ]
          },
          "homeScoreCurrent": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "timeStartTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tournamentName": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "formation",
          "eventId",
          "timeStartTimestamp",
          "homeTeamId",
          "awayTeamId",
          "homeTeamName",
          "awayTeamName",
          "homeScoreCurrent",
          "awayScoreCurrent",
          "tournamentName"
        ],
        "type": "object"
      },
      "V2TeamLastGame": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2TeamLastGameTeam"
          },
          "awayTeamLineup": {
            "items": {
              "$ref": "#/components/schemas/V2TeamLastGamePlayer"
            },
            "type": "array"
          },
          "events": {
            "$ref": "#/components/schemas/V2TeamLastGameEvent"
          },
          "formations": {
            "additionalProperties": {
              "$ref": "#/components/schemas/V2TeamLastGameFormation"
            },
            "type": "object"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2TeamLastGameTeam"
          },
          "homeTeamLineup": {
            "items": {
              "$ref": "#/components/schemas/V2TeamLastGamePlayer"
            },
            "type": "array"
          }
        },
        "required": [
          "events",
          "homeTeam",
          "awayTeam",
          "homeTeamLineup",
          "awayTeamLineup",
          "formations"
        ],
        "type": "object"
      },
      "V2TeamLastGameEvent": {
        "additionalProperties": false,
        "properties": {
          "awayScoreCurrent": {
            "format": "int64",
            "type": "integer"
          },
          "awayTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "homeScoreCurrent": {
            "format": "int64",
            "type": "integer"
          },
          "homeTeamId": {
            "format": "int64",
            "type": "integer"
          },
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "slug": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "timeStartTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "tournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "tournamentName": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "uniqueTournamentName": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "homeTeamId",
          "awayTeamId",
          "timeStartTimestamp",
          "homeScoreCurrent",
          "awayScoreCurrent",
          "status",
          "tournamentId",
          "tournamentName",
          "uniqueTournamentId",
          "uniqueTournamentName"
        ],
        "type": "object"
      },
      "V2TeamLastGameFormation": {
        "additionalProperties": false,
        "properties": {
          "formation": {
            "type": "string"
          },
          "teamName": {
            "type": "string"
          }
        },
        "required": [
          "formation",
          "teamName"
        ],
        "type": "object"
      },
      "V2TeamLastGameHeatmapPoint": {
        "additionalProperties": false,
        "properties": {
          "x": {
            "format": "double",
            "type": "number"
          },
          "y": {
            "format": "double",
            "type": "number"
          }
        },
        "required": [
          "x",
          "y"
        ],
        "type": "object"
      },
      "V2TeamLastGamePlayer": {
        "additionalProperties": false,
        "properties": {
          "accurateCross": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accurateLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "accuratePass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "aerialWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "assists": {
            "format": "int64",
            "type": "integer"
          },
          "bigChanceCreated": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "blockedScoringAttempt": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "dispossessed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelLost": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "duelWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "expectedAssists": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "expectedGoals": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "fouls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "goals": {
            "format": "int64",
            "type": "integer"
          },
          "heatmap": {
            "items": {
              "$ref": "#/components/schemas/V2TeamLastGameHeatmapPoint"
            },
            "type": "array"
          },
          "interceptionWon": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "isSubstitute": {
            "type": "boolean"
          },
          "jerseyNo": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "keyPass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "minutesPlayed": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "onTargetScoringAttempt": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerInternalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "position": {
            "type": "string"
          },
          "possessionLostCtrl": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "redCard": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "saves": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shotOffTarget": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "shots": {
            "format": "int64",
            "type": "integer"
          },
          "substitutedIn": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "substitutedOut": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalClearance": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalCross": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalLongBalls": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalOffside": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalPass": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "totalTackle": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "wasFouled": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "wonContest": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "yellowCard": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "playerId",
          "playerInternalId",
          "name",
          "jerseyNo",
          "position",
          "minutesPlayed",
          "substitutedIn",
          "substitutedOut",
          "heatmap",
          "isSubstitute",
          "goals",
          "assists",
          "shots",
          "onTargetScoringAttempt",
          "shotOffTarget",
          "blockedScoringAttempt",
          "totalPass",
          "accuratePass",
          "totalCross",
          "accurateCross",
          "totalLongBalls",
          "accurateLongBalls",
          "totalTackle",
          "interceptionWon",
          "fouls",
          "wasFouled",
          "yellowCard",
          "redCard",
          "saves",
          "expectedGoals",
          "expectedAssists",
          "dispossessed",
          "totalOffside",
          "possessionLostCtrl",
          "duelWon",
          "duelLost",
          "aerialWon",
          "totalClearance",
          "keyPass",
          "bigChanceCreated",
          "wonContest"
        ],
        "type": "object"
      },
      "V2TeamLastGameTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "internalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "shortname": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "internalId",
          "name",
          "shortname",
          "slug"
        ],
        "type": "object"
      },
      "V2TeamLastGamesPagination": {
        "additionalProperties": false,
        "properties": {
          "limit": {
            "format": "int64",
            "type": "integer"
          },
          "page": {
            "format": "int64",
            "type": "integer"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          },
          "totalPages": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "limit",
          "total",
          "totalPages"
        ],
        "type": "object"
      },
      "V2TeamLastLineupOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "timestamp": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamPerformanceCollectionOutputBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TeamPerformanceResult"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamPerformanceOutputBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TeamPerformanceResult"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamPlayerFixtureStatistic": {
        "additionalProperties": false,
        "properties": {
          "fixture": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "home": {
            "type": "boolean"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "opponent": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "player": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "statistics": {
            "$ref": "#/components/schemas/V2PlayerFixtureStatistics"
          }
        },
        "required": [
          "player",
          "fixture",
          "kickoffAt",
          "opponent",
          "home",
          "position",
          "statistics"
        ],
        "type": "object"
      },
      "V2TeamPlayerPerformanceOKBody": {
        "additionalProperties": false,
        "properties": {
          "currentFixturePlayerStats": {
            "items": {
              "format": "int64",
              "type": "integer"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "data": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "events": {
            "items": {},
            "type": [
              "array",
              "null"
            ]
          },
          "unavailability": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "currentFixturePlayerStats",
          "data",
          "events",
          "unavailability"
        ],
        "type": "object"
      },
      "V2TeamRosterOutputBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TeamRosterEntry"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamScreenerByFixtureOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TeamByEventRow"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamScreenerGetOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TeamScreenerRow"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2TeamScreenerPostOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TeamScreenerRow"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2TeamStatisticsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/TeamStatistics"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TeamTrendsBodyOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TeamTrendResult"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2TeamTrendsResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TeamTrendResult"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2TeamUpcomingFixturesOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2TipsterPreviewOKBody": {
        "additionalProperties": false,
        "properties": {
          "preview": {
            "additionalProperties": true,
            "type": "object"
          }
        },
        "required": [
          "preview"
        ],
        "type": "object"
      },
      "V2TipsterPreviewsOKBody": {
        "additionalProperties": false,
        "properties": {
          "previews": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "previews"
        ],
        "type": "object"
      },
      "V2TrackedBet": {
        "additionalProperties": false,
        "properties": {
          "bankrollId": {
            "type": [
              "string",
              "null"
            ]
          },
          "betType": {
            "type": "string"
          },
          "bookmakerId": {
            "type": [
              "string",
              "null"
            ]
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "country": {
            "type": [
              "string",
              "null"
            ]
          },
          "createdAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "fixture": {
            "$ref": "#/components/schemas/V2WatchlistFixture"
          },
          "id": {
            "type": "string"
          },
          "market": {
            "$ref": "#/components/schemas/V2TrackedBetMarket"
          },
          "modelName": {
            "type": [
              "string",
              "null"
            ]
          },
          "notes": {
            "type": [
              "string",
              "null"
            ]
          },
          "player": {
            "$ref": "#/components/schemas/V2WatchlistPlayer"
          },
          "result": {
            "$ref": "#/components/schemas/V2TrackedBetResult"
          },
          "source": {
            "type": [
              "string",
              "null"
            ]
          },
          "stake": {
            "$ref": "#/components/schemas/V2TrackedBetStake"
          },
          "status": {
            "type": "string"
          },
          "tags": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "teamSide": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "betType",
          "status",
          "market",
          "stake",
          "player",
          "team",
          "teamSide",
          "fixture",
          "competition",
          "country",
          "bookmakerId",
          "bankrollId",
          "source",
          "modelName",
          "tags",
          "notes",
          "result",
          "createdAt"
        ],
        "type": "object"
      },
      "V2TrackedBetDenomination": {
        "additionalProperties": false,
        "properties": {
          "currency": {
            "type": [
              "string",
              "null"
            ]
          },
          "hitRatePercent": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "lost": {
            "format": "int64",
            "type": "integer"
          },
          "pending": {
            "format": "int64",
            "type": "integer"
          },
          "profitLoss": {
            "format": "double",
            "type": "number"
          },
          "returned": {
            "format": "double",
            "type": "number"
          },
          "roiPercent": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "staked": {
            "format": "double",
            "type": "number"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          },
          "void": {
            "format": "int64",
            "type": "integer"
          },
          "won": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "currency",
          "total",
          "pending",
          "won",
          "lost",
          "void",
          "staked",
          "returned",
          "profitLoss",
          "roiPercent",
          "hitRatePercent"
        ],
        "type": "object"
      },
      "V2TrackedBetMarket": {
        "additionalProperties": false,
        "properties": {
          "direction": {
            "type": "string"
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "oddsTaken": {
            "format": "double",
            "type": "number"
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "type",
          "line",
          "direction",
          "oddsTaken"
        ],
        "type": "object"
      },
      "V2TrackedBetResult": {
        "additionalProperties": false,
        "properties": {
          "actualResult": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "profitLoss": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "settledAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "actualResult",
          "profitLoss",
          "settledAt"
        ],
        "type": "object"
      },
      "V2TrackedBetStake": {
        "additionalProperties": false,
        "properties": {
          "amount": {
            "format": "double",
            "type": "number"
          },
          "currency": {
            "type": [
              "string",
              "null"
            ]
          },
          "unitValue": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "amount",
          "currency",
          "unitValue"
        ],
        "type": "object"
      },
      "V2TrackedBetSummary": {
        "additionalProperties": false,
        "properties": {
          "denominations": {
            "items": {
              "$ref": "#/components/schemas/V2TrackedBetDenomination"
            },
            "type": "array"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "total",
          "denominations"
        ],
        "type": "object"
      },
      "V2TrackedBetsViewDeleteOKBody": {
        "additionalProperties": false,
        "properties": {
          "bankrolls": {
            "items": {
              "$ref": "#/components/schemas/TrackerBankrollView"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "data": {},
          "message": {
            "type": "string"
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          },
          "settings": {
            "additionalProperties": {},
            "type": "object"
          },
          "summary": {
            "additionalProperties": {},
            "type": "object"
          },
          "userTags": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TrackedBetsViewGetOKBody": {
        "additionalProperties": false,
        "properties": {
          "bankrolls": {
            "items": {
              "$ref": "#/components/schemas/TrackerBankrollView"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "data": {},
          "message": {
            "type": "string"
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          },
          "settings": {
            "additionalProperties": {},
            "type": "object"
          },
          "summary": {
            "additionalProperties": {},
            "type": "object"
          },
          "userTags": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TrackedBetsViewPatchOKBody": {
        "additionalProperties": false,
        "properties": {
          "bankrolls": {
            "items": {
              "$ref": "#/components/schemas/TrackerBankrollView"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "data": {},
          "message": {
            "type": "string"
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          },
          "settings": {
            "additionalProperties": {},
            "type": "object"
          },
          "summary": {
            "additionalProperties": {},
            "type": "object"
          },
          "userTags": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2TrackedBetsViewPostOKBody": {
        "additionalProperties": false,
        "properties": {
          "bankrolls": {
            "items": {
              "$ref": "#/components/schemas/TrackerBankrollView"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "data": {},
          "message": {
            "type": "string"
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          },
          "settings": {
            "additionalProperties": {},
            "type": "object"
          },
          "summary": {
            "additionalProperties": {},
            "type": "object"
          },
          "userTags": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2UpcomingFixtureScope": {
        "additionalProperties": false,
        "properties": {
          "competitions": {
            "items": {
              "$ref": "#/components/schemas/V2UpcomingFixtureScopeCompetition"
            },
            "type": "array"
          },
          "fixtureCount": {
            "format": "int64",
            "type": "integer"
          },
          "fixtures": {
            "items": {
              "$ref": "#/components/schemas/V2UpcomingFixtureScopeFixture"
            },
            "type": "array"
          },
          "from": {
            "format": "date-time",
            "type": "string"
          },
          "teams": {
            "items": {
              "$ref": "#/components/schemas/V2UpcomingFixtureScopeTeam"
            },
            "type": "array"
          },
          "to": {
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "from",
          "to",
          "fixtureCount",
          "fixtures",
          "competitions",
          "teams"
        ],
        "type": "object"
      },
      "V2UpcomingFixtureScopeCompetition": {
        "additionalProperties": false,
        "properties": {
          "fixtureCount": {
            "format": "int64",
            "type": "integer"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "popular": {
            "type": "boolean"
          },
          "regionSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "regionSlug",
          "fixtureCount",
          "popular"
        ],
        "type": "object"
      },
      "V2UpcomingFixtureScopeFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2UpcomingFixtureScopeTeam"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2UpcomingFixtureScopeTeam"
          },
          "id": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": "string"
          },
          "phaseId": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "kickoffAt",
          "phaseId",
          "competition",
          "homeTeam",
          "awayTeam"
        ],
        "type": "object"
      },
      "V2UpcomingFixtureScopeTeam": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "V2UpdateFixtureOKBody": {
        "additionalProperties": false,
        "properties": {
          "event": {
            "$ref": "#/components/schemas/Events"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "event",
          "message"
        ],
        "type": "object"
      },
      "V2UpdateManagerInputBody": {
        "additionalProperties": false,
        "properties": {
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "shortName": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "slug",
          "shortName",
          "countrySlug"
        ],
        "type": "object"
      },
      "V2UpdateSavedScreenerFilterInputBody": {
        "additionalProperties": false,
        "properties": {
          "filters": {},
          "id": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "filters"
        ],
        "type": "object"
      },
      "V2UpdateSavedScreenerFilterOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/SavedFilterView"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2UpdateTipsterPreviewOKBody": {
        "additionalProperties": false,
        "properties": {
          "preview": {}
        },
        "required": [
          "preview"
        ],
        "type": "object"
      },
      "V2UserFavoritePlayerCheckOKBody": {
        "additionalProperties": false,
        "properties": {
          "isFavorite": {
            "type": "boolean"
          }
        },
        "required": [
          "isFavorite"
        ],
        "type": "object"
      },
      "V2UserFavoriteTeamCheckOKBody": {
        "additionalProperties": false,
        "properties": {
          "isFavorite": {
            "type": "boolean"
          }
        },
        "required": [
          "isFavorite"
        ],
        "type": "object"
      },
      "V2ValueBetAverages": {
        "additionalProperties": false,
        "properties": {
          "differencePercent": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "lambda": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "league": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "player": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "teamAgainst": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "league",
          "teamAgainst",
          "player",
          "lambda",
          "differencePercent"
        ],
        "type": "object"
      },
      "V2ValueBetFilterOptions": {
        "additionalProperties": false,
        "properties": {
          "events": {
            "items": {
              "$ref": "#/components/schemas/ValueBetFilterEvent"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "lines": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "marketTypes": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "opponentMultipliers": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "sources": {
            "items": {
              "type": "string"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "tournaments": {
            "items": {
              "$ref": "#/components/schemas/ValueBetFilterTournament"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "lines",
          "marketTypes",
          "sources",
          "opponentMultipliers",
          "events",
          "tournaments"
        ],
        "type": "object"
      },
      "V2ValueBetFilterOptionsResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "$ref": "#/components/schemas/V2ValueBetFilterOptions"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2ValueBetLineupAlertsOKBody": {
        "additionalProperties": false,
        "properties": {
          "alerts": {
            "items": {
              "$ref": "#/components/schemas/Item6"
            },
            "type": [
              "array",
              "null"
            ]
          }
        },
        "required": [
          "alerts"
        ],
        "type": "object"
      },
      "V2ValueBetPropsOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "additionalProperties": {},
              "type": "object"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "meta": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "meta"
        ],
        "type": "object"
      },
      "V2ValueBetQuote": {
        "additionalProperties": false,
        "properties": {
          "alertsSupported": {
            "type": "boolean"
          },
          "averages": {
            "$ref": "#/components/schemas/V2ValueBetAverages"
          },
          "competition": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "id": {
            "type": "string"
          },
          "modelName": {
            "type": "string"
          },
          "multiClub": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "over": {
            "$ref": "#/components/schemas/V2ValueBetSide"
          },
          "player": {
            "$ref": "#/components/schemas/V2WatchlistPlayer"
          },
          "source": {
            "type": [
              "string",
              "null"
            ]
          },
          "team": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "under": {
            "$ref": "#/components/schemas/V2ValueBetSide"
          },
          "updatedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "modelName",
          "source",
          "player",
          "team",
          "competition",
          "over",
          "under",
          "averages",
          "multiClub",
          "alertsSupported",
          "updatedAt"
        ],
        "type": "object"
      },
      "V2ValueBetReport": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "details": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "reason",
          "details",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "V2ValueBetReportReason": {
        "additionalProperties": false,
        "properties": {
          "count": {
            "format": "int64",
            "type": "integer"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "reason",
          "count"
        ],
        "type": "object"
      },
      "V2ValueBetReportSummary": {
        "additionalProperties": false,
        "properties": {
          "mine": {
            "$ref": "#/components/schemas/V2ValueBetReport"
          },
          "reasons": {
            "items": {
              "$ref": "#/components/schemas/V2ValueBetReportReason"
            },
            "type": "array"
          },
          "total": {
            "format": "int64",
            "type": "integer"
          }
        },
        "required": [
          "total",
          "reasons",
          "mine"
        ],
        "type": "object"
      },
      "V2ValueBetSelection": {
        "additionalProperties": false,
        "properties": {
          "fixtureId": {
            "type": "string"
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "marketType": {
            "type": "string"
          },
          "playerId": {
            "type": "string"
          }
        },
        "required": [
          "playerId",
          "marketType",
          "line",
          "fixtureId"
        ],
        "type": "object"
      },
      "V2ValueBetSide": {
        "additionalProperties": false,
        "properties": {
          "edgePercent": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "fairOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "odds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "probability": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "fairOdds",
          "odds",
          "edgePercent",
          "probability"
        ],
        "type": "object"
      },
      "V2ValueBetWatchlistEntry": {
        "additionalProperties": false,
        "properties": {
          "fixture": {
            "$ref": "#/components/schemas/V2WatchlistFixture"
          },
          "id": {
            "type": "string"
          },
          "quote": {
            "$ref": "#/components/schemas/V2ValueBetQuote"
          },
          "savedAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "selection": {
            "$ref": "#/components/schemas/V2ValueBetSelection"
          }
        },
        "required": [
          "id",
          "savedAt",
          "selection",
          "fixture",
          "quote"
        ],
        "type": "object"
      },
      "V2ValueBetWatchlistViewGetOKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/ValueBetGroup"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "V2ValueBetWatchlistViewPostInputBody": {
        "additionalProperties": false,
        "properties": {
          "line": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "marketType": {
            "type": [
              "string",
              "null"
            ]
          },
          "matchId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "playerId": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "playerId",
          "marketType",
          "matchId",
          "line"
        ],
        "type": "object"
      },
      "V2ValueBetsGeneration1OKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/ValueBetsGroup"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2ValueBetsGeneration4OKBody": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/ValueBetV2Group"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "additionalProperties": {},
            "type": "object"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2ValueBetsResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/ValueBetV2Group"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "pagination"
        ],
        "type": "object"
      },
      "V2ValuePropRecord": {
        "additionalProperties": false,
        "properties": {
          "average": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "recentGames": {
            "items": {
              "$ref": "#/components/schemas/TrendRecentGame"
            },
            "type": "array"
          },
          "total": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "total",
          "average",
          "recentGames"
        ],
        "type": "object"
      },
      "V2ValuePropResult": {
        "additionalProperties": false,
        "properties": {
          "bookmaker": {
            "type": [
              "string",
              "null"
            ]
          },
          "bookmakerCount": {
            "format": "int64",
            "type": "integer"
          },
          "edgePoints": {
            "format": "double",
            "type": "number"
          },
          "hitRate": {
            "format": "double",
            "type": "number"
          },
          "odds": {
            "format": "double",
            "type": "number"
          },
          "period": {
            "enum": [
              "L5",
              "L10",
              "L15"
            ],
            "type": "string"
          },
          "prop": {
            "$ref": "#/components/schemas/PlayerPropScreenerResult"
          },
          "record": {
            "$ref": "#/components/schemas/V2ValuePropRecord"
          }
        },
        "required": [
          "prop",
          "hitRate",
          "odds",
          "bookmaker",
          "bookmakerCount",
          "edgePoints",
          "period",
          "record"
        ],
        "type": "object"
      },
      "V2ValuePropsResponse": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/V2ValuePropResult"
            },
            "type": "array"
          },
          "fixtureCount": {
            "format": "int64",
            "type": "integer"
          },
          "pagination": {
            "$ref": "#/components/schemas/Metadata"
          }
        },
        "required": [
          "data",
          "fixtureCount",
          "pagination"
        ],
        "type": "object"
      },
      "V2Venue": {
        "additionalProperties": false,
        "properties": {
          "capacity": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "cityName": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "$ref": "#/components/schemas/V2CountryReference"
          },
          "id": {
            "type": "string"
          },
          "latitude": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "longitude": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "cityName",
          "capacity",
          "latitude",
          "longitude",
          "country"
        ],
        "type": "object"
      },
      "V2WatchlistEntryReference": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "V2WatchlistFixture": {
        "additionalProperties": false,
        "properties": {
          "awayTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "homeTeam": {
            "$ref": "#/components/schemas/V2ResourceReference"
          },
          "id": {
            "type": "string"
          },
          "kickoffAt": {
            "format": "date-time",
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "slug",
          "kickoffAt",
          "homeTeam",
          "awayTeam"
        ],
        "type": "object"
      },
      "V2WatchlistPlayer": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "V2WorldCupKickoffOKBody": {
        "additionalProperties": false,
        "properties": {
          "kickoff": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "kickoff"
        ],
        "type": "object"
      },
      "ValueBetBookmaker": {
        "additionalProperties": false,
        "properties": {
          "overOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "type": "string"
          },
          "underOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "source",
          "overOdds",
          "underOdds"
        ],
        "type": "object"
      },
      "ValueBetFilterEvent": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "label": {
            "type": "string"
          },
          "timeStartTimestamp": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "label",
          "timeStartTimestamp"
        ],
        "type": "object"
      },
      "ValueBetFilterTournament": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "format": "int64",
            "type": "integer"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "ValueBetGroup": {
        "additionalProperties": false,
        "properties": {
          "activityInfo": {},
          "alertsSupported": {
            "type": "boolean"
          },
          "avgOverEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "bestOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/ValueBetBookmaker"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "groupKey": {
            "type": "string"
          },
          "hitRates": {
            "$ref": "#/components/schemas/ValueBetHitRates"
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "isPredictionOnly": {
            "type": "boolean"
          },
          "jerseyNumber": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "last30Stats": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "marketType": {
            "type": "string"
          },
          "matchDate": {
            "type": [
              "string",
              "null"
            ]
          },
          "matchId": {
            "format": "int64",
            "type": "integer"
          },
          "matchInternalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matchOdds": {
            "$ref": "#/components/schemas/ValueBetMatchOdds"
          },
          "matchSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "models": {
            "items": {
              "$ref": "#/components/schemas/ValueBetModel"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "multiClub": {
            "type": "boolean"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerName": {
            "type": [
              "string",
              "null"
            ]
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "recentGames": {
            "items": {
              "$ref": "#/components/schemas/ValueBetRecentGame"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "sampleSize": {
            "format": "int64",
            "type": "integer"
          },
          "scannerEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "scannerFairOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "scannerModelName": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "windowHorizon": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "groupKey",
          "playerId",
          "playerName",
          "teamId",
          "teamName",
          "matchId",
          "matchInternalId",
          "matchDate",
          "marketType",
          "line",
          "matchSlug",
          "homeTeamId",
          "homeTeamName",
          "awayTeamId",
          "awayTeamName",
          "alertsSupported",
          "multiClub",
          "models",
          "bookmakers",
          "avgOverEdge",
          "bestOverOdds",
          "matchOdds",
          "last30Stats",
          "sampleSize",
          "hitRates",
          "recentGames",
          "activityInfo",
          "position",
          "jerseyNumber",
          "uniqueTournamentId",
          "windowHorizon",
          "scannerEdge",
          "scannerFairOdds",
          "scannerModelName",
          "isPredictionOnly"
        ],
        "type": "object"
      },
      "ValueBetHitRateWindows": {
        "additionalProperties": false,
        "properties": {
          "over": {
            "$ref": "#/components/schemas/ValueBetWindowRates"
          },
          "sampleSize": {
            "format": "int64",
            "type": "integer"
          },
          "under": {
            "$ref": "#/components/schemas/ValueBetWindowRates"
          }
        },
        "required": [
          "over",
          "under",
          "sampleSize"
        ],
        "type": "object"
      },
      "ValueBetHitRates": {
        "additionalProperties": false,
        "properties": {
          "l10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "l20": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "l30": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "l10",
          "l20",
          "l30"
        ],
        "type": "object"
      },
      "ValueBetMatchOdds": {
        "additionalProperties": false,
        "properties": {
          "away": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "draw": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "home": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "home",
          "draw",
          "away"
        ],
        "type": "object"
      },
      "ValueBetModel": {
        "additionalProperties": false,
        "properties": {
          "differencePercentage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "extraLongExpected": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "extraLongFairOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "fairOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "fairUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "lambdaNumber": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "leagueAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "longExpected": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "longFairOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "mediumExpected": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "mediumFairOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "modelGroup": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "modelName": {
            "type": "string"
          },
          "opponentMultiplier": {
            "type": [
              "string",
              "null"
            ]
          },
          "playersAverage": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "poissonProbOver": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "poissonProbUnder": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "shortExpected": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "shortFairOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "teamAverageAgainst": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "modelName",
          "modelGroup",
          "fairOverOdds",
          "fairUnderOdds",
          "opponentMultiplier",
          "poissonProbOver",
          "poissonProbUnder",
          "leagueAverage",
          "teamAverageAgainst",
          "playersAverage",
          "lambdaNumber",
          "differencePercentage",
          "longExpected",
          "extraLongExpected",
          "mediumExpected",
          "shortExpected",
          "shortFairOverOdds",
          "mediumFairOverOdds",
          "longFairOverOdds",
          "extraLongFairOverOdds"
        ],
        "type": "object"
      },
      "ValueBetPlayerGame": {
        "additionalProperties": false,
        "properties": {
          "eventId": {
            "format": "int64",
            "type": "integer"
          },
          "eventTimestamp": {
            "format": "int64",
            "type": "integer"
          },
          "isHome": {
            "type": "boolean"
          },
          "minutesPlayed": {
            "format": "double",
            "type": "number"
          },
          "opponentId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentName": {
            "type": "string"
          },
          "opponentSlug": {
            "type": "string"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "substitutedIn": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "substitutedPlayerStats": {
            "additionalProperties": {
              "format": "double",
              "type": "number"
            },
            "type": "object"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "eventId",
          "minutesPlayed",
          "position",
          "isHome",
          "opponentId",
          "uniqueTournamentId",
          "eventTimestamp",
          "substitutedIn",
          "opponentName",
          "opponentSlug"
        ],
        "type": "object"
      },
      "ValueBetRecentGame": {
        "additionalProperties": false,
        "properties": {
          "isHome": {
            "type": "boolean"
          },
          "minutesPlayed": {
            "format": "int64",
            "type": "integer"
          },
          "opponentId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentName": {
            "type": "string"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "stat": {
            "format": "double",
            "type": "number"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "stat",
          "minutesPlayed",
          "position",
          "isHome",
          "opponentId",
          "opponentName",
          "uniqueTournamentId"
        ],
        "type": "object"
      },
      "ValueBetV2Activity": {
        "additionalProperties": false,
        "properties": {
          "inPredictedLineup": {
            "type": "boolean"
          },
          "lastGameWithTeam": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "startedLastGame": {
            "type": "boolean"
          }
        },
        "required": [
          "startedLastGame",
          "lastGameWithTeam",
          "inPredictedLineup"
        ],
        "type": "object"
      },
      "ValueBetV2Group": {
        "additionalProperties": false,
        "properties": {
          "activityInfo": {
            "$ref": "#/components/schemas/ValueBetV2Activity"
          },
          "alertsSupported": {
            "type": "boolean"
          },
          "avgOverEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "avgUnderEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "awayTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "bestOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/ValueBetBookmaker"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "groupKey": {
            "type": "string"
          },
          "hitRates": {
            "$ref": "#/components/schemas/ValueBetHitRates"
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "horizonFallback": {
            "type": "boolean"
          },
          "isPredictionOnly": {
            "type": "boolean"
          },
          "jerseyNumber": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "last30Stats": {
            "items": {
              "format": "double",
              "type": "number"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "marketType": {
            "type": "string"
          },
          "matchDate": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matchId": {
            "format": "int64",
            "type": "integer"
          },
          "matchInternalId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matchOdds": {
            "$ref": "#/components/schemas/ValueBetMatchOdds"
          },
          "matchSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "models": {
            "items": {
              "$ref": "#/components/schemas/ValueBetV2Model"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "multiClub": {
            "type": "boolean"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerName": {
            "type": [
              "string",
              "null"
            ]
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "recentGames": {
            "items": {
              "$ref": "#/components/schemas/ValueBetV2RecentGame"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "sampleSize": {
            "format": "int64",
            "type": "integer"
          },
          "scannerEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "scannerFairOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "scannerModelName": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "windowHorizon": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "groupKey",
          "playerId",
          "playerName",
          "teamId",
          "teamName",
          "matchId",
          "matchInternalId",
          "matchDate",
          "marketType",
          "line",
          "matchSlug",
          "homeTeamId",
          "homeTeamName",
          "awayTeamId",
          "awayTeamName",
          "uniqueTournamentId",
          "alertsSupported",
          "multiClub",
          "models",
          "bookmakers",
          "avgOverEdge",
          "bestOverOdds",
          "avgUnderEdge",
          "bestUnderOdds",
          "matchOdds",
          "last30Stats",
          "sampleSize",
          "hitRates",
          "recentGames",
          "activityInfo",
          "position",
          "jerseyNumber",
          "windowHorizon",
          "horizonFallback",
          "scannerEdge",
          "scannerFairOdds",
          "scannerModelName",
          "isPredictionOnly"
        ],
        "type": "object"
      },
      "ValueBetV2Model": {
        "additionalProperties": false,
        "properties": {
          "extraLongFairUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "longFairUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "mediumFairUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "shortFairUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "shortFairUnderOdds",
          "mediumFairUnderOdds",
          "longFairUnderOdds",
          "extraLongFairUnderOdds"
        ],
        "type": "object"
      },
      "ValueBetV2RecentGame": {
        "additionalProperties": false,
        "properties": {
          "hasSuperSub": {
            "type": "boolean"
          },
          "isHome": {
            "type": "boolean"
          },
          "minutesPlayed": {
            "format": "int64",
            "type": "integer"
          },
          "opponentId": {
            "format": "int64",
            "type": "integer"
          },
          "opponentName": {
            "type": "string"
          },
          "position": {
            "type": [
              "string",
              "null"
            ]
          },
          "stat": {
            "format": "double",
            "type": "number"
          },
          "uniqueTournamentId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "stat",
          "minutesPlayed",
          "position",
          "isHome",
          "opponentId",
          "opponentName",
          "uniqueTournamentId",
          "hasSuperSub"
        ],
        "type": "object"
      },
      "ValueBetWindowRates": {
        "additionalProperties": false,
        "properties": {
          "L10": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L20": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "L40": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          }
        },
        "required": [
          "L10",
          "L20",
          "L40"
        ],
        "type": "object"
      },
      "ValueBetsBookmaker": {
        "additionalProperties": false,
        "properties": {
          "overOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "type": "string"
          },
          "underOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "source",
          "overOdds",
          "underOdds"
        ],
        "type": "object"
      },
      "ValueBetsGroup": {
        "additionalProperties": false,
        "properties": {
          "activityInfo": {
            "$ref": "#/components/schemas/ValueBetV2Activity"
          },
          "avgOverEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "avgOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "avgUnderEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "avgUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "awayTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "bestOverEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestUnderEdge": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bestUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "bookmakers": {
            "items": {
              "$ref": "#/components/schemas/ValueBetsBookmaker"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "groupKey": {
            "type": "string"
          },
          "hitRates": {
            "$ref": "#/components/schemas/ValueBetHitRateWindows"
          },
          "homeTeamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "homeTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "line": {
            "format": "double",
            "type": "number"
          },
          "marketType": {
            "type": "string"
          },
          "matchDate": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "matchId": {
            "format": "int64",
            "type": "integer"
          },
          "matchOdds": {
            "$ref": "#/components/schemas/ValueBetMatchOdds"
          },
          "matchSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "models": {
            "items": {
              "$ref": "#/components/schemas/ValueBetsModelOdds"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "opponentMultiplier": {
            "type": [
              "string",
              "null"
            ]
          },
          "opponentTeamName": {
            "type": [
              "string",
              "null"
            ]
          },
          "playerDetails": {
            "$ref": "#/components/schemas/ValueBetsPlayerDetails"
          },
          "playerId": {
            "format": "int64",
            "type": "integer"
          },
          "playerName": {
            "type": [
              "string",
              "null"
            ]
          },
          "teamId": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "teamName": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "groupKey",
          "playerId",
          "playerName",
          "teamId",
          "teamName",
          "matchId",
          "matchDate",
          "marketType",
          "line",
          "models",
          "opponentMultiplier",
          "matchSlug",
          "playerDetails",
          "activityInfo",
          "opponentTeamName",
          "matchOdds",
          "homeTeamId",
          "homeTeamName",
          "awayTeamName",
          "bookmakers",
          "bestOverOdds",
          "bestUnderOdds",
          "avgOverOdds",
          "avgUnderOdds",
          "bestOverEdge",
          "bestUnderEdge",
          "avgOverEdge",
          "avgUnderEdge",
          "hitRates"
        ],
        "type": "object"
      },
      "ValueBetsModelOdds": {
        "additionalProperties": false,
        "properties": {
          "fairOverOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "fairUnderOdds": {
            "format": "double",
            "type": [
              "number",
              "null"
            ]
          },
          "modelName": {
            "type": "string"
          }
        },
        "required": [
          "modelName",
          "fairOverOdds",
          "fairUnderOdds"
        ],
        "type": "object"
      },
      "ValueBetsPlayerDetails": {
        "additionalProperties": false,
        "properties": {
          "active": {
            "type": "boolean"
          },
          "recentGames": {
            "items": {
              "$ref": "#/components/schemas/ValueBetPlayerGame"
            },
            "type": [
              "array",
              "null"
            ]
          },
          "recentStats": {
            "additionalProperties": {
              "items": {
                "format": "double",
                "type": "number"
              },
              "type": [
                "array",
                "null"
              ]
            },
            "type": "object"
          }
        },
        "required": [
          "active",
          "recentStats",
          "recentGames"
        ],
        "type": "object"
      },
      "VenueBody": {
        "additionalProperties": false,
        "properties": {
          "capacity": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "cityName": {
            "type": [
              "string",
              "null"
            ]
          },
          "countrySlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "id": {
            "format": "int64",
            "type": [
              "integer",
              "null"
            ]
          },
          "latitude": {
            "type": [
              "string",
              "null"
            ]
          },
          "longitude": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "slug": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "slug",
          "capacity",
          "cityName",
          "latitude",
          "longitude",
          "countrySlug"
        ],
        "type": "object"
      }
    },
    "securitySchemes": {
      "internalAPIKey": {
        "description": "Shared service key. Operations using it also require X-Telegram-User-Id.",
        "in": "header",
        "name": "X-Internal-Key",
        "type": "apiKey"
      },
      "supabaseBearer": {
        "bearerFormat": "JWT",
        "description": "Supabase access token.",
        "scheme": "bearer",
        "type": "http"
      },
      "supabaseSessionCookie": {
        "description": "Browser-managed Supabase SSR session cookie, including chunked sessions.",
        "in": "header",
        "name": "Cookie",
        "type": "apiKey"
      },
      "telegramUserID": {
        "description": "Telegram user represented by an authenticated internal service.",
        "in": "header",
        "name": "X-Telegram-User-Id",
        "type": "apiKey"
      }
    }
  },
  "info": {
    "description": "Resource-oriented StatsHub API. IDs are opaque strings, timestamps use RFC 3339, collections use signed cursor pagination, and errors use RFC 9457 Problem Details.",
    "title": "StatsHub API v2",
    "version": "2.0.0"
  },
  "openapi": "3.1.0",
  "paths": {
    "/admin/bot-routing": {
      "get": {
        "operationId": "V2AdminBotRoutingGet",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminBotRoutingGetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "put": {
        "operationId": "V2AdminBotRoutingPut",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2AdminBotRoutingPutInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminBotRoutingPutOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/backfill-shotmap": {
      "post": {
        "operationId": "V2DashboardBackfillShotmap",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminViewResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "502": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Gateway"
          }
        },
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/basketball/load-by-date": {
      "post": {
        "operationId": "V2DashboardBasketballLoadByDate",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminViewResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "502": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Gateway"
          }
        },
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/basketball/load-by-ids": {
      "post": {
        "operationId": "V2DashboardBasketballLoadByIDs",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminViewResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "502": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Gateway"
          }
        },
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/basketball/load-by-season": {
      "post": {
        "operationId": "V2DashboardBasketballLoadBySeason",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminViewResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "502": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Gateway"
          }
        },
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/basketball/tournaments": {
      "get": {
        "operationId": "V2DashboardBasketballTournaments",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/Item"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/basketball/tournaments/{id}/seasons": {
      "get": {
        "operationId": "V2DashboardBasketballSeasons",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "additionalProperties": {},
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/alerts": {
      "get": {
        "operationId": "V2DashboardBotAlerts",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DashboardBotAlertsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/betting-odds": {
      "delete": {
        "operationId": "V2DashboardBettingOddsRulesDelete",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "get": {
        "operationId": "V2DashboardBettingOddsRulesList",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/BettingOddsRulesBot"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "post": {
        "operationId": "V2DashboardBettingOddsRulesCreate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardBettingOddsRulesCreateInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BettingOddsRulesBot"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "put": {
        "operationId": "V2DashboardBettingOddsRulesToggle",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardBettingOddsRulesToggleInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BettingOddsRulesBot"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/bot-toggle": {
      "put": {
        "operationId": "V2DashboardBotToggle",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DashboardBotToggleOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/league-groups": {
      "delete": {
        "operationId": "V2DashboardLeagueGroupsDelete",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "get": {
        "operationId": "V2DashboardLeagueGroupsList",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/LeagueGroup"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "post": {
        "operationId": "V2DashboardLeagueGroupsCreate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardLeagueGroupsCreateInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeagueGroup"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "put": {
        "operationId": "V2DashboardLeagueGroupsUpdate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardLeagueGroupsUpdateInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeagueGroup"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/league-groups/{id}/leagues": {
      "delete": {
        "operationId": "V2DashboardLeagueGroupLeaguesRemove",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardLeagueGroupLeaguesRemoveInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/LeagueGroupMember"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "get": {
        "operationId": "V2DashboardLeagueGroupLeaguesList",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/LeagueGroupMember"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "post": {
        "operationId": "V2DashboardLeagueGroupLeaguesAdd",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardLeagueGroupLeaguesAddInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/LeagueGroupMember"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/position-change-avoid-rules": {
      "delete": {
        "operationId": "V2DashboardPositionRulesDelete",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "get": {
        "operationId": "V2DashboardPositionRulesList",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "leagueGroupId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "ruleType",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/PositionRule"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "post": {
        "operationId": "V2DashboardPositionRulesCreate",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminViewResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "502": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Gateway"
          }
        },
        "tags": [
          "Admin"
        ]
      },
      "put": {
        "operationId": "V2DashboardPositionRulesUpdate",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminViewResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "502": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Gateway"
          }
        },
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/prompt-templates": {
      "get": {
        "operationId": "V2DashboardPromptTemplatesList",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/BotPromptTemplates"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "post": {
        "operationId": "V2DashboardPromptTemplatesCreate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardPromptTemplatesCreateInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BotPromptTemplates"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/prompt-templates/{id}": {
      "delete": {
        "operationId": "V2DashboardPromptTemplateDelete",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "get": {
        "operationId": "V2DashboardPromptTemplateGet",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BotPromptTemplates"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "put": {
        "operationId": "V2DashboardPromptTemplateUpdate",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardPromptTemplateUpdateInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BotPromptTemplates"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/bot/stats-rules": {
      "delete": {
        "operationId": "V2DashboardStatsRulesDelete",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "get": {
        "operationId": "V2DashboardStatsRulesList",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/PlayerStatsRulesBot"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "post": {
        "operationId": "V2DashboardStatsRulesCreate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardStatsRulesCreateInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlayerStatsRulesBot"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "put": {
        "operationId": "V2DashboardStatsRulesToggle",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardStatsRulesToggleInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlayerStatsRulesBot"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/daily-spreadsheet": {
      "get": {
        "operationId": "V2DashboardDailySpreadsheet",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "date",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DashboardDailySpreadsheetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/leagues": {
      "get": {
        "operationId": "V2DashboardLeagueList",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "onForTelegramBot",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/DashboardLeagueListRow"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/leagues/by-country/{country}": {
      "get": {
        "operationId": "V2DashboardLeaguesByCountry",
        "parameters": [
          {
            "in": "path",
            "name": "country",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/DashboardLeagueRow"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/leagues/countries": {
      "get": {
        "operationId": "V2DashboardLeagueCountries",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "type": "string"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/leagues/load-data": {
      "post": {
        "operationId": "V2DashboardLeagueLoadData",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminViewResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "502": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Gateway"
          }
        },
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/leagues/search": {
      "get": {
        "operationId": "V2DashboardLeagueSearch",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/DashboardLeagueRow"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/leagues/update": {
      "patch": {
        "operationId": "V2DashboardLeagueUpdate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardLeagueUpdateInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardLeagueRow"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/leagues/{id}/seasons": {
      "get": {
        "operationId": "V2DashboardLeagueSeasons",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "additionalProperties": {},
                    "type": "object"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/missing-shotmap-count": {
      "get": {
        "operationId": "V2DashboardMissingShotmapCount",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminViewResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "502": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Gateway"
          }
        },
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/stale-odds": {
      "get": {
        "operationId": "V2DashboardStaleOdds",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DashboardStaleOddsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/systemstats": {
      "get": {
        "operationId": "V2DashboardSystemStats",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "dateFrom",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "dateTo",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "name",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "type",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DashboardSystemStatsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/dashboard/team-sportsmonk-mapping": {
      "get": {
        "operationId": "V2DashboardSportsmonkMappingList",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DashboardSportsmonkMappingListOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      },
      "put": {
        "operationId": "V2DashboardSportsmonkMappingUpdate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2DashboardSportsmonkMappingUpdateInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DashboardSportsmonkMappingUpdateOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/player-assignments/reconcile": {
      "post": {
        "operationId": "V2AdminPlayerAssignmentsReconcile",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2AdminPlayerAssignmentsReconcileInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminPlayerAssignmentsReconcileOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/premier-league-export": {
      "get": {
        "operationId": "V2AdminPremierLeagueExport",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "format",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "location",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamIds",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "contentEncoding": "base64",
                  "type": "string"
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/admin/send-custom-message": {
      "post": {
        "operationId": "V2AdminSendCustomMessage",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2AdminSendCustomMessageInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AdminSendCustomMessageOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Admin"
        ]
      }
    },
    "/assistant/chat": {
      "post": {
        "operationId": "V2AssistantChat",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2AssistantChatInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "contentEncoding": "base64",
                  "type": "string"
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2AssistantChat streams the StatsHub assistant's UI-message protocol.",
        "tags": [
          "Assistant"
        ]
      }
    },
    "/basketball/competitions": {
      "get": {
        "operationId": "V2BasketballCompetitions",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballCompetitionsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballCompetitions serves the basketball competitions with data.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/competitions/{competitionId}/fixtures": {
      "get": {
        "operationId": "V2BasketballCompetitionFixtures",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballCompetitionFixturesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballCompetitionFixtures serves one competition's fixtures.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/competitions/{competitionId}/teams": {
      "get": {
        "operationId": "V2BasketballCompetitionTeams",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballCompetitionTeamsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballCompetitionTeams serves the teams in one competition.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/fixtures": {
      "get": {
        "description": "A day with no fixtures answers 200 with an empty `data`; the v1 route\nanswers 404 for it.",
        "operationId": "V2BasketballFixtures",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "endOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startOfDay",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballFixturesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballFixtures serves the fixtures on a date.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/fixtures/{fixtureId}": {
      "get": {
        "operationId": "V2BasketballFixture",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": true,
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballFixture serves one fixture with its boxscore.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/fixtures/{fixtureId}/player-odds": {
      "get": {
        "operationId": "V2BasketballFixturePlayerOdds",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballFixturePlayerOddsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballFixturePlayerOdds serves the player markets priced for a fixture.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/players": {
      "get": {
        "operationId": "V2BasketballPlayers",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballPlayersOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballPlayers serves the basketball player directory.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/players/{playerId}": {
      "get": {
        "operationId": "V2BasketballPlayer",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballPlayerOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballPlayer serves one basketball player.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/players/{playerId}/performance": {
      "get": {
        "operationId": "V2BasketballPlayerPerformance",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "location",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballPlayerPerformanceOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballPlayerPerformance serves a basketball player's game log.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/search": {
      "get": {
        "operationId": "V2BasketballSearch",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballSearchOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballSearch serves the basketball entity search.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/teams/{teamId}": {
      "get": {
        "operationId": "V2BasketballTeam",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballTeamOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballTeam serves one basketball team.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/teams/{teamId}/performance": {
      "get": {
        "operationId": "V2BasketballTeamPerformance",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "timeFrame",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballTeamPerformanceOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballTeamPerformance serves a basketball team's game log.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/teams/{teamId}/player-performance": {
      "get": {
        "operationId": "V2BasketballTeamPlayerPerformance",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "fixtureId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "h2h",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "location",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballTeamPlayerPerformanceOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballTeamPlayerPerformance serves the squad's game logs together.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/basketball/teams/{teamId}/upcoming-fixtures": {
      "get": {
        "operationId": "V2BasketballTeamUpcomingFixtures",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BasketballTeamUpcomingFixturesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2BasketballTeamUpcomingFixtures serves a basketball team's schedule.",
        "tags": [
          "Basketball"
        ]
      }
    },
    "/bookmakers": {
      "get": {
        "operationId": "listBookmakers",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Bookmaker"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List bookmakers",
        "tags": [
          "Betting"
        ]
      }
    },
    "/bookmakers/{bookmakerId}": {
      "get": {
        "operationId": "getBookmaker",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "bookmakerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Bookmaker"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a bookmaker",
        "tags": [
          "Betting"
        ]
      }
    },
    "/competition-directory": {
      "get": {
        "operationId": "getCompetitionDirectory",
        "parameters": [
          {
            "description": "Upcoming fixture horizon in days",
            "in": "query",
            "name": "days",
            "schema": {
              "maximum": 60,
              "minimum": 1,
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2CompetitionDirectory"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get the grouped upcoming competition directory",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions": {
      "get": {
        "operationId": "listCompetitions",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive competition name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Filter by region",
            "in": "query",
            "name": "regionId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter to competitions that do or do not support live alerts",
            "in": "query",
            "name": "liveAlerts",
            "schema": {
              "enum": [
                "true",
                "false"
              ],
              "type": "string"
            }
          },
          {
            "description": "Inclusive lower bound of a scheduled, visible fixture window; with either bound set, only competitions with a fixture in the window are returned and each carries fixturesInWindow",
            "in": "query",
            "name": "fixturesFrom",
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "Exclusive upper bound of the fixture window",
            "in": "query",
            "name": "fixturesTo",
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Competition"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List competition identities",
        "tags": [
          "Competitions"
        ]
      },
      "post": {
        "operationId": "V2CreateCompetition",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2CreateCompetitionInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateCompetitionCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateCompetition inserts a competition.",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}": {
      "get": {
        "operationId": "getCompetition",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Competition"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a competition",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/overview": {
      "get": {
        "operationId": "V2CompetitionOverview",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CompetitionOverviewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/season-directory": {
      "get": {
        "operationId": "V2CompetitionSeasonView",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CompetitionSeasonViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons": {
      "get": {
        "operationId": "listCompetitionSeasons",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Search season names and years",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2CompetitionSeason"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List competition seasons",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/bracket": {
      "get": {
        "operationId": "getCompetitionSeasonBracket",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2CompetitionBracket"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a competition season elimination bracket",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/bracket-view": {
      "get": {
        "operationId": "V2CompetitionBracketView",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CompetitionBracketViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/fixtures-view": {
      "get": {
        "operationId": "V2CompetitionFixturesView",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CompetitionFixturesViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/phases": {
      "get": {
        "operationId": "listCompetitionSeasonPhases",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Search phase names",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2CompetitionPhase"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List phases in a competition season",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/player-rankings": {
      "get": {
        "operationId": "listCompetitionSeasonPlayerRankings",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by team",
            "in": "query",
            "name": "teamId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Aggregate only each player's most recent appearances",
            "in": "query",
            "name": "recentAppearances",
            "schema": {
              "maximum": 1000,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Ranking order",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "-goals",
                "-assists",
                "-appearances",
                "name"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PlayerSeasonRanking"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List aggregate player-season rankings",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/rounds": {
      "get": {
        "operationId": "listCompetitionSeasonRounds",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2CompetitionRound"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List rounds in a competition season",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/rounds-view": {
      "get": {
        "operationId": "V2CompetitionRoundsView",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CompetitionRoundsViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/rounds/{round}/fixtures-view": {
      "get": {
        "operationId": "V2CompetitionRoundFixturesView",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "path",
            "name": "round",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CompetitionRoundFixturesViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Competitions"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/standings": {
      "get": {
        "operationId": "getCompetitionSeasonStandings",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2SeasonStandings"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get competition season standings",
        "tags": [
          "Standings"
        ]
      }
    },
    "/competitions/{competitionId}/seasons/{seasonId}/standings-view": {
      "get": {
        "operationId": "V2CompetitionStandingsView",
        "parameters": [
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CompetitionStandingsViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Competitions"
        ]
      }
    },
    "/countries": {
      "get": {
        "operationId": "listCountries",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Country"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List countries",
        "tags": [
          "Reference"
        ]
      },
      "post": {
        "operationId": "V2CreateCountry",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CountryBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateCountryCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateCountry inserts a country.",
        "tags": [
          "Countries"
        ]
      }
    },
    "/countries/{countrySlug}": {
      "get": {
        "operationId": "getCountry",
        "parameters": [
          {
            "in": "path",
            "name": "countrySlug",
            "required": true,
            "schema": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Country"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a country",
        "tags": [
          "Reference"
        ]
      },
      "put": {
        "operationId": "V2UpdateCountry",
        "parameters": [
          {
            "in": "path",
            "name": "countrySlug",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CountryBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateCountry updates a country.",
        "tags": [
          "Countries"
        ]
      }
    },
    "/data-coverage/fixtures": {
      "get": {
        "operationId": "V2DataVisualizerEvents",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "date",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "endDate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startDate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "coverage",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortBy",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortOrder",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DataVisualizerResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2DataVisualizerEvents serves database-paged ingestion-health rows.",
        "tags": [
          "Data coverage"
        ]
      }
    },
    "/data-coverage/fixtures-view": {
      "get": {
        "operationId": "V2DataCoverageView",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "date",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "endDate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startDate",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DataCoverageViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Data coverage"
        ]
      }
    },
    "/data-coverage/fixtures/by-id": {
      "get": {
        "operationId": "V2DataVisualizerByIDs",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "eventIds",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DataVisualizerByIDsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2DataVisualizerByIDs serves ingestion coverage for an explicit set of fixtures, where /data-coverage/fixtures serves a filtered page of them.",
        "tags": [
          "Data coverage"
        ]
      }
    },
    "/data-coverage/summary": {
      "get": {
        "operationId": "V2DataVisualizerSummary",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "date",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "endDate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startDate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "coverage",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "excludeUnsupported",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2DataVisualizerSummaryResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2DataVisualizerSummary serves aggregate ingestion health without returning every event.",
        "tags": [
          "Data coverage"
        ]
      }
    },
    "/editorial/previews/by-slug/{slug}": {
      "get": {
        "operationId": "V2PreviewBySlug",
        "parameters": [
          {
            "in": "path",
            "name": "slug",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": true,
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Editorial"
        ]
      }
    },
    "/editorial/tweets/recent": {
      "get": {
        "operationId": "V2RecentTweets",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "since",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TweetsRecentResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          },
          "504": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Gateway Timeout"
          }
        },
        "summary": "V2RecentTweets serves the cached editorial mentions feed.",
        "tags": [
          "Editorial"
        ]
      }
    },
    "/fixture-months/{month}": {
      "get": {
        "operationId": "getFixtureMonth",
        "parameters": [
          {
            "description": "Local calendar month in YYYY-MM format",
            "in": "path",
            "name": "month",
            "required": true,
            "schema": {
              "pattern": "^[0-9]{4}-(0[1-9]|1[0-2])$",
              "type": "string"
            }
          },
          {
            "description": "IANA time zone used to calculate local day and month boundaries",
            "in": "query",
            "name": "timeZone",
            "required": true,
            "schema": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FixtureMonth"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a compact fixture month for the Matches calendar",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixture-scopes/next-by-team": {
      "get": {
        "operationId": "getNextFixturesByTeam",
        "parameters": [
          {
            "description": "Teams to resolve, with at most one fixture returned for each; at most 100",
            "in": "query",
            "name": "teamIds",
            "required": true,
            "schema": {
              "maxLength": 4096,
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,99}$",
              "type": "string"
            }
          },
          {
            "description": "Upcoming horizon in days",
            "in": "query",
            "name": "days",
            "schema": {
              "maximum": 60,
              "minimum": 1,
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2NextFixtureByTeam"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get each requested team's next visible fixture",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixture-scopes/upcoming": {
      "get": {
        "operationId": "getUpcomingFixtureScope",
        "parameters": [
          {
            "description": "Inclusive fixture-window lower bound",
            "in": "query",
            "name": "kickoffFrom",
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "Exclusive fixture-window upper bound, at most eight days after kickoffFrom",
            "in": "query",
            "name": "kickoffTo",
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "Optional comma-separated competition IDs that narrow fixtures and teams without narrowing competition facets",
            "in": "query",
            "name": "competitionIds",
            "schema": {
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,49}$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2UpcomingFixtureScope"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get the compact upcoming fixture scope for analytical tools",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures": {
      "get": {
        "operationId": "listFixtures",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by competition",
            "in": "query",
            "name": "competitionId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of up to 50 competition IDs. Cannot be combined with competitionId",
            "in": "query",
            "name": "competitionIds",
            "schema": {
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,49}$",
              "type": "string"
            }
          },
          {
            "description": "Filter by season",
            "in": "query",
            "name": "seasonId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by competition phase",
            "in": "query",
            "name": "phaseId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by round number",
            "in": "query",
            "name": "round",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by either participating team",
            "in": "query",
            "name": "teamId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of up to 20 team IDs; matches fixtures where any listed team plays on either side. Cannot be combined with teamId",
            "in": "query",
            "name": "teamIds",
            "schema": {
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,19}$",
              "type": "string"
            }
          },
          {
            "description": "Filter by referee",
            "in": "query",
            "name": "refereeId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Canonical fixture status",
            "in": "query",
            "name": "status",
            "schema": {
              "enum": [
                "scheduled",
                "live",
                "finished",
                "postponed",
                "cancelled",
                "unknown"
              ],
              "type": "string"
            }
          },
          {
            "description": "Inclusive kickoff lower bound",
            "in": "query",
            "name": "kickoffFrom",
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "Exclusive kickoff upper bound",
            "in": "query",
            "name": "kickoffTo",
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "When true, include only fixtures in phases marked for display",
            "in": "query",
            "name": "visibleOnly",
            "schema": {
              "enum": [
                "true",
                "false"
              ],
              "type": "string"
            }
          },
          {
            "description": "Kickoff order",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "kickoffAt",
                "-kickoffAt"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Fixture"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List fixtures",
        "tags": [
          "Fixtures"
        ]
      },
      "post": {
        "operationId": "V2CreateFixture",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Events"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateFixtureCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateFixture inserts a fixture.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures-view": {
      "get": {
        "operationId": "V2FixtureDirectoryView",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "offset",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureDirectoryViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures view"
        ]
      }
    },
    "/fixtures/commentary-statistics": {
      "get": {
        "operationId": "listCommentaryStatistics",
        "parameters": [
          {
            "description": "Comma-separated fixture IDs; at most 50",
            "in": "query",
            "name": "fixtureIds",
            "required": true,
            "schema": {
              "maxLength": 1024,
              "minLength": 1,
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*)*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2CommentaryPlayerStatistic"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List commentary-derived player statistics for several fixtures",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/counts-by-date": {
      "get": {
        "operationId": "V2FixtureCountsByDate",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "dates",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureCountsByDateOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureCountsByDate serves how many fixtures fall on each requested date, which is what a calendar strip needs before it has any fixtures.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/extra-statistics": {
      "post": {
        "operationId": "V2FixtureExtraStatisticsBatch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2FixtureExtraStatisticsBatchInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureExtraStatisticsBatchOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/lineup-analysis": {
      "get": {
        "operationId": "V2FixtureLineupAnalysis",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "matchId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureLineupAnalysisOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2FixtureLineupAnalysis serves the analysis attached to a lineup.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/lineup-preview": {
      "get": {
        "operationId": "V2FixtureLineupPreview",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "matchId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureLineupPreviewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2FixtureLineupPreview serves the lineup board's preview rows.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/lineup-status": {
      "get": {
        "operationId": "V2FixtureLineupStatus",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "ids",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureLineupStatusOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureLineupStatus serves whether each requested fixture has a confirmed or a predicted lineup yet.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/live-scores": {
      "get": {
        "operationId": "listFixtureLiveScores",
        "parameters": [
          {
            "description": "Comma-separated list of up to 200 fixture IDs",
            "in": "query",
            "name": "ids",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,199}$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2FixtureLiveScore"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List current score overlays for fixtures in play",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/team-odds": {
      "get": {
        "operationId": "V2FixtureBulkTeamOdds",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "eventIds",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureBulkTeamOddsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureBulkTeamOdds serves team odds for many fixtures in one request.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}": {
      "get": {
        "operationId": "getFixture",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Fixture"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a fixture",
        "tags": [
          "Fixtures"
        ]
      },
      "put": {
        "operationId": "V2UpdateFixture",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Events"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2UpdateFixtureOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateFixture updates a fixture.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/ai-analysis": {
      "get": {
        "operationId": "V2StoredFixtureAIAnalysis",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "Authorization",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "Cookie",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "contentEncoding": "base64",
                  "type": "string"
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2StoredFixtureAIAnalysis serves the latest stored report as a fixture subresource. Its event identifier belongs in the URL, so clients do not need a legacy POST body to perform a read.",
        "tags": [
          "Fixtures"
        ]
      },
      "post": {
        "operationId": "V2GenerateFixtureAIAnalysis",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "Cookie",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AiAnalysisRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "contentEncoding": "base64",
                  "type": "string"
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2GenerateFixtureAIAnalysis streams a freshly generated fixture report.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/bet-builder-lineups": {
      "get": {
        "operationId": "V2FixtureBetBuilderLineups",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BetBuilderLineupsResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureBetBuilderLineups returns both starting elevens after applying the product's confirmed, predicted, then last-match fallback on the server.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/commentary-statistics": {
      "get": {
        "operationId": "listFixtureCommentaryStatistics",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2CommentaryPlayerStatistic"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List commentary-derived player statistics for a fixture",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/expected-cards": {
      "get": {
        "operationId": "V2FixtureExpectedCards",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureExpectedCardsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureExpectedCards serves the modelled card expectation for a fixture.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/extra-statistics": {
      "get": {
        "operationId": "V2FixtureExtraStatistics",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureExtraStatisticsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/formations": {
      "get": {
        "operationId": "getFixtureFormations",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FixtureFormations"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get the expected shape of both sides",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/heatmap-view": {
      "get": {
        "operationId": "V2FixtureHeatmapView",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "awayTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "homeTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureHeatmapViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/incidents": {
      "get": {
        "operationId": "listFixtureIncidents",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2FixtureIncident"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List fixture timeline incidents",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/lineups": {
      "get": {
        "operationId": "getFixtureLineup",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FixtureLineup"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get the latest fixture lineup",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/odds": {
      "get": {
        "operationId": "listFixtureOdds",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2OddsSnapshot"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List current fixture odds snapshots",
        "tags": [
          "Betting"
        ]
      }
    },
    "/fixtures/{fixtureId}/odds-comparison-view": {
      "get": {
        "operationId": "V2FixtureOddsComparisonView",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "awayTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "homeTeam",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureOddsComparisonViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/odds-movements": {
      "get": {
        "operationId": "listFixtureOddsMovements",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by bookmaker",
            "in": "query",
            "name": "bookmakerId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by market",
            "in": "query",
            "name": "market",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Filter by period",
            "in": "query",
            "name": "period",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2OddsMovement"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List fixture price movements",
        "tags": [
          "Betting"
        ]
      }
    },
    "/fixtures/{fixtureId}/overview": {
      "get": {
        "operationId": "V2FixtureOverview",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {},
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/player-heatmaps": {
      "get": {
        "operationId": "listFixturePlayerHeatmaps",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2FixturePlayerHeatmap"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List fixture player heatmaps",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/player-odds": {
      "get": {
        "operationId": "listFixturePlayerOdds",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "The team whose squad is priced; must play in this fixture",
            "in": "query",
            "name": "teamId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Restrict to one player prop market; omit for every market",
            "in": "query",
            "name": "market",
            "schema": {
              "enum": [
                "anytimeGoalscorer",
                "assists",
                "cards",
                "expectedAssists",
                "expectedGoals",
                "fouls",
                "foulsCommitted",
                "foulsWon",
                "goalAssist",
                "goals",
                "headedShotOnTarget",
                "headedShotsOnTarget",
                "onTargetScoringAttempt",
                "passes",
                "scoreOrAssist",
                "scoredOrAssisted",
                "shots",
                "shotsOnTarget",
                "shotsOnTargetOutsideBox",
                "tackles",
                "totalPass",
                "totalTackle",
                "wasFouled",
                "xGxA",
                "yellowCard"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PlayerPropMarket"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List one team's priced player props",
        "tags": [
          "Betting"
        ]
      }
    },
    "/fixtures/{fixtureId}/player-statistics": {
      "get": {
        "operationId": "listFixturePlayerStatistics",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2FixturePlayerStatistic"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List fixture player performances",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/players-view": {
      "get": {
        "operationId": "V2FixturePlayersView",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "awayTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "homeTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixturePlayersViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/predicted-formations": {
      "get": {
        "operationId": "V2FixturePredictedFormations",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixturePredictedFormationsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/predicted-lineups": {
      "get": {
        "operationId": "V2FixturePredictedLineups",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixturePredictedLineupsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixturePredictedLineups serves the projected starting elevens for a fixture, as rows rather than as a formation string.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/profile": {
      "get": {
        "operationId": "V2FixtureProfile",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {},
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureProfile preserves the complete legacy event-detail contract for detail screens while they migrate onto the v2 namespace.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/shots": {
      "get": {
        "operationId": "getFixtureShotMap",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FixtureShotMap"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get fixture shots and expected-goals summary",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/shots-model": {
      "get": {
        "operationId": "V2FixtureShotsModel",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "gameRange",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "stat",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureShotsModelOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureShotsModel serves the team shots model for a fixture.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/shots-model-odds": {
      "get": {
        "operationId": "V2FixtureShotsModelOdds",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "gameRange",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "stat",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureShotsModelOddsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureShotsModelOdds serves the shots model priced against the market.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/statistics": {
      "get": {
        "operationId": "listFixtureStatistics",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2FixtureStatistic"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List fixture team statistics",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/team-lineup-view": {
      "get": {
        "operationId": "V2FixtureTeamLineupView",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "heatmap",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startingLineup",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureTeamLineupViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/team-odds": {
      "get": {
        "operationId": "V2FixtureTeamOdds",
        "parameters": [
          {
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureTeamOddsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureTeamOdds serves the 1X2 and derived team markets for a fixture.",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/fixtures/{fixtureId}/unavailability": {
      "get": {
        "operationId": "getFixtureUnavailability",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FixtureUnavailability"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get active fixture injuries and suspensions",
        "tags": [
          "Fixtures"
        ]
      }
    },
    "/home/today": {
      "get": {
        "operationId": "getHomeToday",
        "parameters": [
          {
            "description": "IANA time zone used to calculate the current local day",
            "in": "query",
            "name": "timeZone",
            "required": true,
            "schema": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2HomeToday"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get the ranked local-day snapshot for Home",
        "tags": [
          "Home"
        ]
      }
    },
    "/images": {
      "get": {
        "operationId": "V2Images",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "type",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ImagesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Images resolves an image by the entity it belongs to.",
        "tags": [
          "Images"
        ]
      },
      "post": {
        "operationId": "V2IngestImage",
        "parameters": [
          {
            "in": "header",
            "name": "Authorization",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2IngestImageInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2IngestImage stores an image against an entity.",
        "tags": [
          "Images"
        ]
      }
    },
    "/images/{imageId}": {
      "get": {
        "operationId": "V2Image",
        "parameters": [
          {
            "in": "path",
            "name": "imageId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "type",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ImageOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Image resolves one stored image to its URL.",
        "tags": [
          "Images"
        ]
      }
    },
    "/incidents": {
      "get": {
        "operationId": "V2Incidents",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/Incidents"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Incidents serves the incident reference table. It is the whole table; /fixtures/{fixtureId}/incidents is the timeline of one fixture.",
        "tags": [
          "Incidents"
        ]
      },
      "post": {
        "operationId": "V2CreateIncident",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IncidentBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateIncidentCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateIncident inserts an incident.",
        "tags": [
          "Incidents"
        ]
      }
    },
    "/incidents/{incidentId}": {
      "get": {
        "operationId": "V2Incident",
        "parameters": [
          {
            "in": "path",
            "name": "incidentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Incidents"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Incident serves one incident row.",
        "tags": [
          "Incidents"
        ]
      },
      "put": {
        "operationId": "V2UpdateIncident",
        "parameters": [
          {
            "in": "path",
            "name": "incidentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IncidentBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateIncident updates an incident.",
        "tags": [
          "Incidents"
        ]
      }
    },
    "/lineup-projections": {
      "get": {
        "operationId": "V2LineupsPlayers",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "positionChangesOnly",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "games",
            "schema": {
              "items": {
                "format": "int64",
                "type": "integer"
              },
              "type": [
                "array",
                "null"
              ]
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentIds",
            "schema": {
              "items": {
                "format": "int64",
                "type": "integer"
              },
              "type": [
                "array",
                "null"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2LineupsResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2LineupsPlayers ranks and pages starter keys in SQL, projects only the requested page, and loads position history only for players on that page.",
        "tags": [
          "Lineup projections"
        ]
      }
    },
    "/managers": {
      "get": {
        "operationId": "listManagers",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Filter by country",
            "in": "query",
            "name": "countrySlug",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Manager"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List managers",
        "tags": [
          "Managers"
        ]
      },
      "post": {
        "operationId": "V2CreateManager",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2CreateManagerInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateManagerCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateManager inserts a manager.",
        "tags": [
          "Managers"
        ]
      }
    },
    "/managers/{managerId}": {
      "get": {
        "operationId": "getManager",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "managerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Manager"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a manager",
        "tags": [
          "Managers"
        ]
      },
      "put": {
        "operationId": "V2UpdateManager",
        "parameters": [
          {
            "in": "path",
            "name": "managerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2UpdateManagerInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateManager updates a manager.",
        "tags": [
          "Managers"
        ]
      }
    },
    "/matchday-fixtures": {
      "get": {
        "operationId": "V2FixtureDays",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "endOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "upcomingOnly",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2FixtureDayResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2FixtureDays serves a compact, filtered fixture page for the matchday board.",
        "tags": [
          "Matchday fixtures"
        ]
      }
    },
    "/matchday-fixtures-view": {
      "get": {
        "operationId": "V2MatchdayFixturesView",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "endOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "upcomingOnly",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2MatchdayFixturesViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2MatchdayFixturesView preserves the complete legacy fixture-day rows.",
        "tags": [
          "Matchday fixtures view"
        ]
      }
    },
    "/matches/recent": {
      "get": {
        "operationId": "V2RecentMatches",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "days_back",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "league",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2RecentMatchesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2RecentMatches serves the recently finished fixtures feed.",
        "tags": [
          "Matches"
        ]
      }
    },
    "/me": {
      "get": {
        "operationId": "getCurrentAccount",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Account"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Get the authenticated account",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/alert-preferences": {
      "delete": {
        "operationId": "disableAlerts",
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Switch live alerts off without discarding the preferences",
        "tags": [
          "Alerts"
        ]
      },
      "get": {
        "operationId": "getAlertPreferences",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2AlertPreferences"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Get the caller's live alert preferences",
        "tags": [
          "Alerts"
        ]
      },
      "patch": {
        "operationId": "updateAlertPreferences",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "lines": {
                    "$ref": "#/components/schemas/V2AlertLinesUpdate"
                  },
                  "mutedCompetitions": {
                    "items": {
                      "type": "string"
                    },
                    "type": [
                      "array",
                      "null"
                    ]
                  }
                },
                "required": [
                  "lines",
                  "mutedCompetitions"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2AlertPreferences"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Update the caller's live alert preferences",
        "tags": [
          "Alerts"
        ]
      }
    },
    "/me/alert-preferences-view": {
      "delete": {
        "operationId": "V2AlertPreferencesViewDelete",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2AlertPreferencesViewDeleteInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AlertPreferencesViewDeleteOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "get": {
        "operationId": "V2AlertPreferencesViewGet",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AlertPreferencesViewGetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "patch": {
        "operationId": "V2AlertPreferencesViewPatch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2AlertPreferencesViewPatchInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AlertPreferencesViewPatchOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      }
    },
    "/me/alert-preferences/competitions": {
      "get": {
        "operationId": "V2AlertPreferenceCompetitions",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2AlertPreferenceCompetitionsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2AlertPreferenceCompetitions lists competitions available to live alerts.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/bankrolls": {
      "get": {
        "operationId": "listBankrolls",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Bankroll"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "List the caller's bankrolls",
        "tags": [
          "Bet tracker"
        ]
      },
      "post": {
        "operationId": "createBankroll",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "currency": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "makeDefault": {
                    "type": [
                      "boolean",
                      "null"
                    ]
                  },
                  "mode": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "name": {
                    "type": "string"
                  },
                  "startingBalance": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "unitValue": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  }
                },
                "required": [
                  "name",
                  "mode",
                  "currency",
                  "unitValue",
                  "startingBalance",
                  "makeDefault"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Bankroll"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Open a bankroll",
        "tags": [
          "Bet tracker"
        ]
      }
    },
    "/me/bankrolls-view": {
      "delete": {
        "operationId": "V2BankrollsViewDelete",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": {},
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BankrollsViewDeleteOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "get": {
        "operationId": "V2BankrollsViewGet",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BankrollsViewGetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "patch": {
        "operationId": "V2BankrollsViewPatch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": {},
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BankrollsViewPatchOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "post": {
        "operationId": "V2BankrollsViewPost",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": {},
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BankrollsViewPostOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      }
    },
    "/me/bankrolls/{bankrollId}": {
      "delete": {
        "operationId": "deleteBankroll",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "bankrollId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Close a bankroll",
        "tags": [
          "Bet tracker"
        ]
      },
      "patch": {
        "operationId": "updateBankroll",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "bankrollId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "currency": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "makeDefault": {
                    "type": [
                      "boolean",
                      "null"
                    ]
                  },
                  "mode": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "name": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "startingBalance": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "unitValue": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  }
                },
                "required": [
                  "name",
                  "mode",
                  "currency",
                  "unitValue",
                  "startingBalance",
                  "makeDefault"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Bankroll"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Update a bankroll",
        "tags": [
          "Bet tracker"
        ]
      }
    },
    "/me/bet-tracker-settings": {
      "get": {
        "operationId": "getBetTrackerSettings",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2BetTrackerSettings"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Get the caller's stake settings and tag vocabulary",
        "tags": [
          "Bet tracker"
        ]
      },
      "put": {
        "operationId": "replaceBetTrackerSettings",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "currency": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "stakeMode": {
                    "type": "string"
                  },
                  "unitValue": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  }
                },
                "required": [
                  "stakeMode",
                  "currency",
                  "unitValue"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2BetTrackerSettings"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Replace the caller's stake settings",
        "tags": [
          "Bet tracker"
        ]
      }
    },
    "/me/bet-tracker-settings-view": {
      "get": {
        "operationId": "V2BetTrackerSettingsViewGet",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BetTrackerSettingsViewGetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "put": {
        "operationId": "V2BetTrackerSettingsViewPut",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2BetTrackerSettingsViewPutInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2BetTrackerSettingsViewPutOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      }
    },
    "/me/favorite-players": {
      "get": {
        "operationId": "listFavoritePlayers",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PlayerFavorite"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "List the caller's favorite players",
        "tags": [
          "Account"
        ]
      },
      "post": {
        "operationId": "createFavoritePlayer",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "notes": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "required": [
                  "id",
                  "notes"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FavoriteReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FavoriteReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Save a player",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/favorite-players/{playerId}": {
      "delete": {
        "operationId": "deleteFavoritePlayer",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Remove a favorite player",
        "tags": [
          "Account"
        ]
      },
      "patch": {
        "operationId": "updateFavoritePlayer",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "notes": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "required": [
                  "notes"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FavoriteNotes"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Update favorite player notes",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/favorite-teams": {
      "get": {
        "operationId": "listFavoriteTeams",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2TeamFavorite"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "List the caller's favorite teams",
        "tags": [
          "Account"
        ]
      },
      "post": {
        "operationId": "createFavoriteTeam",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "notes": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "required": [
                  "id",
                  "notes"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FavoriteReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FavoriteReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Save a team",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/favorite-teams/{teamId}": {
      "delete": {
        "operationId": "deleteFavoriteTeam",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Remove a favorite team",
        "tags": [
          "Account"
        ]
      },
      "patch": {
        "operationId": "updateFavoriteTeam",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "notes": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "required": [
                  "notes"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2FavoriteNotes"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Update favorite team notes",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/prop-watchlist": {
      "get": {
        "operationId": "listPropWatchlist",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PropWatchlistEntry"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "List the caller's saved prop selections",
        "tags": [
          "Watchlists"
        ]
      },
      "post": {
        "operationId": "createPropWatchlistEntry",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "propId": {
                    "type": "string"
                  }
                },
                "required": [
                  "propId"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2WatchlistEntryReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2WatchlistEntryReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Save a prop selection",
        "tags": [
          "Watchlists"
        ]
      }
    },
    "/me/prop-watchlist-view": {
      "delete": {
        "operationId": "V2PropWatchlistViewDelete",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "screenerId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2PropWatchlistViewDelete preserves deleting by screener id in the query.",
        "tags": [
          "Account"
        ]
      },
      "get": {
        "operationId": "V2PropWatchlistViewGet",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PropWatchlistViewGetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2PropWatchlistViewGet preserves the expanded legacy prop-watchlist rows.",
        "tags": [
          "Account"
        ]
      },
      "post": {
        "operationId": "V2PropWatchlistViewPost",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2PropWatchlistViewPostInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2PropWatchlistViewPost preserves saving by screener id in the request body.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/prop-watchlist/{entryId}": {
      "delete": {
        "operationId": "deletePropWatchlistEntry",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "entryId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Remove a saved prop selection",
        "tags": [
          "Watchlists"
        ]
      }
    },
    "/me/saved-picks": {
      "get": {
        "operationId": "listSavedPicks",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2SavedPick"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "List the caller's saved picks from every tool",
        "tags": [
          "Saved picks"
        ]
      },
      "post": {
        "operationId": "createSavedPick",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "awayTeamId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "awayTeamName": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "bookmakerAtSave": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "direction": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "homeTeamId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "homeTeamName": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "kickoffAt": {
                    "format": "date-time",
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "leagueId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "leagueName": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "line": {
                    "format": "double",
                    "type": "number"
                  },
                  "marketLabel": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "marketType": {
                    "type": "string"
                  },
                  "matchId": {
                    "type": "string"
                  },
                  "matchInternalId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "matchSlug": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "oddsAtSave": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "sourceTool": {
                    "type": "string"
                  },
                  "subjectId": {
                    "type": "string"
                  },
                  "subjectName": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "subjectType": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "teamId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "teamName": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "required": [
                  "sourceTool",
                  "subjectId",
                  "matchId",
                  "marketType",
                  "line"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2SavedPickReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2SavedPickReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "429": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Too Many Requests"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Save a pick from one tool",
        "tags": [
          "Saved picks"
        ]
      }
    },
    "/me/saved-picks/{pickKey}": {
      "delete": {
        "operationId": "deleteSavedPick",
        "parameters": [
          {
            "description": "The pick's key, as returned by the list: subjectType:subjectId:marketType:matchId:line:direction.",
            "in": "path",
            "name": "pickKey",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Remove a saved pick, from whichever list holds it",
        "tags": [
          "Saved picks"
        ]
      }
    },
    "/me/saved-screener-filters": {
      "delete": {
        "operationId": "V2RemoveSavedScreenerFilter",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2RemoveSavedScreenerFilter deletes a saved filter set.",
        "tags": [
          "Account"
        ]
      },
      "get": {
        "operationId": "V2SavedScreenerFilters",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "type",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2SavedScreenerFiltersOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2SavedScreenerFilters serves the caller's saved screener filter sets.",
        "tags": [
          "Account"
        ]
      },
      "post": {
        "operationId": "V2CreateSavedScreenerFilter",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2CreateSavedScreenerFilterInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateSavedScreenerFilterCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2CreateSavedScreenerFilter saves a filter set.",
        "tags": [
          "Account"
        ]
      },
      "put": {
        "operationId": "V2UpdateSavedScreenerFilter",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2UpdateSavedScreenerFilterInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2UpdateSavedScreenerFilterOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2UpdateSavedScreenerFilter rewrites a saved filter set.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/subscription": {
      "get": {
        "operationId": "V2Subscription",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2SubscriptionOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2Subscription serves the authenticated caller's billing state.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/subscription/billing-portal": {
      "post": {
        "operationId": "V2CreateBillingPortalSession",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateBillingPortalSessionOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2CreateBillingPortalSession creates a one-time billing portal link.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/subscription/cancel": {
      "post": {
        "operationId": "V2CancelSubscription",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CancelSubscriptionOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2CancelSubscription schedules cancellation at the paid period's end.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/subscription/checkout-session": {
      "post": {
        "operationId": "V2CreateCheckoutSession",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2CreateCheckoutSessionInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateCheckoutSessionOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2CreateCheckoutSession starts checkout or an existing plan change.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/subscription/pause": {
      "post": {
        "operationId": "V2PauseSubscription",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2PauseSubscriptionInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PauseSubscriptionOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2PauseSubscription pauses collection for the requested supported duration.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/subscription/resume": {
      "post": {
        "operationId": "V2ResumeSubscription",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ResumeSubscriptionOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ResumeSubscription removes an active billing pause.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/subscription/retention-discount": {
      "post": {
        "operationId": "V2ApplySubscriptionRetentionDiscount",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ApplySubscriptionRetentionDiscountOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ApplySubscriptionRetentionDiscount grants the cancellation-flow offer.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/tracked-bets": {
      "get": {
        "operationId": "listTrackedBets",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by settlement status",
            "in": "query",
            "name": "status",
            "schema": {
              "enum": [
                "pending",
                "won",
                "lost",
                "void"
              ],
              "type": "string"
            }
          },
          {
            "description": "Filter by bankroll",
            "in": "query",
            "name": "bankrollId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2TrackedBet"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "List the caller's tracked bets",
        "tags": [
          "Bet tracker"
        ]
      },
      "post": {
        "operationId": "createTrackedBet",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "bankrollId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "betType": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "bookmakerId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "direction": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "fixtureId": {
                    "type": "string"
                  },
                  "line": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "marketType": {
                    "type": "string"
                  },
                  "modelName": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "notes": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "oddsTaken": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "playerId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "source": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "stake": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "tags": {
                    "items": {
                      "type": "string"
                    },
                    "type": [
                      "array",
                      "null"
                    ]
                  },
                  "teamId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "teamSide": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "required": [
                  "fixtureId",
                  "betType",
                  "playerId",
                  "teamId",
                  "teamSide",
                  "marketType",
                  "line",
                  "direction",
                  "oddsTaken",
                  "stake",
                  "bookmakerId",
                  "bankrollId",
                  "source",
                  "modelName",
                  "tags",
                  "notes"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2TrackedBet"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Record a bet",
        "tags": [
          "Bet tracker"
        ]
      }
    },
    "/me/tracked-bets-view": {
      "delete": {
        "operationId": "V2TrackedBetsViewDelete",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TrackerBetUpdateBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TrackedBetsViewDeleteOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "get": {
        "operationId": "V2TrackedBetsViewGet",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TrackedBetsViewGetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "patch": {
        "operationId": "V2TrackedBetsViewPatch",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TrackerBetUpdateBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TrackedBetsViewPatchOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      },
      "post": {
        "operationId": "V2TrackedBetsViewPost",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TrackerBetUpdateBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TrackedBetsViewPostOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "tags": [
          "Account"
        ]
      }
    },
    "/me/tracked-bets/summary": {
      "get": {
        "operationId": "getTrackedBetSummary",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2TrackedBetSummary"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Get the caller's account-wide tracker performance",
        "tags": [
          "Bet tracker"
        ]
      }
    },
    "/me/tracked-bets/{betId}": {
      "delete": {
        "operationId": "deleteTrackedBet",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "betId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Remove a tracked bet",
        "tags": [
          "Bet tracker"
        ]
      },
      "patch": {
        "operationId": "updateTrackedBet",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "betId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "actualResult": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "bankrollId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "bookmakerId": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "notes": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "oddsTaken": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "source": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "stake": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "status": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "tags": {
                    "items": {
                      "type": "string"
                    },
                    "type": [
                      "array",
                      "null"
                    ]
                  }
                },
                "required": [
                  "status",
                  "stake",
                  "oddsTaken",
                  "actualResult",
                  "bookmakerId",
                  "bankrollId",
                  "source",
                  "tags",
                  "notes"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2TrackedBet"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Settle or edit a tracked bet",
        "tags": [
          "Bet tracker"
        ]
      }
    },
    "/me/value-bet-lineup-alerts": {
      "delete": {
        "operationId": "V2RemoveValueBetLineupAlert",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2RemoveValueBetLineupAlertInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2RemoveValueBetLineupAlertOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2RemoveValueBetLineupAlert disarms one.",
        "tags": [
          "Account"
        ]
      },
      "get": {
        "operationId": "V2ValueBetLineupAlerts",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ValueBetLineupAlertsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ValueBetLineupAlerts serves the caller's lineup alerts on value bets.",
        "tags": [
          "Account"
        ]
      },
      "post": {
        "operationId": "V2CreateValueBetLineupAlert",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2CreateValueBetLineupAlertInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateValueBetLineupAlertOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2CreateValueBetLineupAlert arms a lineup alert on a value bet.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/value-bet-watchlist": {
      "get": {
        "operationId": "listValueBetWatchlist",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2ValueBetWatchlistEntry"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "List the caller's saved value-bet selections",
        "tags": [
          "Watchlists"
        ]
      },
      "post": {
        "operationId": "createValueBetWatchlistEntry",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "fixtureId": {
                    "type": "string"
                  },
                  "line": {
                    "format": "double",
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "marketType": {
                    "type": "string"
                  },
                  "playerId": {
                    "type": "string"
                  }
                },
                "required": [
                  "fixtureId",
                  "playerId",
                  "marketType",
                  "line"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2WatchlistEntryReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2WatchlistEntryReference"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Save a value-bet selection",
        "tags": [
          "Watchlists"
        ]
      }
    },
    "/me/value-bet-watchlist-view": {
      "delete": {
        "operationId": "V2ValueBetWatchlistViewDelete",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "line",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "marketType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "matchId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "playerId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ValueBetWatchlistViewDelete preserves deleting by the legacy selection query.",
        "tags": [
          "Account"
        ]
      },
      "get": {
        "operationId": "V2ValueBetWatchlistViewGet",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ValueBetWatchlistViewGetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ValueBetWatchlistViewGet preserves the expanded legacy value-bet rows.",
        "tags": [
          "Account"
        ]
      },
      "post": {
        "operationId": "V2ValueBetWatchlistViewPost",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2ValueBetWatchlistViewPostInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ValueBetWatchlistViewPost preserves saving by the legacy selection body.",
        "tags": [
          "Account"
        ]
      }
    },
    "/me/value-bet-watchlist/{entryId}": {
      "delete": {
        "operationId": "deleteValueBetWatchlistEntry",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "entryId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Remove a saved value-bet selection",
        "tags": [
          "Watchlists"
        ]
      }
    },
    "/models": {
      "get": {
        "operationId": "V2Models",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ModelsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Models serves the registered prediction models.",
        "tags": [
          "Models"
        ]
      },
      "post": {
        "operationId": "V2CreateModel",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ModelBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Models"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateModel registers a prediction model.",
        "tags": [
          "Models"
        ]
      }
    },
    "/models/{modelId}": {
      "delete": {
        "operationId": "V2DeleteModel",
        "parameters": [
          {
            "in": "path",
            "name": "modelId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2DeleteModel removes a prediction model.",
        "tags": [
          "Models"
        ]
      },
      "get": {
        "operationId": "V2Model",
        "parameters": [
          {
            "in": "path",
            "name": "modelId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Models"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Model serves one prediction model.",
        "tags": [
          "Models"
        ]
      },
      "put": {
        "operationId": "V2UpdateModel",
        "parameters": [
          {
            "in": "path",
            "name": "modelId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ModelBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Models"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Conflict"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateModel updates a prediction model.",
        "tags": [
          "Models"
        ]
      }
    },
    "/odds/card-odds": {
      "post": {
        "operationId": "V2CardOddsBatch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2CardOddsBatchInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {
                    "$ref": "#/components/schemas/BatchCardOdds"
                  },
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CardOddsBatch serves card prices for many fixtures at once.",
        "tags": [
          "Odds"
        ]
      }
    },
    "/phases": {
      "get": {
        "operationId": "V2Phases",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "days",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "withinHours",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "upcomingFixtures",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhasesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Phases serves the visible phase directory, optionally narrowed to phases with fixtures in an upcoming window.",
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/upcoming-fixtures": {
      "post": {
        "operationId": "V2PhaseUpcomingFixtures",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpcomingMultiBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseUpcomingFixturesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PhaseUpcomingFixtures serves the next fixtures across many phases at once. The ids are a list, which is why it is a POST.",
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/{phaseId}": {
      "get": {
        "operationId": "getCompetitionPhase",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2CompetitionPhase"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a competition phase",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/phases/{phaseId}/overview": {
      "get": {
        "operationId": "V2PhaseOverviewView",
        "parameters": [
          {
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "leagueId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseOverviewViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PhaseOverviewView serves a phase overview. leagueId is the public phase id, like every v2 id.",
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/{phaseId}/seasons": {
      "get": {
        "operationId": "V2PhaseSeasons",
        "parameters": [
          {
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseSeasonsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PhaseSeasons serves the seasons a phase has run in.",
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/{phaseId}/seasons/{seasonId}/fixtures": {
      "get": {
        "operationId": "V2PhaseSeasonFixtures",
        "parameters": [
          {
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseSeasonFixturesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PhaseSeasonFixtures serves the next scheduled fixtures in a phase and season.",
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/{phaseId}/seasons/{seasonId}/player-rankings": {
      "get": {
        "operationId": "V2PhaseSeasonPlayerRankings",
        "parameters": [
          {
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseSeasonPlayerRankingsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PhaseSeasonPlayerRankings serves the phase's player-statistics table.",
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/{phaseId}/seasons/{seasonId}/rounds": {
      "get": {
        "operationId": "listPhaseSeasonRounds",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2CompetitionRound"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List rounds in a competition phase and season",
        "tags": [
          "Competitions"
        ]
      }
    },
    "/phases/{phaseId}/seasons/{seasonId}/rounds/{round}/fixtures": {
      "get": {
        "operationId": "V2PhaseRoundFixtures",
        "parameters": [
          {
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "path",
            "name": "round",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseRoundFixturesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/{phaseId}/seasons/{seasonId}/standings": {
      "get": {
        "operationId": "V2PhaseSeasonStandings",
        "parameters": [
          {
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseSeasonStandingsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PhaseSeasonStandings serves the phase's table.",
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/{phaseId}/seasons/{seasonId}/standings/betting-trends": {
      "get": {
        "operationId": "V2PhaseSeasonBettingTrends",
        "parameters": [
          {
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseSeasonBettingTrendsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PhaseSeasonBettingTrends serves the table with each side's betting record beside its league position.",
        "tags": [
          "Phases"
        ]
      }
    },
    "/phases/{phaseId}/upcoming-fixtures": {
      "get": {
        "operationId": "V2PhaseUpcomingFixtureView",
        "parameters": [
          {
            "in": "path",
            "name": "phaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "days",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "endOfDay",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startOfDay",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PhaseUpcomingFixtureViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Phases"
        ]
      }
    },
    "/players": {
      "get": {
        "operationId": "listPlayers",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Filter by current team",
            "in": "query",
            "name": "teamId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by country",
            "in": "query",
            "name": "countrySlug",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Player"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List players",
        "tags": [
          "Players"
        ]
      },
      "post": {
        "operationId": "V2CreatePlayer",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2CreatePlayerInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreatePlayerCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreatePlayer inserts a player.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/directory": {
      "get": {
        "operationId": "V2PlayerDirectory",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "awayTeam",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "homeTeam",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerDirectoryOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerDirectory serves every player as one flat list. The designed /players collection pages and filters; this is the whole set, which is what a client building its own index wants.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/from-screener": {
      "get": {
        "operationId": "V2ScreenerPlayers",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "eventIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ScreenerPlayersOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2ScreenerPlayers serves the player directory the screener filters against.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/next-fixture-odds": {
      "get": {
        "operationId": "V2PlayerNextFixtureOdds",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "playerId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "nextFixtureId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerNextFixtureOddsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerNextFixtureOdds serves the prices on each player's next fixture.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}": {
      "get": {
        "operationId": "getPlayer",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Player"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a player",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/card-statistics": {
      "get": {
        "operationId": "V2PlayerCardStatistics",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includeNational",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerCardStatisticsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerCardStatistics serves a player's booking record.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/competition-seasons": {
      "get": {
        "operationId": "V2PlayerCompetitionSeasonView",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {
                    "$ref": "#/components/schemas/TournamentSeasonsEntry"
                  },
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/competitions/{competitionId}/seasons/{seasonId}/formation-heatmap": {
      "get": {
        "operationId": "V2PlayerFormationHeatmapView",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "formation",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerFormationHeatmapViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/competitions/{competitionId}/seasons/{seasonId}/formation-options": {
      "get": {
        "operationId": "V2PlayerFormationOptionsView",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerFormationOptionsViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/competitions/{competitionId}/seasons/{seasonId}/heatmap": {
      "get": {
        "operationId": "V2PlayerHeatmapView",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerHeatmapViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/competitions/{competitionId}/seasons/{seasonId}/percentiles": {
      "get": {
        "operationId": "V2PlayerPercentilesView",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "window",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerPercentilesViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/competitions/{competitionId}/seasons/{seasonId}/positions": {
      "get": {
        "operationId": "V2PlayerPositionsView",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerPositionsViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/competitions/{competitionId}/seasons/{seasonId}/statistics": {
      "get": {
        "operationId": "V2PlayerStatisticsView",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "competitionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerStatisticsViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/expected-cards": {
      "get": {
        "operationId": "V2PlayerExpectedCards",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "expectedMins",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includeNational",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerExpectedCardsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerExpectedCards serves the modelled card expectation for a player.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/expected-shots": {
      "get": {
        "operationId": "V2PlayerExpectedShots",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "expectedMins",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "idType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includeNational",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {},
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerExpectedShots serves the modelled shot expectation for a player.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/expected-shots-on-target": {
      "get": {
        "operationId": "V2PlayerExpectedShotsOnTarget",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "expectedMins",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "idType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includeNational",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {},
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerExpectedShotsOnTarget serves the modelled shots-on-target expectation for a player.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/overview": {
      "get": {
        "operationId": "V2PlayerOverview",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "include",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": [
                "array",
                "null"
              ]
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "idType",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlayerDetailResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/performance": {
      "get": {
        "operationId": "V2PlayerPerformance",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includeNational",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "location",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startedMatch",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerPerformanceOutputBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerPerformance serves a player's per-fixture performance rows.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/profile": {
      "get": {
        "operationId": "V2PlayerProfile",
        "parameters": [
          {
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "include",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": [
                "array",
                "null"
              ]
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "idType",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlayerDetailResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerProfile preserves the complete player-detail payload while keeping the canonical v2 provider-id policy.",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/seasons": {
      "get": {
        "operationId": "listPlayerCompetitionSeasons",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by competition",
            "in": "query",
            "name": "competitionId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PlayerCompetitionSeason"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List every season of the competitions a player's teams have played in",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/seasons/{seasonId}/formation-heatmaps": {
      "get": {
        "operationId": "listPlayerSeasonFormationHeatmaps",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by the player's team in each fixture",
            "in": "query",
            "name": "teamId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PlayerFormationHeatmap"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List a player's season heatmaps by team formation",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/seasons/{seasonId}/heatmap": {
      "get": {
        "operationId": "getPlayerSeasonHeatmap",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2PlayerSeasonHeatmap"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a player's season heatmap",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/seasons/{seasonId}/percentiles": {
      "get": {
        "operationId": "getPlayerSeasonPercentiles",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Comparison window: this season, or every competition over a rolling year",
            "in": "query",
            "name": "window",
            "schema": {
              "enum": [
                "season",
                "rolling365d"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2PlayerSeasonPercentiles"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Rank a player against positional peers",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/seasons/{seasonId}/positions": {
      "get": {
        "operationId": "getPlayerSeasonPositions",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2PlayerSeasonPositions"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a player's season starting positions",
        "tags": [
          "Players"
        ]
      }
    },
    "/players/{playerId}/seasons/{seasonId}/statistics": {
      "get": {
        "operationId": "getPlayerSeasonStatistics",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2PlayerSeasonStatistics"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a player's season statistics",
        "tags": [
          "Players"
        ]
      }
    },
    "/predictions/team-statistics": {
      "get": {
        "operationId": "V2TeamGLMPredictions",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "positiveEv",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "date",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "metric",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "X-Internal-Key",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "X-Telegram-User-Id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamGLMResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "internalAPIKey": [],
            "telegramUserID": []
          },
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2TeamGLMPredictions pages eligible fixtures in SQL before loading and pricing their bookmaker boards. In positive-EV mode, the same SQL key query evaluates the Poisson edge predicate against the stored odds JSON.",
        "tags": [
          "Predictions"
        ]
      }
    },
    "/previews/{slug}": {
      "get": {
        "operationId": "getPreview",
        "parameters": [
          {
            "in": "path",
            "name": "slug",
            "required": true,
            "schema": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Preview"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a published tipster preview and its tips",
        "tags": [
          "Editorial"
        ]
      }
    },
    "/promotions/world-cup/kickoff": {
      "get": {
        "operationId": "V2WorldCupKickoff",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2WorldCupKickoffOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2WorldCupKickoff serves the next World Cup kickoff for the countdown.",
        "tags": [
          "Promotions"
        ]
      }
    },
    "/rankings/matchup-edges": {
      "get": {
        "operationId": "V2MatchupEdges",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "debug",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "lookback",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "opponentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2MatchupEdgesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2MatchupEdges serves the matchup edge board.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/opponents": {
      "get": {
        "operationId": "V2OpponentRankings",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statType",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2OpponentRankingsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2OpponentRankings serves how each team ranks as an opponent for a statistic.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/player-cards": {
      "get": {
        "operationId": "listPlayerCardRankings",
        "parameters": [
          {
            "description": "Competition to rank within. Required: a card board spanning every competition is not a query the API will serve.",
            "in": "query",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Restrict the sample to one season of that competition",
            "in": "query",
            "name": "seasonId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Ordering; defaults to -cardsPerAppearance. Rate orderings are descending only, so that entries with no data — whose rates are null — sort last rather than first.",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "-appearances",
                "-bookedPercentage",
                "-cards",
                "-cardsPer90",
                "-cardsPerAppearance",
                "-foulsPerAppearance",
                "name"
              ],
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PlayerCardRanking"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Rank players by discipline in a competition",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/player-hit-rates": {
      "get": {
        "operationId": "V2HundredClub",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "hitRate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statTypes",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2HundredClubResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2HundredClub serves compact, database-paged perfect-hit props for upcoming fixtures.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/player-prop-trends": {
      "get": {
        "operationId": "V2PlayerTrends",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "playerId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "oddsRange.from",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "oddsRange.to",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "superSub",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "nationalOnly",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "lineup",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startedLastGame",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxLastGameWithTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "bookmakers",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "endOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "games",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "leagueIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minMinutes",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minWindow",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "positions",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sorting.column",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sorting.direction",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statTypes",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "type",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PlayerTrendsResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerTrends computes the best trend window and all eligibility filters in SQL, pages the ranked prop keys, then enriches only those selected keys.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/price-outliers": {
      "get": {
        "operationId": "V2Outliers",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includeStale",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "line",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "bookmaker",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "market",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minBookmakers",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortBy",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortOrder",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2OutliersResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Outliers computes the displayed bookmaker edge in SQL and pages ranked market keys before serializing bookmaker arrays.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/prop-candidates": {
      "get": {
        "operationId": "listPropCandidates",
        "parameters": [
          {
            "description": "Statistic to search. Required. The same key identifies the market in the odds feed, so a market the feed names differently returns no odds.",
            "in": "query",
            "name": "market",
            "required": true,
            "schema": {
              "enum": [
                "dispossessed",
                "expectedAssists",
                "expectedGoals",
                "foulInvolvements",
                "fouls",
                "goalAssist",
                "goals",
                "interceptionWon",
                "keyPass",
                "onTargetScoringAttempt",
                "possessionLostCtrl",
                "saves",
                "scoredOrAssisted",
                "shots",
                "totalCross",
                "totalOffside",
                "totalPass",
                "totalTackle",
                "wasFouled",
                "xGxA",
                "yellowCard"
              ],
              "type": "string"
            }
          },
          {
            "description": "Start of the fixture window, exclusive. Required. Form is also measured as of this instant, so a search for tomorrow does not count today.",
            "in": "query",
            "name": "kickoffFrom",
            "required": true,
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "End of the fixture window, inclusive. Required.",
            "in": "query",
            "name": "kickoffTo",
            "required": true,
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated competition phase IDs to search. Supply this or competitionIds, not both; omit both for every visible competition in the bounded fixture window.",
            "in": "query",
            "name": "phaseIds",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated canonical competition IDs. Go resolves their active phases from the fixture window. Supply this or phaseIds, not both; omit both for every visible competition in the window.",
            "in": "query",
            "name": "competitionIds",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated fixture IDs, narrowing the window",
            "in": "query",
            "name": "fixtureIds",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated player positions",
            "in": "query",
            "name": "positions",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Value an appearance must reach, greater than or equal, to count as a hit; defaults to 1. Fractional thresholds work: 0.5 selects appearances with at least one.",
            "in": "query",
            "name": "threshold",
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "How many qualifying appearances the form figures cover; defaults to 10, maximum 50.",
            "in": "query",
            "name": "window",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Minimum minutes played for an appearance to count; defaults to 1, so a named substitute who never came on is not a data point.",
            "in": "query",
            "name": "minMinutes",
            "schema": {
              "maximum": 120,
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Minimum qualifying appearances a player must have; defaults to 0.",
            "in": "query",
            "name": "minGames",
            "schema": {
              "maximum": 50,
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Restrict to home or away appearances, on both the upcoming fixture and the sample; defaults to both.",
            "in": "query",
            "name": "venue",
            "schema": {
              "enum": [
                "both",
                "home",
                "away"
              ],
              "type": "string"
            }
          },
          {
            "description": "Count only appearances made in the phases named by phaseIds; defaults to TRUE.",
            "in": "query",
            "name": "selectedPhasesOnly",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Count only appearances the player started; defaults to TRUE.",
            "in": "query",
            "name": "startedOnly",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Attach the figure of the player each substitute came on for; defaults to false. It is never folded into the candidate's own totals.",
            "in": "query",
            "name": "includeReplacedPlayer",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Compute the recent-versus-older trend; defaults to false. Sorting by -trend implies it.",
            "in": "query",
            "name": "includeTrend",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Minimum hit rate, as a percentage between 0 and 100; defaults to 0.",
            "in": "query",
            "name": "minHitRate",
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "Compare the window average against this value; defaults to 0, which disables the filter.",
            "in": "query",
            "name": "averageThreshold",
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "Direction of the averageThreshold comparison; defaults to above.",
            "in": "query",
            "name": "averageComparison",
            "schema": {
              "enum": [
                "above",
                "below"
              ],
              "type": "string"
            }
          },
          {
            "description": "Drop players whose team has played more than this many fixtures since they last featured. A player with no appearance on record is dropped, not kept.",
            "in": "query",
            "name": "maxGamesSinceLastAppearance",
            "schema": {
              "maximum": 100,
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Keep only players in the latest lineup projection of the named kind; defaults to all, which applies no filter.",
            "in": "query",
            "name": "lineupFilter",
            "schema": {
              "enum": [
                "all",
                "confirmed",
                "predicted"
              ],
              "type": "string"
            }
          },
          {
            "description": "Restrict prices to one line, and drop players nobody is quoting.",
            "in": "query",
            "name": "oddsLine",
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "Minimum best available over price, and drop players nobody is quoting.",
            "in": "query",
            "name": "minOdds",
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "Ordering; defaults to -average.",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "-average",
                "-games",
                "-hitRate",
                "-kickoff",
                "-total",
                "-trend",
                "average",
                "kickoff"
              ],
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PropCandidate"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Find players whose recent form clears a threshold in one market",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/referee-cards": {
      "get": {
        "operationId": "listRefereeCardRankings",
        "parameters": [
          {
            "description": "Competition to rank within. Required: a card board spanning every competition is not a query the API will serve.",
            "in": "query",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Restrict the sample to one season of that competition",
            "in": "query",
            "name": "seasonId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Ordering; defaults to -cardsPerGame. Rate orderings are descending only, so that entries with no data — whose rates are null — sort last rather than first.",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "-cardsPerGame",
                "-foulsPerGame",
                "-games",
                "-over35CardsPercentage",
                "-penaltiesPerGame",
                "-redsPerGame",
                "-yellowsPerGame",
                "name"
              ],
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2RefereeCardRanking"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Rank the officials who worked a competition by card record",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/referees": {
      "get": {
        "operationId": "V2Referees",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "last20Only",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "leagueStatsOnly",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "nextGameFrom",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "nextGameTo",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortBy",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortOrder",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "upcomingOnly",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2RefereesResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Referees serves a database-filtered and paged referee statistics board.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/substitute-impact": {
      "get": {
        "operationId": "V2SuperSubHeroes",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "league",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "stat",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "window",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2HeroesResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2SuperSubHeroes serves one database-ranked and paged statistic leaderboard.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/team-cards": {
      "get": {
        "operationId": "listTeamCardRankings",
        "parameters": [
          {
            "description": "Competition to rank within. Required: a card board spanning every competition is not a query the API will serve.",
            "in": "query",
            "name": "competitionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Restrict the sample to one season of that competition",
            "in": "query",
            "name": "seasonId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Ordering; defaults to -cardsForPerGame. Rate orderings are descending only, so that entries with no data — whose rates are null — sort last rather than first.",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "-cardsAgainstPerGame",
                "-cardsForPerGame",
                "-games",
                "-matchCardsPerGame",
                "-matchOver35Percentage",
                "-matchOver45Percentage",
                "name"
              ],
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2TeamCardRanking"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Rank teams by cards for, against and per match",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/team-prop-trends": {
      "get": {
        "operationId": "V2TeamTrends",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "endOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "games",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "hitRateWindow",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "leagueIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "oddsRange.from",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "oddsRange.to",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "oddsType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sorting.column",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sorting.direction",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statTypes",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamTrendsResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamTrends ranks eligible trend keys in SQL, pages those keys, and loads fixture, history, team, and bookmaker projections only for the selected page.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/rankings/value-props": {
      "get": {
        "operationId": "V2ValueProps",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "hitRateFrom",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "hitRateTo",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "oddsFrom",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "oddsTo",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minEdge",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "bookmakers",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "competitionIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "endOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "lineup",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "period",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startOfDay",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statTypes",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "useSupersub",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ValuePropsResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2ValueProps ranks upcoming player props by the gap between their fixed-window hit rate and the implied probability of the best eligible price. Filtering, ranking and pagination happen before the selected page is enriched with form.",
        "tags": [
          "Rankings"
        ]
      }
    },
    "/referees": {
      "get": {
        "operationId": "listReferees",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Filter by country",
            "in": "query",
            "name": "countrySlug",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Referee"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List referees",
        "tags": [
          "Referees"
        ]
      },
      "post": {
        "operationId": "V2CreateReferee",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RefereeBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateRefereeCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateReferee inserts a referee.",
        "tags": [
          "Referees"
        ]
      }
    },
    "/referees/{refereeId}": {
      "get": {
        "operationId": "getReferee",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "refereeId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Referee"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a referee",
        "tags": [
          "Referees"
        ]
      },
      "put": {
        "operationId": "V2UpdateReferee",
        "parameters": [
          {
            "in": "path",
            "name": "refereeId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RefereeBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateReferee updates a referee.",
        "tags": [
          "Referees"
        ]
      }
    },
    "/referees/{refereeId}/competition-statistics": {
      "get": {
        "operationId": "listRefereeCompetitionStatistics",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "refereeId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2RefereeCompetitionStatistic"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List a referee's record per competition",
        "tags": [
          "Referees"
        ]
      }
    },
    "/referees/{refereeId}/competitions": {
      "get": {
        "operationId": "V2RefereeCompetitions",
        "parameters": [
          {
            "in": "path",
            "name": "refereeId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {
                    "$ref": "#/components/schemas/TournamentSeasonsEntry"
                  },
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2RefereeCompetitions serves the competitions and seasons a referee has officiated in.",
        "tags": [
          "Referees"
        ]
      }
    },
    "/referees/{refereeId}/incidents": {
      "get": {
        "operationId": "V2RefereeIncidents",
        "parameters": [
          {
            "in": "path",
            "name": "refereeId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "season",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentIds",
            "schema": {
              "items": {
                "format": "int64",
                "type": "integer"
              },
              "type": [
                "array",
                "null"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2RefereeIncidentsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2RefereeIncidents serves a referee's cards and penalties per half, per fixture.",
        "tags": [
          "Referees"
        ]
      }
    },
    "/referees/{refereeId}/overview": {
      "get": {
        "operationId": "V2RefereeOverview",
        "parameters": [
          {
            "in": "path",
            "name": "refereeId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RefereeSummaryResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2RefereeOverview returns the complete identity and career summary required by the native detail header. The next assignment and penalty total are resolved in the same read instead of making the client search a ranking page.",
        "tags": [
          "Referees"
        ]
      }
    },
    "/referees/{refereeId}/statistics-view": {
      "get": {
        "operationId": "V2RefereeStatisticsView",
        "parameters": [
          {
            "in": "path",
            "name": "refereeId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2RefereeStatisticsViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Referees"
        ]
      }
    },
    "/regions": {
      "get": {
        "operationId": "listRegions",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Region"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List competition regions",
        "tags": [
          "Reference"
        ]
      },
      "post": {
        "operationId": "V2CreateRegion",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CategoryBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateRegionCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateRegion inserts a region.",
        "tags": [
          "Regions"
        ]
      }
    },
    "/regions/{regionId}": {
      "get": {
        "operationId": "getRegion",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "regionId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Region"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a competition region",
        "tags": [
          "Reference"
        ]
      },
      "put": {
        "operationId": "V2UpdateRegion",
        "parameters": [
          {
            "in": "path",
            "name": "regionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CategoryBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateRegion updates a region.",
        "tags": [
          "Regions"
        ]
      }
    },
    "/screeners/player-data": {
      "post": {
        "operationId": "V2PropPlayerData",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2PropPlayerDataInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PropPlayerDataOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PropPlayerData serves the per-player detail a screener row expands into.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/screeners/player-props": {
      "get": {
        "operationId": "V2PlayerPropScreener",
        "parameters": [
          {
            "description": "Fixture IDs to screen; at most 100. Supply this or a bounded startOfDay/endOfDay range",
            "in": "query",
            "name": "games",
            "schema": {
              "maxLength": 4096,
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,99}$",
              "type": "string"
            }
          },
          {
            "description": "Inclusive Unix-second fixture range start; requires endOfDay and cannot be combined with games",
            "in": "query",
            "name": "startOfDay",
            "schema": {
              "maximum": 4102444800,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Exclusive Unix-second fixture range end; at most eight days after startOfDay",
            "in": "query",
            "name": "endOfDay",
            "schema": {
              "maximum": 4102444800,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Canonical competition IDs within the date range; at most 100",
            "in": "query",
            "name": "competitionIds",
            "schema": {
              "maxLength": 4096,
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,99}$",
              "type": "string"
            }
          },
          {
            "description": "Player IDs to include; at most 100",
            "in": "query",
            "name": "players",
            "schema": {
              "maxLength": 4096,
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,99}$",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated statistic keys",
            "in": "query",
            "name": "statTypes",
            "schema": {
              "maxLength": 4096,
              "type": "string"
            }
          },
          {
            "description": "Odds side",
            "in": "query",
            "name": "type",
            "schema": {
              "enum": [
                "over",
                "under"
              ],
              "type": "string"
            }
          },
          {
            "description": "Form window",
            "in": "query",
            "name": "hitRateOption",
            "schema": {
              "enum": [
                "L5",
                "L10",
                "L15"
              ],
              "type": "string"
            }
          },
          {
            "description": "Minimum hit rate",
            "in": "query",
            "name": "hitRateRange.from",
            "schema": {
              "maximum": 100,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Maximum hit rate",
            "in": "query",
            "name": "hitRateRange.to",
            "schema": {
              "maximum": 100,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Minimum decimal odds",
            "in": "query",
            "name": "oddsRange.from",
            "schema": {
              "maximum": 1000,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Maximum decimal odds",
            "in": "query",
            "name": "oddsRange.to",
            "schema": {
              "maximum": 1000,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "One-based result page",
            "in": "query",
            "name": "page",
            "schema": {
              "maximum": 1000000,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Rows per page",
            "in": "query",
            "name": "pageSize",
            "schema": {
              "maximum": 1000,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Include stale source rows",
            "in": "query",
            "name": "includeStale",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Age after which source data is stale",
            "in": "query",
            "name": "staleDataThresholdHours",
            "schema": {
              "maximum": 720,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Use hit-rate windows that include substitute appearances",
            "in": "query",
            "name": "useSupersub",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Use cross-competition hit-rate windows",
            "in": "query",
            "name": "useAllTournaments",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Filter by games since the player's last appearance",
            "in": "query",
            "name": "useMinLastGameWithTeam",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Include page-local player record totals and recent games",
            "in": "query",
            "name": "includeRecords",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Maximum team games since the player's last appearance",
            "in": "query",
            "name": "minLastGameWithTeam",
            "schema": {
              "maximum": 100,
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Selected fixture lineup status",
            "in": "query",
            "name": "lineupFilterType",
            "schema": {
              "enum": [
                "all",
                "predicted",
                "confirmed"
              ],
              "type": "string"
            }
          },
          {
            "description": "Comma-separated UTC dates",
            "in": "query",
            "name": "selectedDates",
            "schema": {
              "maxLength": 4096,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated bookmaker names",
            "in": "query",
            "name": "bookmakers",
            "schema": {
              "maxLength": 4096,
              "type": "string"
            }
          },
          {
            "description": "Sort field",
            "in": "query",
            "name": "sorting.column",
            "schema": {
              "enum": [
                "L5",
                "L10",
                "L15",
                "line",
                "oddsValue",
                "impliedProbability",
                "opponentRank",
                "playerName",
                "teamName",
                "statType",
                "eventTimestamp"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort direction",
            "in": "query",
            "name": "sorting.direction",
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2PlayerPropScreenerResult"
                      },
                      "type": "array"
                    },
                    "pagination": {
                      "$ref": "#/components/schemas/V2PlayerPropScreenerPagination"
                    }
                  },
                  "required": [
                    "data",
                    "pagination"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List player prop lines for a bounded fixture set",
        "tags": [
          "Screeners"
        ]
      },
      "post": {
        "operationId": "V2PlayerPropScreenerBody",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "competitionIds",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScreenerParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlayerPropScreenerResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerPropScreenerBody accepts the same complete filter set as a nested JSON document when callers cannot represent it safely as a query string.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/screeners/player-props/markets": {
      "get": {
        "operationId": "V2PlayerPropMarkets",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "games",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "playerId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AvailableMarketsResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerPropMarkets serves the fresh market vocabulary for a player-prop trends scope.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/screeners/player-statistics": {
      "post": {
        "operationId": "V2PropPlayerStatisticsBatch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2PropPlayerStatisticsBatchInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2PropPlayerStatisticsBatchOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PropPlayerStatisticsBatch serves stat rows for many players at once.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/screeners/player-trends": {
      "post": {
        "operationId": "V2PlayerTrendsBody",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TrendsParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {},
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerTrendsBody serves the player-prop trends from a nested request body. /rankings/player-prop-trends is the same capability with the filters flattened into a query string; this is for the filter sets too deep to flatten.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/screeners/players/enriched": {
      "get": {
        "operationId": "V2PlayerScreenerEnriched",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "eventId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statTypes",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {},
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2PlayerScreenerEnriched serves the screener for one fixture with the trend columns already joined on, so a fixture page does not make a second pass.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/screeners/team-trends": {
      "post": {
        "operationId": "V2TeamTrendsBody",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TeamTrendsParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamTrendsBodyOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamTrendsBody is the team-prop equivalent of V2PlayerTrendsBody.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/screeners/teams": {
      "get": {
        "operationId": "V2TeamScreenerGet",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "bookmakers",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "leagueIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxHitRateAllL10",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxHitRateAllL15",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxHitRateAllL5",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxHitRateL10",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxHitRateL15",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxHitRateL5",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOpponentHitRateAllL10",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOpponentHitRateAllL15",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOpponentHitRateAllL5",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOpponentHitRateL10",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOpponentHitRateL15",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOpponentHitRateL5",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRateAllL10",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRateAllL15",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRateAllL5",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRateL10",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRateL15",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRateL5",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOpponentHitRateAllL10",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOpponentHitRateAllL15",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOpponentHitRateAllL5",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOpponentHitRateL10",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOpponentHitRateL15",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOpponentHitRateL5",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "oddsType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "offset",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "selectedDates",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortColumn",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortDirection",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statTypes",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamIds",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamScreenerGetOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamScreener serves the team-prop screener.",
        "tags": [
          "Screeners"
        ]
      },
      "post": {
        "operationId": "V2TeamScreenerPost",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TeamScreenerFilters"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamScreenerPostOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamScreener serves the team-prop screener.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/screeners/teams/by-fixture": {
      "get": {
        "operationId": "V2TeamScreenerByFixture",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "eventId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statTypes",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamScreenerByFixtureOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamScreenerByFixture serves the team screener scoped to one fixture.",
        "tags": [
          "Screeners"
        ]
      }
    },
    "/search": {
      "get": {
        "operationId": "V2Search",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2SearchOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Search serves the cross-entity search used by the search field.",
        "tags": [
          "Search"
        ]
      }
    },
    "/search/discovery": {
      "get": {
        "operationId": "getSearchDiscovery",
        "parameters": [
          {
            "description": "IANA time zone used to calculate today's fixture suggestions",
            "in": "query",
            "name": "timeZone",
            "required": true,
            "schema": {
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2SearchDiscovery"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get live browse suggestions for Search and entity pickers",
        "tags": [
          "Search"
        ]
      }
    },
    "/search/suggestions": {
      "post": {
        "operationId": "V2Suggestions",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2SuggestionsInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2SuggestionsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2Suggestions serves the search suggestion list.",
        "tags": [
          "Search"
        ]
      }
    },
    "/seasons": {
      "get": {
        "operationId": "V2Seasons",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/Seasons"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2Seasons serves the season reference table. The designed tier has /seasons/{seasonId} but no collection.",
        "tags": [
          "Seasons"
        ]
      },
      "post": {
        "operationId": "V2CreateSeason",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SeasonBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateSeasonCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateSeason inserts a season.",
        "tags": [
          "Seasons"
        ]
      }
    },
    "/seasons/{seasonId}": {
      "get": {
        "operationId": "getSeason",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Season"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a competition season",
        "tags": [
          "Competitions"
        ]
      },
      "put": {
        "operationId": "V2UpdateSeason",
        "parameters": [
          {
            "in": "path",
            "name": "seasonId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SeasonBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateSeason updates a season.",
        "tags": [
          "Seasons"
        ]
      }
    },
    "/teams": {
      "get": {
        "operationId": "listTeams",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Filter by country",
            "in": "query",
            "name": "countrySlug",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Filter national sides",
            "in": "query",
            "name": "national",
            "schema": {
              "enum": [
                "true",
                "false"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Team"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List teams",
        "tags": [
          "Teams"
        ]
      },
      "post": {
        "operationId": "V2CreateTeam",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V2CreateTeamInputBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateTeamCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateTeam inserts a team.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/comparison": {
      "get": {
        "operationId": "V2TeamComparison",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "homeTeamId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "awayTeamId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamComparisonOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamComparison serves two teams' numbers side by side.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/directory-view": {
      "get": {
        "operationId": "V2TeamDirectoryView",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/Teams"
                  },
                  "type": [
                    "array",
                    "null"
                  ]
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}": {
      "get": {
        "operationId": "getTeam",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Team"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a team",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/betting-history": {
      "get": {
        "operationId": "getTeamBettingHistory",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Most recent settled fixtures to simulate; defaults to 38",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 38,
              "maximum": 500,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Flat stake placed on every fixture; defaults to 100",
            "in": "query",
            "name": "stake",
            "schema": {
              "default": 100,
              "minimum": 0.01,
              "type": "number"
            }
          },
          {
            "description": "Which side the stake backs",
            "in": "query",
            "name": "side",
            "schema": {
              "enum": [
                "team"
              ],
              "type": "string"
            }
          },
          {
            "description": "Restrict to home or away fixtures",
            "in": "query",
            "name": "venue",
            "schema": {
              "enum": [
                "home",
                "away"
              ],
              "type": "string"
            }
          },
          {
            "description": "Filter by competition",
            "in": "query",
            "name": "competitionId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Earliest kickoff day, inclusive",
            "in": "query",
            "name": "from",
            "schema": {
              "format": "date",
              "type": "string"
            }
          },
          {
            "description": "Latest kickoff day, inclusive",
            "in": "query",
            "name": "to",
            "schema": {
              "format": "date",
              "type": "string"
            }
          },
          {
            "description": "Price band as minOdds:maxOdds:label; repeat up to 10 times. Omit for the default favourite-to-underdog bands.",
            "in": "query",
            "name": "bracket",
            "schema": {
              "items": {
                "type": "string"
              },
              "maxItems": 10,
              "type": "array"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2TeamBettingHistory"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Simulate a flat stake on a team's recent fixtures",
        "tags": [
          "Betting"
        ]
      }
    },
    "/teams/{teamId}/competition-seasons": {
      "get": {
        "operationId": "V2TeamCompetitionSeasonView",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {
                    "$ref": "#/components/schemas/TournamentSeasonsEntry"
                  },
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/fixture-statistics": {
      "get": {
        "operationId": "V2TeamFixtureStatistics",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventHalf",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "h2h",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "season",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "statisticKey",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentIds",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamFixtureStatisticsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamFixtureStatistics serves a team's per-fixture statistic rows.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/fixtures-view": {
      "get": {
        "operationId": "V2TeamFixturesView",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamFixturesViewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/fixtures-with-odds": {
      "get": {
        "operationId": "V2TeamFixturesWithOdds",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamFixturesWithOddsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamFixturesWithOdds serves a team's fixtures alongside their prices.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/last-formation": {
      "get": {
        "operationId": "V2TeamLastFormation",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamLastFormationOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/last-games": {
      "get": {
        "operationId": "V2TeamLastGames",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "One-based result page",
            "in": "query",
            "name": "page",
            "schema": {
              "maximum": 1000000,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Fixtures per page. A larger value is served as 50, and pagination.limit and pagination.totalPages report the page size applied; follow pagination.totalPages to read every fixture",
            "in": "query",
            "name": "limit",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Competition IDs to include; at most 50",
            "in": "query",
            "name": "competitionIds",
            "schema": {
              "maxLength": 4096,
              "pattern": "^[1-9][0-9]*(,[1-9][0-9]*){0,49}$",
              "type": "string"
            }
          },
          {
            "description": "Only fixtures against this team",
            "in": "query",
            "name": "opponentId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "The selected team's venue",
            "in": "query",
            "name": "venue",
            "schema": {
              "enum": [
                "home",
                "away"
              ],
              "type": "string"
            }
          },
          {
            "description": "Fixture to omit",
            "in": "query",
            "name": "excludeFixtureId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Exact season name",
            "in": "query",
            "name": "seasonName",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Fixture status",
            "in": "query",
            "name": "status",
            "schema": {
              "enum": [
                "finished",
                "inprogress",
                "interrupted",
                "postponed"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2TeamLastGame"
                      },
                      "type": "array"
                    },
                    "pagination": {
                      "$ref": "#/components/schemas/V2TeamLastGamesPagination"
                    }
                  },
                  "required": [
                    "data",
                    "pagination"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List a team's recent fixtures with both lineups",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/last-lineup": {
      "get": {
        "operationId": "V2TeamLastLineup",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamLastLineupOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamLastLineup serves the eleven a team last fielded, in the row shape the pitch already draws.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/overview": {
      "get": {
        "operationId": "V2TeamOverview",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "include",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": [
                "array",
                "null"
              ]
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "idType",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TeamDetailResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/performance": {
      "get": {
        "operationId": "V2TeamPerformance",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventHalf",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "h2h",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "location",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "season",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamPerformanceOutputBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamPerformance serves a team's own aggregated performance rows.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/performance-collection": {
      "get": {
        "operationId": "V2TeamPerformanceCollection",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventHalf",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "h2h",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "location",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "season",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamPerformanceCollectionOutputBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamPerformanceCollection serves a team's per-fixture performance rows in the collection shape a chart consumes, rather than as aggregates.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/player-fixture-statistics": {
      "get": {
        "operationId": "listTeamPlayerFixtureStatistics",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by competition",
            "in": "query",
            "name": "competitionId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by season",
            "in": "query",
            "name": "seasonId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by fixture status",
            "in": "query",
            "name": "status",
            "schema": {
              "enum": [
                "scheduled",
                "live",
                "finished",
                "postponed",
                "cancelled",
                "unknown"
              ],
              "type": "string"
            }
          },
          {
            "description": "Restrict to the team's home or away fixtures",
            "in": "query",
            "name": "venue",
            "schema": {
              "enum": [
                "home",
                "away",
                "any"
              ],
              "type": "string"
            }
          },
          {
            "description": "Filter by the opposing team",
            "in": "query",
            "name": "opponentId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Filter by player",
            "in": "query",
            "name": "playerId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2TeamPlayerFixtureStatistic"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List a team's per-fixture player statistics",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/player-performance": {
      "get": {
        "operationId": "V2TeamPlayerPerformance",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "h2h",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "location",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "season",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "status",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "fixtureId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startedMatch",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "tournamentId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamPlayerPerformanceOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamPlayerPerformance serves the squad's aggregated performance rows.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/profile": {
      "get": {
        "operationId": "V2TeamProfile",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "include",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": [
                "array",
                "null"
              ]
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "idType",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TeamDetailResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamProfile preserves the complete team-detail contract while treating the path segment as the same provider id used by canonical v2 team resources.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/roster": {
      "get": {
        "operationId": "V2TeamRoster",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamRosterOutputBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamRoster serves the current squad.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/seasons": {
      "get": {
        "operationId": "listTeamCompetitionSeasons",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by competition",
            "in": "query",
            "name": "competitionId",
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2TeamCompetitionSeason"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List every season of the competitions a team has fixtures in",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/statistics": {
      "get": {
        "operationId": "V2TeamStatistics",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "seasonId",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamStatisticsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamStatistics serves a team's season statistics.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/substitute-split": {
      "get": {
        "operationId": "V2TeamSubstituteSplit",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "matches",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubSplitResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamSubstituteSplit serves a team's starter-versus-substitute split.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/teams/{teamId}/upcoming-fixtures": {
      "get": {
        "operationId": "V2TeamUpcomingFixtures",
        "parameters": [
          {
            "in": "path",
            "name": "teamId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TeamUpcomingFixturesOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2TeamUpcomingFixtures serves a team's scheduled fixtures.",
        "tags": [
          "Teams"
        ]
      }
    },
    "/tipster-previews": {
      "get": {
        "operationId": "V2TipsterPreviews",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TipsterPreviewsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2TipsterPreviews serves the published previews as a list. It is the index /previews/{slug} does not have.",
        "tags": [
          "Tipster previews"
        ]
      },
      "post": {
        "operationId": "V2CreateTipsterPreview",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TipsterPreviewBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateTipsterPreviewCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2CreateTipsterPreview publishes a preview.",
        "tags": [
          "Tipster previews"
        ]
      }
    },
    "/tipster-previews/{previewId}": {
      "delete": {
        "operationId": "V2DeleteTipsterPreview",
        "parameters": [
          {
            "in": "path",
            "name": "previewId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2DeleteTipsterPreview withdraws a preview.",
        "tags": [
          "Tipster previews"
        ]
      },
      "get": {
        "operationId": "V2TipsterPreview",
        "parameters": [
          {
            "in": "path",
            "name": "previewId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2TipsterPreviewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2TipsterPreview serves one preview by id, where /previews/{slug} reads the editorial slug.",
        "tags": [
          "Tipster previews"
        ]
      },
      "put": {
        "operationId": "V2UpdateTipsterPreview",
        "parameters": [
          {
            "in": "path",
            "name": "previewId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TipsterPreviewUpdateBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2UpdateTipsterPreviewOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2UpdateTipsterPreview rewrites a published preview.",
        "tags": [
          "Tipster previews"
        ]
      }
    },
    "/users/{userId}/is-favorite-player": {
      "get": {
        "operationId": "V2UserFavoritePlayerCheck",
        "parameters": [
          {
            "in": "path",
            "name": "userId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "playerId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2UserFavoritePlayerCheckOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2UserFavoritePlayerCheck answers whether a user has favourited a player.",
        "tags": [
          "Users"
        ]
      }
    },
    "/users/{userId}/is-favorite-team": {
      "get": {
        "operationId": "V2UserFavoriteTeamCheck",
        "parameters": [
          {
            "in": "path",
            "name": "userId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "teamId",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2UserFavoriteTeamCheckOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2UserFavoriteTeamCheck answers whether a user has favourited a team.",
        "tags": [
          "Users"
        ]
      }
    },
    "/value-bet-reports": {
      "delete": {
        "operationId": "deleteValueBetReport",
        "parameters": [
          {
            "description": "The fixture the value bet belongs to",
            "in": "query",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "The player the value bet is about",
            "in": "query",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Withdraw the caller's own report",
        "tags": [
          "Value bets"
        ]
      },
      "get": {
        "operationId": "getValueBetReports",
        "parameters": [
          {
            "description": "The fixture the value bet belongs to",
            "in": "query",
            "name": "fixtureId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          },
          {
            "description": "The player the value bet is about",
            "in": "query",
            "name": "playerId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2ValueBetReportSummary"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Summarise community reports against one value bet",
        "tags": [
          "Value bets"
        ]
      },
      "post": {
        "operationId": "createValueBetReport",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "additionalProperties": false,
                "properties": {
                  "details": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "fixtureId": {
                    "type": "string"
                  },
                  "playerId": {
                    "type": "string"
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "required": [
                  "fixtureId",
                  "playerId",
                  "reason",
                  "details"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2ValueBetReport"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2ValueBetReport"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "415": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unsupported Media Type"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          },
          "503": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Service Unavailable"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "Report a value bet",
        "tags": [
          "Value bets"
        ]
      }
    },
    "/value-bets": {
      "get": {
        "description": "It used to rank and page in SQL on an estimate of the displayed edge. The\nestimate and the card's edge disagreed often enough that a card worth 86%\ncould open page two while page one ended at 85%, so the ranking now comes\nfrom valueBetV2Board, which sorts on the edge the card shows.",
        "operationId": "V2ValueBets",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "date",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "direction",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "group",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "inPredictedLineup",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includePredictions",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "kickoffWindow",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "line",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "marketType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxEV",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxLastGameWithTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minEV",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minSources",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "mode",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "requireGroups",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "requireHorizons",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "showAll",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "showLive",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "source",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "specificDate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startedLastGame",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "superSub",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "X-Internal-Key",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "X-Telegram-User-Id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ValueBetsResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "internalAPIKey": [],
            "telegramUserID": []
          },
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ValueBets pages the same ranked board as /api/value-bets-v2.",
        "tags": [
          "Value bets"
        ]
      }
    },
    "/value-bets/filter-options": {
      "get": {
        "operationId": "V2ValueBetFilterOptions",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ValueBetFilterOptionsResponse"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2ValueBetFilterOptions serves the data-backed line and market vocabulary used by every Value Bets generation.",
        "tags": [
          "Value bets"
        ]
      }
    },
    "/value-bets/generation-1": {
      "get": {
        "operationId": "V2ValueBetsGeneration1",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "date",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includePast",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "line",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "marketType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxEV",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOdd",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minEV",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOdd",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "opponentMultiplier",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "source",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "specificDate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "upcomingOnly",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "hitRateSort",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "inPredictedLineup",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxLastGameWithTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startedLastGame",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "action",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "perPage",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortBy",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortOrder",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ValueBetsGeneration1OKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ValueBetsGeneration1 serves the first value-bet model.",
        "tags": [
          "Value bets"
        ]
      }
    },
    "/value-bets/generation-4": {
      "get": {
        "operationId": "V2ValueBetsGeneration4",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "date",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "direction",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "eventIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "group",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "inPredictedLineup",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "includePredictions",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "kickoffWindow",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "line",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "marketType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxEV",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxLastGameWithTeam",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minEV",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minSources",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "mode",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "requireGroups",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "requireHorizons",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "showAll",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "showLive",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "source",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "specificDate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "startedLastGame",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "superSub",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "uniqueTournamentIds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "perPage",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "hitRateWindow",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minHitRate",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "playerId",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "X-Internal-Key",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "X-Telegram-User-Id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ValueBetsGeneration4OKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Forbidden"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "internalAPIKey": [],
            "telegramUserID": []
          },
          {
            "supabaseBearer": []
          },
          {
            "supabaseSessionCookie": []
          }
        ],
        "summary": "V2ValueBetsGeneration4 serves the fourth value-bet model.",
        "tags": [
          "Value bets"
        ]
      }
    },
    "/value-bets/player-props": {
      "get": {
        "operationId": "V2ValueBetProps",
        "parameters": [
          {
            "explode": false,
            "in": "query",
            "name": "league",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "line",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "marketType",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "maxOdds",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "minEdge",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "opponentMultiplier",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "player",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "source",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "team",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "timeToKickoff",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "order",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "sortBy",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "page",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "string"
            }
          },
          {
            "explode": false,
            "in": "query",
            "name": "side",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2ValueBetPropsOKBody"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "405": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Method Not Allowed"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2ValueBetProps serves the player-prop value board, which is a separate model from the team-market ones above rather than a later generation.",
        "tags": [
          "Value bets"
        ]
      }
    },
    "/venues": {
      "get": {
        "operationId": "listVenues",
        "parameters": [
          {
            "description": "Maximum resources to return; defaults to 25",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 25,
              "maximum": 100,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Opaque cursor for the next page",
            "in": "query",
            "name": "after",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Opaque cursor for the previous page",
            "in": "query",
            "name": "before",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Case-insensitive name search",
            "in": "query",
            "name": "q",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          },
          {
            "description": "Filter by country",
            "in": "query",
            "name": "countrySlug",
            "schema": {
              "maxLength": 100,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "items": {
                        "$ref": "#/components/schemas/V2Venue"
                      },
                      "type": "array"
                    },
                    "links": {
                      "$ref": "#/components/schemas/V2Links"
                    },
                    "page": {
                      "$ref": "#/components/schemas/V2Page"
                    }
                  },
                  "required": [
                    "data",
                    "page",
                    "links"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "List venues",
        "tags": [
          "Reference"
        ]
      },
      "post": {
        "operationId": "V2CreateVenue",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VenueBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V2CreateVenueCreatedBody"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2CreateVenue inserts a venue.",
        "tags": [
          "Venues"
        ]
      }
    },
    "/venues/{venueId}": {
      "get": {
        "operationId": "getVenue",
        "parameters": [
          {
            "description": "Opaque resource ID",
            "in": "path",
            "name": "venueId",
            "required": true,
            "schema": {
              "pattern": "^[1-9][0-9]*$",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/V2Venue"
                    }
                  },
                  "required": [
                    "data"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [],
        "summary": "Get a venue",
        "tags": [
          "Reference"
        ]
      },
      "put": {
        "operationId": "V2UpdateVenue",
        "parameters": [
          {
            "in": "path",
            "name": "venueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VenueBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageEnvelope"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/V2Problem"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "summary": "V2UpdateVenue updates a venue.",
        "tags": [
          "Venues"
        ]
      }
    }
  },
  "servers": [
    {
      "url": "/api/v2"
    }
  ]
}
