basePath: / definitions: controllers.AdvancedStatsResponse: properties: data: items: $ref: '#/definitions/models.PlayerAdvancedStat' type: array pagination: properties: page: type: integer pageSize: type: integer pages: type: integer total: type: integer type: object type: object models.PlayerAdvancedStat: properties: age: type: integer assistPercent: type: number blockPercent: type: number box: type: number defensiveBox: type: number defensiveRBPercent: type: number defensiveWS: type: number ftr: type: number games: type: integer id: type: integer isPlayoff: type: boolean minutesPlayed: type: integer offensiveBox: type: number offensiveRBPercent: type: number offensiveWS: type: number per: type: number playerId: type: string playerName: type: string position: type: string season: type: integer stealPercent: type: number team: type: string threePAR: type: number totalRBPercent: type: number tsPercent: type: number turnoverPercent: type: number usagePercent: type: number vorp: type: number winShares: type: number winSharesPer: type: number type: object models.PlayerShotChart: properties: date: type: string distanceFt: type: integer id: description: Auto‑increment primary key — works in SQLite and any other DB. type: integer lead: type: boolean left: type: integer opponent: type: string opponentTeamScore: type: integer playerId: description: ────────── "identity" columns (the dedup key) ────────── type: string playerName: description: ────────── the rest of the payload ────────── type: string qtr: type: string result: type: boolean season: type: integer shotType: type: string team: type: string teamScore: type: integer timeRemaining: type: string top: type: integer type: object info: contact: {} description: Stats service, now with public access! title: NBA_Go API version: "1.0" paths: /api/playeradvancedstats: get: consumes: - application/json description: Returns filtered and paginated player advanced stats parameters: - description: Season (e.g., 2025) in: query name: season type: integer - description: Team abbreviation (e.g., MIL) in: query name: team type: string - description: Player ID (e.g., greenaj01) in: query name: playerId type: string - default: 1 description: Page number in: query name: page type: integer - default: 20 description: Page size in: query name: pageSize type: integer - default: winShares description: Field to sort by in: query name: sortBy type: string - default: false description: Sort ascending in: query name: ascending type: boolean - description: Whether playoffs? in: query name: isPlayoff type: boolean produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/controllers.AdvancedStatsResponse' "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Get player advanced stats tags: - PlayerStats /api/playertotals: get: consumes: - application/json description: Filter and paginate player totals parameters: - description: Season (e.g. 2000) in: query name: season type: integer - description: Team abbreviation (e.g. LAL) in: query name: team type: string - description: Player ID (e.g. greenac01) in: query name: playerId type: string - default: 1 description: Page number in: query name: page type: integer - default: 20 description: Page size in: query name: pageSize type: integer - description: Field to sort by (e.g. points, assists) in: query name: sortBy type: string - description: Sort ascending (default false) in: query name: ascending type: boolean - description: Whether the stats are for playoffs in: query name: isPlayoff type: boolean produces: - application/json responses: "200": description: OK schema: additionalProperties: true type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Get player total stats tags: - PlayerTotals schemes: - https swagger: "2.0"