cfbd 5.20.0 → 5.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Binary file
package/dist/sdk.gen.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { type OptionsLegacyParser } from '@hey-api/client-fetch';
2
- import type { GetAdjustedTeamSeasonStatsData, GetAdjustedTeamSeasonStatsResponse, GetAdjustedPlayerPassingStatsData, GetAdjustedPlayerPassingStatsResponse, GetAdjustedPlayerRushingStatsData, GetAdjustedPlayerRushingStatsResponse, GetKickerPaarData, GetKickerPaarResponse, GetTeamsData, GetTeamsResponse, GetFbsTeamsData, GetFbsTeamsResponse, GetMatchupData, GetTeamsAtsData, GetTeamsAtsResponse, GetRosterData, GetRosterResponse, GetConferencesResponse, GetTalentData, GetTalentResponse, GetVenuesResponse, GetPlayerSeasonStatsData, GetPlayerSeasonStatsResponse, GetPlayerSeasonSuccessRatesData, GetPlayerSeasonSuccessRatesResponse, GetPlayerGameSuccessRatesData, GetPlayerGameSuccessRatesResponse, GetTeamStatsData, GetTeamStatsResponse, GetCategoriesResponse, GetAdvancedSeasonStatsData, GetAdvancedSeasonStatsResponse, GetAdvancedGameStatsData, GetAdvancedGameStatsResponse, GetGameHavocStatsData, GetGameHavocStatsResponse, GetRecruitsData, GetRecruitsResponse, GetTeamRecruitingRankingsData, GetTeamRecruitingRankingsResponse, GetAggregatedTeamRecruitingRatingsData, GetAggregatedTeamRecruitingRatingsResponse, GetSpData, GetSpResponse, GetConferenceSpData, GetConferenceSpResponse, GetSrsData, GetSrsResponse, GetExpandedSrsData, GetExpandedSrsResponse, GetEloData, GetEloResponse, GetFpiData, GetFpiResponse, GetRankingsData, GetRankingsError, GetRankingsResponse, GetPlaysData, GetPlaysResponse, GetPlayTypesResponse, GetPlayStatsData, GetPlayStatsResponse, GetPlayStatTypesResponse, GetCfpPlayoffData, GetCfpPlayoffError, GetCfpParticipantsData, GetCfpParticipantsError, GetCfpParticipantsResponse, GetCfpGamesData, GetCfpGamesError, GetCfpGamesResponse, SearchPlayersData, SearchPlayersResponse, GetPlayerUsageData, GetPlayerUsageResponse, GetPlayerSeasonOverviewData, GetReturningProductionData, GetReturningProductionResponse, GetTransferPortalData, GetTransferPortalResponse, GetPredictedPointsData, GetPredictedPointsResponse, GetPredictedPointsAddedByTeamData, GetPredictedPointsAddedByTeamResponse, GetPredictedPointsAddedByGameData, GetPredictedPointsAddedByGameResponse, GetPredictedPointsAddedByPlayerGameData, GetPredictedPointsAddedByPlayerGameResponse, GetPredictedPointsAddedByPlayerSeasonData, GetPredictedPointsAddedByPlayerSeasonResponse, GetWinProbabilityData, GetWinProbabilityResponse, GetPregameWinProbabilitiesData, GetPregameWinProbabilitiesResponse, GetFieldGoalExpectedPointsResponse, GetLivePlaysData, GetLinesData, GetLinesResponse, GetUserInfoResponse, GetUsageData, GetUsageResponse, GetGamesData, GetGamesError, GetGamesResponse, GetGameTeamStatsData, GetGameTeamStatsResponse, GetGamePlayerStatsData, GetGamePlayerStatsResponse, GetMediaData, GetMediaResponse, GetWeatherData, GetWeatherResponse, GetRecordsData, GetRecordsResponse, GetCalendarData, GetCalendarResponse, GetScoreboardData, GetScoreboardResponse, GetDrivesData, GetDrivesResponse, GetDraftTeamsResponse, GetDraftPositionsResponse, GetDraftPicksData, GetDraftPicksResponse, GetCoachesData, GetCoachesResponse, GetAdvancedBoxScoreData } from './types.gen';
2
+ import type { GetAdjustedTeamSeasonStatsData, GetAdjustedTeamSeasonStatsResponse, GetAdjustedPlayerPassingStatsData, GetAdjustedPlayerPassingStatsResponse, GetAdjustedPlayerRushingStatsData, GetAdjustedPlayerRushingStatsResponse, GetKickerPaarData, GetKickerPaarResponse, GetTeamsData, GetTeamsResponse, GetFbsTeamsData, GetFbsTeamsResponse, GetMatchupData, GetTeamsAtsData, GetTeamsAtsResponse, GetRosterData, GetRosterResponse, GetConferencesResponse, GetTalentData, GetTalentResponse, GetVenuesResponse, GetPlayerSeasonStatsData, GetPlayerSeasonStatsResponse, GetPlayerSeasonSuccessRatesData, GetPlayerSeasonSuccessRatesResponse, GetPlayerGameSuccessRatesData, GetPlayerGameSuccessRatesResponse, GetTeamStatsData, GetTeamStatsResponse, GetCategoriesResponse, GetAdvancedSeasonStatsData, GetAdvancedSeasonStatsResponse, GetAdvancedGameStatsData, GetAdvancedGameStatsResponse, GetGameHavocStatsData, GetGameHavocStatsResponse, GetRecruitsData, GetRecruitsResponse, GetTeamRecruitingRankingsData, GetTeamRecruitingRankingsResponse, GetAggregatedTeamRecruitingRatingsData, GetAggregatedTeamRecruitingRatingsResponse, GetSpData, GetSpResponse, GetConferenceSpData, GetConferenceSpResponse, GetSrsData, GetSrsResponse, GetExpandedSrsData, GetExpandedSrsResponse, GetEloData, GetEloResponse, GetFpiData, GetFpiResponse, GetRankingsData, GetRankingsError, GetRankingsResponse, GetPlaysData, GetPlaysResponse, GetPlayTypesResponse, GetPlayStatsData, GetPlayStatsResponse, GetPlayStatTypesResponse, GetCfpPlayoffData, GetCfpPlayoffError, GetCfpParticipantsData, GetCfpParticipantsError, GetCfpParticipantsResponse, GetCfpGamesData, GetCfpGamesError, GetCfpGamesResponse, SearchPlayersData, SearchPlayersResponse, GetPlayerUsageData, GetPlayerUsageResponse, GetPlayerSeasonOverviewData, GetReturningProductionData, GetReturningProductionResponse, GetTransferPortalData, GetTransferPortalResponse, GetPredictedPointsData, GetPredictedPointsResponse, GetPredictedPointsAddedByTeamData, GetPredictedPointsAddedByTeamResponse, GetPredictedPointsAddedByGameData, GetPredictedPointsAddedByGameResponse, GetPredictedPointsAddedByPlayerGameData, GetPredictedPointsAddedByPlayerGameResponse, GetPredictedPointsAddedByPlayerSeasonData, GetPredictedPointsAddedByPlayerSeasonResponse, GetWinProbabilityData, GetWinProbabilityResponse, GetPregameWinProbabilitiesData, GetPregameWinProbabilitiesResponse, GetFieldGoalExpectedPointsResponse, GetLivePlaysData, GetLinesData, GetLinesResponse, GetUserInfoResponse, GetUsageData, GetUsageResponse, GetGamesData, GetGamesError, GetGamesResponse, GetGameTeamStatsData, GetGameTeamStatsResponse, GetGamePlayerStatsData, GetGamePlayerStatsResponse, GetMediaData, GetMediaResponse, GetWeatherData, GetWeatherResponse, GetRecordsData, GetRecordsResponse, GetCalendarData, GetCalendarResponse, GetScoreboardData, GetScoreboardResponse, GetDrivesData, GetDrivesResponse, GetDraftTeamsResponse, GetDraftPositionsResponse, GetDraftPicksData, GetDraftPicksResponse, GetCoachesData, GetCoachesResponse, GetCoachProfileData, GetCoachProfileError, GetCoachSeasonsData, GetCoachSeasonsError, GetCoachSeasonsResponse, GetCoachTenuresData, GetCoachTenuresError, GetCoachTenuresResponse, GetAdvancedBoxScoreData } from './types.gen';
3
3
  export declare const client: import("@hey-api/client-fetch").Client<Request, Response, unknown, import("@hey-api/client-fetch").RequestOptions<boolean, string>>;
4
4
  /**
5
5
  * Retrieve opponent-adjusted team season statistics
@@ -269,6 +269,19 @@ export declare const getDraftPicks: <ThrowOnError extends boolean = false>(optio
269
269
  * Retrieves historical head coach information and records
270
270
  */
271
271
  export declare const getCoaches: <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetCoachesData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<GetCoachesResponse, unknown, ThrowOnError>;
272
+ /**
273
+ * Retrieves canonical coach identity and complete career totals
274
+ */
275
+ export declare const getCoachProfile: <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetCoachProfileData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<import("./types.gen").CoachProfile, GetCoachProfileError, ThrowOnError>;
276
+ /**
277
+ * Retrieves detailed coach-season records with attributed results and
278
+ * whole-team season context
279
+ */
280
+ export declare const getCoachSeasons: <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetCoachSeasonsData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<GetCoachSeasonsResponse, GetCoachSeasonsError, ThrowOnError>;
281
+ /**
282
+ * Retrieves continuous head-coaching stints and attributed records
283
+ */
284
+ export declare const getCoachTenures: <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetCoachTenuresData, ThrowOnError>) => import("@hey-api/client-fetch").RequestResult<GetCoachTenuresResponse, GetCoachTenuresError, ThrowOnError>;
272
285
  /**
273
286
  * Retrieves an advanced box score for a game
274
287
  */
package/dist/sdk.gen.js CHANGED
@@ -13,7 +13,7 @@ var __assign = (this && this.__assign) || function () {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.getPregameWinProbabilities = exports.getWinProbability = exports.getPredictedPointsAddedByPlayerSeason = exports.getPredictedPointsAddedByPlayerGame = exports.getPredictedPointsAddedByGame = exports.getPredictedPointsAddedByTeam = exports.getPredictedPoints = exports.getTransferPortal = exports.getReturningProduction = exports.getPlayerSeasonOverview = exports.getPlayerUsage = exports.searchPlayers = exports.getCfpGames = exports.getCfpParticipants = exports.getCfpPlayoff = exports.getPlayStatTypes = exports.getPlayStats = exports.getPlayTypes = exports.getPlays = exports.getRankings = exports.getFpi = exports.getElo = exports.getExpandedSrs = exports.getSrs = exports.getConferenceSp = exports.getSp = exports.getAggregatedTeamRecruitingRatings = exports.getTeamRecruitingRankings = exports.getRecruits = exports.getGameHavocStats = exports.getAdvancedGameStats = exports.getAdvancedSeasonStats = exports.getCategories = exports.getTeamStats = exports.getPlayerGameSuccessRates = exports.getPlayerSeasonSuccessRates = exports.getPlayerSeasonStats = exports.getVenues = exports.getTalent = exports.getConferences = exports.getRoster = exports.getTeamsAts = exports.getMatchup = exports.getFbsTeams = exports.getTeams = exports.getKickerPaar = exports.getAdjustedPlayerRushingStats = exports.getAdjustedPlayerPassingStats = exports.getAdjustedTeamSeasonStats = exports.client = void 0;
16
- exports.getAdvancedBoxScore = exports.getCoaches = exports.getDraftPicks = exports.getDraftPositions = exports.getDraftTeams = exports.getDrives = exports.getScoreboard = exports.getCalendar = exports.getRecords = exports.getWeather = exports.getMedia = exports.getGamePlayerStats = exports.getGameTeamStats = exports.getGames = exports.getUsage = exports.getUserInfo = exports.getLines = exports.getLivePlays = exports.getFieldGoalExpectedPoints = void 0;
16
+ exports.getAdvancedBoxScore = exports.getCoachTenures = exports.getCoachSeasons = exports.getCoachProfile = exports.getCoaches = exports.getDraftPicks = exports.getDraftPositions = exports.getDraftTeams = exports.getDrives = exports.getScoreboard = exports.getCalendar = exports.getRecords = exports.getWeather = exports.getMedia = exports.getGamePlayerStats = exports.getGameTeamStats = exports.getGames = exports.getUsage = exports.getUserInfo = exports.getLines = exports.getLivePlays = exports.getFieldGoalExpectedPoints = void 0;
17
17
  var client_fetch_1 = require("@hey-api/client-fetch");
18
18
  exports.client = (0, client_fetch_1.createClient)((0, client_fetch_1.createConfig)({ baseUrl: 'https://api.collegefootballdata.com' }));
19
19
  /**
@@ -552,6 +552,31 @@ var getCoaches = function (options) {
552
552
  return ((_a = options === null || options === void 0 ? void 0 : options.client) !== null && _a !== void 0 ? _a : exports.client).get(__assign(__assign({}, options), { url: '/coaches' }));
553
553
  };
554
554
  exports.getCoaches = getCoaches;
555
+ /**
556
+ * Retrieves canonical coach identity and complete career totals
557
+ */
558
+ var getCoachProfile = function (options) {
559
+ var _a;
560
+ return ((_a = options === null || options === void 0 ? void 0 : options.client) !== null && _a !== void 0 ? _a : exports.client).get(__assign(__assign({}, options), { url: '/coaches/profile' }));
561
+ };
562
+ exports.getCoachProfile = getCoachProfile;
563
+ /**
564
+ * Retrieves detailed coach-season records with attributed results and
565
+ * whole-team season context
566
+ */
567
+ var getCoachSeasons = function (options) {
568
+ var _a;
569
+ return ((_a = options === null || options === void 0 ? void 0 : options.client) !== null && _a !== void 0 ? _a : exports.client).get(__assign(__assign({}, options), { url: '/coaches/seasons' }));
570
+ };
571
+ exports.getCoachSeasons = getCoachSeasons;
572
+ /**
573
+ * Retrieves continuous head-coaching stints and attributed records
574
+ */
575
+ var getCoachTenures = function (options) {
576
+ var _a;
577
+ return ((_a = options === null || options === void 0 ? void 0 : options.client) !== null && _a !== void 0 ? _a : exports.client).get(__assign(__assign({}, options), { url: '/coaches/tenures' }));
578
+ };
579
+ exports.getCoachTenures = getCoachTenures;
555
580
  /**
556
581
  * Retrieves an advanced box score for a game
557
582
  */
@@ -302,6 +302,7 @@ export type CalendarWeek = {
302
302
  */
303
303
  lastGameStart: string;
304
304
  };
305
+ export type CfpCoachSeasonOutcome = 'active' | 'eliminated' | 'champion';
305
306
  export type CfpPlayoff = {
306
307
  season: number;
307
308
  competition: PlayoffCompetition_Cfp;
@@ -317,18 +318,114 @@ export type CfpPlayoffNotFound = {
317
318
  };
318
319
  export type message = 'CFP playoff not found';
319
320
  export type Coach = {
321
+ id: number;
320
322
  firstName: string;
321
323
  lastName: string;
324
+ /**
325
+ * @deprecated
326
+ */
322
327
  hireDate: (string) | null;
323
328
  seasons: Array<CoachSeason>;
324
329
  };
330
+ export type CoachAlmaMater = {
331
+ id: number;
332
+ school: string;
333
+ };
334
+ export type CoachCareer = {
335
+ games: number;
336
+ wins: number;
337
+ losses: number;
338
+ ties: number;
339
+ winPercentage: (number) | null;
340
+ seasons: number;
341
+ teams: number;
342
+ firstYear: number;
343
+ lastYear: number;
344
+ };
345
+ export type CoachCfpContext = {
346
+ appeared: boolean;
347
+ seed: (number) | null;
348
+ outcome: ((CfpCoachSeasonOutcome) | null);
349
+ };
350
+ export type CoachDraftContext = {
351
+ year: number;
352
+ totalPicks: number;
353
+ firstRoundPicks: number;
354
+ };
355
+ export type CoachNotFound = {
356
+ message: 'Coach not found';
357
+ };
358
+ export type message2 = 'Coach not found';
359
+ export type CoachPollResume = {
360
+ preseasonRank: (number) | null;
361
+ postseasonRank: (number) | null;
362
+ bestRank: (number) | null;
363
+ weeksRanked: number;
364
+ weeksTopTen: number;
365
+ };
366
+ export type CoachProfile = {
367
+ id: number;
368
+ firstName: string;
369
+ lastName: string;
370
+ displayName: (string) | null;
371
+ currentTeam: ((CoachSeasonTeamReference) | null);
372
+ career: CoachCareer;
373
+ birthDate: (string) | null;
374
+ almaMater: ((CoachAlmaMater) | null);
375
+ graduationYear: (number) | null;
376
+ wikidataId: (string) | null;
377
+ hallOfFameYear: (number) | null;
378
+ };
379
+ export type CoachRatingContext = {
380
+ spSpecialTeams: (number) | null;
381
+ strengthOfSchedule: (number) | null;
382
+ secondOrderWins: (number) | null;
383
+ fpi: (number) | null;
384
+ yearOverYear: {
385
+ spOverall: (number) | null;
386
+ srs: (number) | null;
387
+ wins: (number) | null;
388
+ };
389
+ };
390
+ export type CoachRecord = {
391
+ games: number;
392
+ wins: number;
393
+ losses: number;
394
+ ties: number;
395
+ winPercentage: (number) | null;
396
+ };
397
+ export type CoachRecordSplits = {
398
+ conference: CoachRecord;
399
+ postseason: CoachRecord;
400
+ home: CoachRecord;
401
+ away: CoachRecord;
402
+ neutral: CoachRecord;
403
+ };
404
+ export type CoachRecruitingContext = {
405
+ rank: (number) | null;
406
+ points: (number) | null;
407
+ talent: (number) | null;
408
+ };
409
+ export type CoachReference = {
410
+ id: number;
411
+ firstName: string;
412
+ lastName: string;
413
+ };
414
+ export type CoachScoring = {
415
+ pointsFor: number;
416
+ pointsAgainst: number;
417
+ averagePointDifferential: (number) | null;
418
+ };
325
419
  export type CoachSeason = {
420
+ teamId: number;
326
421
  school: string;
422
+ conference: (string) | null;
327
423
  year: number;
328
424
  games: number;
329
425
  wins: number;
330
426
  losses: number;
331
427
  ties: number;
428
+ winPercentage: (number) | null;
332
429
  preseasonRank: (number) | null;
333
430
  postseasonRank: (number) | null;
334
431
  srs: (number) | null;
@@ -336,6 +433,30 @@ export type CoachSeason = {
336
433
  spOffense: (number) | null;
337
434
  spDefense: (number) | null;
338
435
  };
436
+ export type CoachSeasonTeamReference = {
437
+ id: number;
438
+ school: string;
439
+ conference: (string) | null;
440
+ };
441
+ export type CoachTeamReference = {
442
+ id: number;
443
+ school: string;
444
+ };
445
+ export type CoachTenure = {
446
+ id: number;
447
+ coach: CoachReference;
448
+ team: CoachTeamReference;
449
+ hireDate: (string) | null;
450
+ startYear: number;
451
+ endYear: (number) | null;
452
+ effectiveStart: (string) | null;
453
+ effectiveEnd: (string) | null;
454
+ isInterim: boolean;
455
+ active: boolean;
456
+ seasons: number;
457
+ record: CoachRecord;
458
+ attributionComplete: boolean;
459
+ };
339
460
  export type Conference = {
340
461
  id: number;
341
462
  name: string;
@@ -378,6 +499,30 @@ export type ConferenceSP = {
378
499
  rating: (number) | null;
379
500
  };
380
501
  };
502
+ export type DetailedCoachSeason = {
503
+ games: number;
504
+ wins: number;
505
+ losses: number;
506
+ ties: number;
507
+ winPercentage: (number) | null;
508
+ coach: CoachReference;
509
+ team: CoachSeasonTeamReference;
510
+ year: number;
511
+ preseasonRank: (number) | null;
512
+ postseasonRank: (number) | null;
513
+ srs: (number) | null;
514
+ spOverall: (number) | null;
515
+ spOffense: (number) | null;
516
+ spDefense: (number) | null;
517
+ teamMetrics: CoachRatingContext;
518
+ recruiting: CoachRecruitingContext;
519
+ pollResume: ((CoachPollResume) | null);
520
+ attributionComplete: boolean;
521
+ recordSplits: ((CoachRecordSplits) | null);
522
+ scoring: ((CoachScoring) | null);
523
+ cfp: CoachCfpContext;
524
+ draftFollowingSeason: ((CoachDraftContext) | null);
525
+ };
381
526
  export type DivisionClassification = 'fbs' | 'fcs' | 'ii' | 'iii';
382
527
  export type DraftPick = {
383
528
  collegeAthleteId: (number) | null;
@@ -1181,8 +1326,8 @@ export type Recruit = {
1181
1326
  position: (string) | null;
1182
1327
  height: (number) | null;
1183
1328
  weight: (number) | null;
1184
- stars: number;
1185
- rating: number;
1329
+ stars: (number) | null;
1330
+ rating: (number) | null;
1186
1331
  city: (string) | null;
1187
1332
  stateProvince: (string) | null;
1188
1333
  country: (string) | null;
@@ -3033,6 +3178,70 @@ export type GetCoachesData = {
3033
3178
  };
3034
3179
  export type GetCoachesResponse = (Array<Coach>);
3035
3180
  export type GetCoachesError = unknown;
3181
+ export type GetCoachProfileData = {
3182
+ query: {
3183
+ /**
3184
+ * Required coach ID
3185
+ */
3186
+ coachId: number;
3187
+ };
3188
+ };
3189
+ export type GetCoachProfileResponse = (CoachProfile);
3190
+ export type GetCoachProfileError = ({
3191
+ message: string;
3192
+ } | CoachNotFound);
3193
+ export type GetCoachSeasonsData = {
3194
+ query?: {
3195
+ /**
3196
+ * Optional coach ID
3197
+ */
3198
+ coachId?: number;
3199
+ /**
3200
+ * Optional end year range filter
3201
+ */
3202
+ maxYear?: number;
3203
+ /**
3204
+ * Optional start year range filter
3205
+ */
3206
+ minYear?: number;
3207
+ /**
3208
+ * Optional team filter
3209
+ */
3210
+ team?: string;
3211
+ /**
3212
+ * Optional exact season year
3213
+ */
3214
+ year?: number;
3215
+ };
3216
+ };
3217
+ export type GetCoachSeasonsResponse = (Array<DetailedCoachSeason>);
3218
+ export type GetCoachSeasonsError = ({
3219
+ message: string;
3220
+ });
3221
+ export type GetCoachTenuresData = {
3222
+ query?: {
3223
+ /**
3224
+ * Optional active-tenure filter
3225
+ */
3226
+ active?: boolean;
3227
+ /**
3228
+ * Optional coach ID
3229
+ */
3230
+ coachId?: number;
3231
+ /**
3232
+ * Optional team filter
3233
+ */
3234
+ team?: string;
3235
+ /**
3236
+ * Optional season year contained by the tenure
3237
+ */
3238
+ year?: number;
3239
+ };
3240
+ };
3241
+ export type GetCoachTenuresResponse = (Array<CoachTenure>);
3242
+ export type GetCoachTenuresError = ({
3243
+ message: string;
3244
+ });
3036
3245
  export type GetAdvancedBoxScoreData = {
3037
3246
  query: {
3038
3247
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cfbd",
3
- "version": "5.20.0",
3
+ "version": "5.21.0",
4
4
  "description": "This API is in limited Beta for Patreon subscribers. It may have bugs and is subject to changes. API keys can be acquired from the CollegeFootballData.com website.",
5
5
  "repository": {
6
6
  "type": "git",
package/src/sdk.gen.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
2
 
3
3
  import { createClient, createConfig, type OptionsLegacyParser } from '@hey-api/client-fetch';
4
- import type { GetAdjustedTeamSeasonStatsData, GetAdjustedTeamSeasonStatsError, GetAdjustedTeamSeasonStatsResponse, GetAdjustedPlayerPassingStatsData, GetAdjustedPlayerPassingStatsError, GetAdjustedPlayerPassingStatsResponse, GetAdjustedPlayerRushingStatsData, GetAdjustedPlayerRushingStatsError, GetAdjustedPlayerRushingStatsResponse, GetKickerPaarData, GetKickerPaarError, GetKickerPaarResponse, GetTeamsData, GetTeamsError, GetTeamsResponse, GetFbsTeamsData, GetFbsTeamsError, GetFbsTeamsResponse, GetMatchupData, GetMatchupError, GetMatchupResponse, GetTeamsAtsData, GetTeamsAtsError, GetTeamsAtsResponse, GetRosterData, GetRosterError, GetRosterResponse, GetConferencesError, GetConferencesResponse, GetTalentData, GetTalentError, GetTalentResponse, GetVenuesError, GetVenuesResponse, GetPlayerSeasonStatsData, GetPlayerSeasonStatsError, GetPlayerSeasonStatsResponse, GetPlayerSeasonSuccessRatesData, GetPlayerSeasonSuccessRatesError, GetPlayerSeasonSuccessRatesResponse, GetPlayerGameSuccessRatesData, GetPlayerGameSuccessRatesError, GetPlayerGameSuccessRatesResponse, GetTeamStatsData, GetTeamStatsError, GetTeamStatsResponse, GetCategoriesError, GetCategoriesResponse, GetAdvancedSeasonStatsData, GetAdvancedSeasonStatsError, GetAdvancedSeasonStatsResponse, GetAdvancedGameStatsData, GetAdvancedGameStatsError, GetAdvancedGameStatsResponse, GetGameHavocStatsData, GetGameHavocStatsError, GetGameHavocStatsResponse, GetRecruitsData, GetRecruitsError, GetRecruitsResponse, GetTeamRecruitingRankingsData, GetTeamRecruitingRankingsError, GetTeamRecruitingRankingsResponse, GetAggregatedTeamRecruitingRatingsData, GetAggregatedTeamRecruitingRatingsError, GetAggregatedTeamRecruitingRatingsResponse, GetSpData, GetSpError, GetSpResponse, GetConferenceSpData, GetConferenceSpError, GetConferenceSpResponse, GetSrsData, GetSrsError, GetSrsResponse, GetExpandedSrsData, GetExpandedSrsError, GetExpandedSrsResponse, GetEloData, GetEloError, GetEloResponse, GetFpiData, GetFpiError, GetFpiResponse, GetRankingsData, GetRankingsError, GetRankingsResponse, GetPlaysData, GetPlaysError, GetPlaysResponse, GetPlayTypesError, GetPlayTypesResponse, GetPlayStatsData, GetPlayStatsError, GetPlayStatsResponse, GetPlayStatTypesError, GetPlayStatTypesResponse, GetCfpPlayoffData, GetCfpPlayoffError, GetCfpPlayoffResponse, GetCfpParticipantsData, GetCfpParticipantsError, GetCfpParticipantsResponse, GetCfpGamesData, GetCfpGamesError, GetCfpGamesResponse, SearchPlayersData, SearchPlayersError, SearchPlayersResponse, GetPlayerUsageData, GetPlayerUsageError, GetPlayerUsageResponse, GetPlayerSeasonOverviewData, GetPlayerSeasonOverviewError, GetPlayerSeasonOverviewResponse, GetReturningProductionData, GetReturningProductionError, GetReturningProductionResponse, GetTransferPortalData, GetTransferPortalError, GetTransferPortalResponse, GetPredictedPointsData, GetPredictedPointsError, GetPredictedPointsResponse, GetPredictedPointsAddedByTeamData, GetPredictedPointsAddedByTeamError, GetPredictedPointsAddedByTeamResponse, GetPredictedPointsAddedByGameData, GetPredictedPointsAddedByGameError, GetPredictedPointsAddedByGameResponse, GetPredictedPointsAddedByPlayerGameData, GetPredictedPointsAddedByPlayerGameError, GetPredictedPointsAddedByPlayerGameResponse, GetPredictedPointsAddedByPlayerSeasonData, GetPredictedPointsAddedByPlayerSeasonError, GetPredictedPointsAddedByPlayerSeasonResponse, GetWinProbabilityData, GetWinProbabilityError, GetWinProbabilityResponse, GetPregameWinProbabilitiesData, GetPregameWinProbabilitiesError, GetPregameWinProbabilitiesResponse, GetFieldGoalExpectedPointsError, GetFieldGoalExpectedPointsResponse, GetLivePlaysData, GetLivePlaysError, GetLivePlaysResponse, GetLinesData, GetLinesError, GetLinesResponse, GetUserInfoError, GetUserInfoResponse, GetUsageData, GetUsageError, GetUsageResponse, GetGamesData, GetGamesError, GetGamesResponse, GetGameTeamStatsData, GetGameTeamStatsError, GetGameTeamStatsResponse, GetGamePlayerStatsData, GetGamePlayerStatsError, GetGamePlayerStatsResponse, GetMediaData, GetMediaError, GetMediaResponse, GetWeatherData, GetWeatherError, GetWeatherResponse, GetRecordsData, GetRecordsError, GetRecordsResponse, GetCalendarData, GetCalendarError, GetCalendarResponse, GetScoreboardData, GetScoreboardError, GetScoreboardResponse, GetDrivesData, GetDrivesError, GetDrivesResponse, GetDraftTeamsError, GetDraftTeamsResponse, GetDraftPositionsError, GetDraftPositionsResponse, GetDraftPicksData, GetDraftPicksError, GetDraftPicksResponse, GetCoachesData, GetCoachesError, GetCoachesResponse, GetAdvancedBoxScoreData, GetAdvancedBoxScoreError, GetAdvancedBoxScoreResponse } from './types.gen';
4
+ import type { GetAdjustedTeamSeasonStatsData, GetAdjustedTeamSeasonStatsError, GetAdjustedTeamSeasonStatsResponse, GetAdjustedPlayerPassingStatsData, GetAdjustedPlayerPassingStatsError, GetAdjustedPlayerPassingStatsResponse, GetAdjustedPlayerRushingStatsData, GetAdjustedPlayerRushingStatsError, GetAdjustedPlayerRushingStatsResponse, GetKickerPaarData, GetKickerPaarError, GetKickerPaarResponse, GetTeamsData, GetTeamsError, GetTeamsResponse, GetFbsTeamsData, GetFbsTeamsError, GetFbsTeamsResponse, GetMatchupData, GetMatchupError, GetMatchupResponse, GetTeamsAtsData, GetTeamsAtsError, GetTeamsAtsResponse, GetRosterData, GetRosterError, GetRosterResponse, GetConferencesError, GetConferencesResponse, GetTalentData, GetTalentError, GetTalentResponse, GetVenuesError, GetVenuesResponse, GetPlayerSeasonStatsData, GetPlayerSeasonStatsError, GetPlayerSeasonStatsResponse, GetPlayerSeasonSuccessRatesData, GetPlayerSeasonSuccessRatesError, GetPlayerSeasonSuccessRatesResponse, GetPlayerGameSuccessRatesData, GetPlayerGameSuccessRatesError, GetPlayerGameSuccessRatesResponse, GetTeamStatsData, GetTeamStatsError, GetTeamStatsResponse, GetCategoriesError, GetCategoriesResponse, GetAdvancedSeasonStatsData, GetAdvancedSeasonStatsError, GetAdvancedSeasonStatsResponse, GetAdvancedGameStatsData, GetAdvancedGameStatsError, GetAdvancedGameStatsResponse, GetGameHavocStatsData, GetGameHavocStatsError, GetGameHavocStatsResponse, GetRecruitsData, GetRecruitsError, GetRecruitsResponse, GetTeamRecruitingRankingsData, GetTeamRecruitingRankingsError, GetTeamRecruitingRankingsResponse, GetAggregatedTeamRecruitingRatingsData, GetAggregatedTeamRecruitingRatingsError, GetAggregatedTeamRecruitingRatingsResponse, GetSpData, GetSpError, GetSpResponse, GetConferenceSpData, GetConferenceSpError, GetConferenceSpResponse, GetSrsData, GetSrsError, GetSrsResponse, GetExpandedSrsData, GetExpandedSrsError, GetExpandedSrsResponse, GetEloData, GetEloError, GetEloResponse, GetFpiData, GetFpiError, GetFpiResponse, GetRankingsData, GetRankingsError, GetRankingsResponse, GetPlaysData, GetPlaysError, GetPlaysResponse, GetPlayTypesError, GetPlayTypesResponse, GetPlayStatsData, GetPlayStatsError, GetPlayStatsResponse, GetPlayStatTypesError, GetPlayStatTypesResponse, GetCfpPlayoffData, GetCfpPlayoffError, GetCfpPlayoffResponse, GetCfpParticipantsData, GetCfpParticipantsError, GetCfpParticipantsResponse, GetCfpGamesData, GetCfpGamesError, GetCfpGamesResponse, SearchPlayersData, SearchPlayersError, SearchPlayersResponse, GetPlayerUsageData, GetPlayerUsageError, GetPlayerUsageResponse, GetPlayerSeasonOverviewData, GetPlayerSeasonOverviewError, GetPlayerSeasonOverviewResponse, GetReturningProductionData, GetReturningProductionError, GetReturningProductionResponse, GetTransferPortalData, GetTransferPortalError, GetTransferPortalResponse, GetPredictedPointsData, GetPredictedPointsError, GetPredictedPointsResponse, GetPredictedPointsAddedByTeamData, GetPredictedPointsAddedByTeamError, GetPredictedPointsAddedByTeamResponse, GetPredictedPointsAddedByGameData, GetPredictedPointsAddedByGameError, GetPredictedPointsAddedByGameResponse, GetPredictedPointsAddedByPlayerGameData, GetPredictedPointsAddedByPlayerGameError, GetPredictedPointsAddedByPlayerGameResponse, GetPredictedPointsAddedByPlayerSeasonData, GetPredictedPointsAddedByPlayerSeasonError, GetPredictedPointsAddedByPlayerSeasonResponse, GetWinProbabilityData, GetWinProbabilityError, GetWinProbabilityResponse, GetPregameWinProbabilitiesData, GetPregameWinProbabilitiesError, GetPregameWinProbabilitiesResponse, GetFieldGoalExpectedPointsError, GetFieldGoalExpectedPointsResponse, GetLivePlaysData, GetLivePlaysError, GetLivePlaysResponse, GetLinesData, GetLinesError, GetLinesResponse, GetUserInfoError, GetUserInfoResponse, GetUsageData, GetUsageError, GetUsageResponse, GetGamesData, GetGamesError, GetGamesResponse, GetGameTeamStatsData, GetGameTeamStatsError, GetGameTeamStatsResponse, GetGamePlayerStatsData, GetGamePlayerStatsError, GetGamePlayerStatsResponse, GetMediaData, GetMediaError, GetMediaResponse, GetWeatherData, GetWeatherError, GetWeatherResponse, GetRecordsData, GetRecordsError, GetRecordsResponse, GetCalendarData, GetCalendarError, GetCalendarResponse, GetScoreboardData, GetScoreboardError, GetScoreboardResponse, GetDrivesData, GetDrivesError, GetDrivesResponse, GetDraftTeamsError, GetDraftTeamsResponse, GetDraftPositionsError, GetDraftPositionsResponse, GetDraftPicksData, GetDraftPicksError, GetDraftPicksResponse, GetCoachesData, GetCoachesError, GetCoachesResponse, GetCoachProfileData, GetCoachProfileError, GetCoachProfileResponse, GetCoachSeasonsData, GetCoachSeasonsError, GetCoachSeasonsResponse, GetCoachTenuresData, GetCoachTenuresError, GetCoachTenuresResponse, GetAdvancedBoxScoreData, GetAdvancedBoxScoreError, GetAdvancedBoxScoreResponse } from './types.gen';
5
5
 
6
6
  export const client = createClient(createConfig({ baseUrl: 'https://api.collegefootballdata.com' }));
7
7
 
@@ -675,6 +675,37 @@ export const getCoaches = <ThrowOnError extends boolean = false>(options?: Optio
675
675
  });
676
676
  };
677
677
 
678
+ /**
679
+ * Retrieves canonical coach identity and complete career totals
680
+ */
681
+ export const getCoachProfile = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetCoachProfileData, ThrowOnError>) => {
682
+ return (options?.client ?? client).get<GetCoachProfileResponse, GetCoachProfileError, ThrowOnError>({
683
+ ...options,
684
+ url: '/coaches/profile'
685
+ });
686
+ };
687
+
688
+ /**
689
+ * Retrieves detailed coach-season records with attributed results and
690
+ * whole-team season context
691
+ */
692
+ export const getCoachSeasons = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetCoachSeasonsData, ThrowOnError>) => {
693
+ return (options?.client ?? client).get<GetCoachSeasonsResponse, GetCoachSeasonsError, ThrowOnError>({
694
+ ...options,
695
+ url: '/coaches/seasons'
696
+ });
697
+ };
698
+
699
+ /**
700
+ * Retrieves continuous head-coaching stints and attributed records
701
+ */
702
+ export const getCoachTenures = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetCoachTenuresData, ThrowOnError>) => {
703
+ return (options?.client ?? client).get<GetCoachTenuresResponse, GetCoachTenuresError, ThrowOnError>({
704
+ ...options,
705
+ url: '/coaches/tenures'
706
+ });
707
+ };
708
+
678
709
  /**
679
710
  * Retrieves an advanced box score for a game
680
711
  */
package/src/types.gen.ts CHANGED
@@ -311,6 +311,8 @@ export type CalendarWeek = {
311
311
  lastGameStart: string;
312
312
  };
313
313
 
314
+ export type CfpCoachSeasonOutcome = 'active' | 'eliminated' | 'champion';
315
+
314
316
  export type CfpPlayoff = {
315
317
  season: number;
316
318
  competition: PlayoffCompetition_Cfp;
@@ -329,19 +331,129 @@ export type CfpPlayoffNotFound = {
329
331
  export type message = 'CFP playoff not found';
330
332
 
331
333
  export type Coach = {
334
+ id: number;
332
335
  firstName: string;
333
336
  lastName: string;
337
+ /**
338
+ * @deprecated
339
+ */
334
340
  hireDate: (string) | null;
335
341
  seasons: Array<CoachSeason>;
336
342
  };
337
343
 
344
+ export type CoachAlmaMater = {
345
+ id: number;
346
+ school: string;
347
+ };
348
+
349
+ export type CoachCareer = {
350
+ games: number;
351
+ wins: number;
352
+ losses: number;
353
+ ties: number;
354
+ winPercentage: (number) | null;
355
+ seasons: number;
356
+ teams: number;
357
+ firstYear: number;
358
+ lastYear: number;
359
+ };
360
+
361
+ export type CoachCfpContext = {
362
+ appeared: boolean;
363
+ seed: (number) | null;
364
+ outcome: ((CfpCoachSeasonOutcome) | null);
365
+ };
366
+
367
+ export type CoachDraftContext = {
368
+ year: number;
369
+ totalPicks: number;
370
+ firstRoundPicks: number;
371
+ };
372
+
373
+ export type CoachNotFound = {
374
+ message: 'Coach not found';
375
+ };
376
+
377
+ export type message2 = 'Coach not found';
378
+
379
+ export type CoachPollResume = {
380
+ preseasonRank: (number) | null;
381
+ postseasonRank: (number) | null;
382
+ bestRank: (number) | null;
383
+ weeksRanked: number;
384
+ weeksTopTen: number;
385
+ };
386
+
387
+ export type CoachProfile = {
388
+ id: number;
389
+ firstName: string;
390
+ lastName: string;
391
+ displayName: (string) | null;
392
+ currentTeam: ((CoachSeasonTeamReference) | null);
393
+ career: CoachCareer;
394
+ birthDate: (string) | null;
395
+ almaMater: ((CoachAlmaMater) | null);
396
+ graduationYear: (number) | null;
397
+ wikidataId: (string) | null;
398
+ hallOfFameYear: (number) | null;
399
+ };
400
+
401
+ export type CoachRatingContext = {
402
+ spSpecialTeams: (number) | null;
403
+ strengthOfSchedule: (number) | null;
404
+ secondOrderWins: (number) | null;
405
+ fpi: (number) | null;
406
+ yearOverYear: {
407
+ spOverall: (number) | null;
408
+ srs: (number) | null;
409
+ wins: (number) | null;
410
+ };
411
+ };
412
+
413
+ export type CoachRecord = {
414
+ games: number;
415
+ wins: number;
416
+ losses: number;
417
+ ties: number;
418
+ winPercentage: (number) | null;
419
+ };
420
+
421
+ export type CoachRecordSplits = {
422
+ conference: CoachRecord;
423
+ postseason: CoachRecord;
424
+ home: CoachRecord;
425
+ away: CoachRecord;
426
+ neutral: CoachRecord;
427
+ };
428
+
429
+ export type CoachRecruitingContext = {
430
+ rank: (number) | null;
431
+ points: (number) | null;
432
+ talent: (number) | null;
433
+ };
434
+
435
+ export type CoachReference = {
436
+ id: number;
437
+ firstName: string;
438
+ lastName: string;
439
+ };
440
+
441
+ export type CoachScoring = {
442
+ pointsFor: number;
443
+ pointsAgainst: number;
444
+ averagePointDifferential: (number) | null;
445
+ };
446
+
338
447
  export type CoachSeason = {
448
+ teamId: number;
339
449
  school: string;
450
+ conference: (string) | null;
340
451
  year: number;
341
452
  games: number;
342
453
  wins: number;
343
454
  losses: number;
344
455
  ties: number;
456
+ winPercentage: (number) | null;
345
457
  preseasonRank: (number) | null;
346
458
  postseasonRank: (number) | null;
347
459
  srs: (number) | null;
@@ -350,6 +462,33 @@ export type CoachSeason = {
350
462
  spDefense: (number) | null;
351
463
  };
352
464
 
465
+ export type CoachSeasonTeamReference = {
466
+ id: number;
467
+ school: string;
468
+ conference: (string) | null;
469
+ };
470
+
471
+ export type CoachTeamReference = {
472
+ id: number;
473
+ school: string;
474
+ };
475
+
476
+ export type CoachTenure = {
477
+ id: number;
478
+ coach: CoachReference;
479
+ team: CoachTeamReference;
480
+ hireDate: (string) | null;
481
+ startYear: number;
482
+ endYear: (number) | null;
483
+ effectiveStart: (string) | null;
484
+ effectiveEnd: (string) | null;
485
+ isInterim: boolean;
486
+ active: boolean;
487
+ seasons: number;
488
+ record: CoachRecord;
489
+ attributionComplete: boolean;
490
+ };
491
+
353
492
  export type Conference = {
354
493
  id: number;
355
494
  name: string;
@@ -394,6 +533,31 @@ export type ConferenceSP = {
394
533
  };
395
534
  };
396
535
 
536
+ export type DetailedCoachSeason = {
537
+ games: number;
538
+ wins: number;
539
+ losses: number;
540
+ ties: number;
541
+ winPercentage: (number) | null;
542
+ coach: CoachReference;
543
+ team: CoachSeasonTeamReference;
544
+ year: number;
545
+ preseasonRank: (number) | null;
546
+ postseasonRank: (number) | null;
547
+ srs: (number) | null;
548
+ spOverall: (number) | null;
549
+ spOffense: (number) | null;
550
+ spDefense: (number) | null;
551
+ teamMetrics: CoachRatingContext;
552
+ recruiting: CoachRecruitingContext;
553
+ pollResume: ((CoachPollResume) | null);
554
+ attributionComplete: boolean;
555
+ recordSplits: ((CoachRecordSplits) | null);
556
+ scoring: ((CoachScoring) | null);
557
+ cfp: CoachCfpContext;
558
+ draftFollowingSeason: ((CoachDraftContext) | null);
559
+ };
560
+
397
561
  export type DivisionClassification = 'fbs' | 'fcs' | 'ii' | 'iii';
398
562
 
399
563
  export type DraftPick = {
@@ -1275,8 +1439,8 @@ export type Recruit = {
1275
1439
  position: (string) | null;
1276
1440
  height: (number) | null;
1277
1441
  weight: (number) | null;
1278
- stars: number;
1279
- rating: number;
1442
+ stars: (number) | null;
1443
+ rating: (number) | null;
1280
1444
  city: (string) | null;
1281
1445
  stateProvince: (string) | null;
1282
1446
  country: (string) | null;
@@ -3357,6 +3521,79 @@ export type GetCoachesResponse = (Array<Coach>);
3357
3521
 
3358
3522
  export type GetCoachesError = unknown;
3359
3523
 
3524
+ export type GetCoachProfileData = {
3525
+ query: {
3526
+ /**
3527
+ * Required coach ID
3528
+ */
3529
+ coachId: number;
3530
+ };
3531
+ };
3532
+
3533
+ export type GetCoachProfileResponse = (CoachProfile);
3534
+
3535
+ export type GetCoachProfileError = ({
3536
+ message: string;
3537
+ } | CoachNotFound);
3538
+
3539
+ export type GetCoachSeasonsData = {
3540
+ query?: {
3541
+ /**
3542
+ * Optional coach ID
3543
+ */
3544
+ coachId?: number;
3545
+ /**
3546
+ * Optional end year range filter
3547
+ */
3548
+ maxYear?: number;
3549
+ /**
3550
+ * Optional start year range filter
3551
+ */
3552
+ minYear?: number;
3553
+ /**
3554
+ * Optional team filter
3555
+ */
3556
+ team?: string;
3557
+ /**
3558
+ * Optional exact season year
3559
+ */
3560
+ year?: number;
3561
+ };
3562
+ };
3563
+
3564
+ export type GetCoachSeasonsResponse = (Array<DetailedCoachSeason>);
3565
+
3566
+ export type GetCoachSeasonsError = ({
3567
+ message: string;
3568
+ });
3569
+
3570
+ export type GetCoachTenuresData = {
3571
+ query?: {
3572
+ /**
3573
+ * Optional active-tenure filter
3574
+ */
3575
+ active?: boolean;
3576
+ /**
3577
+ * Optional coach ID
3578
+ */
3579
+ coachId?: number;
3580
+ /**
3581
+ * Optional team filter
3582
+ */
3583
+ team?: string;
3584
+ /**
3585
+ * Optional season year contained by the tenure
3586
+ */
3587
+ year?: number;
3588
+ };
3589
+ };
3590
+
3591
+ export type GetCoachTenuresResponse = (Array<CoachTenure>);
3592
+
3593
+ export type GetCoachTenuresError = ({
3594
+ message: string;
3595
+ });
3596
+
3360
3597
  export type GetAdvancedBoxScoreData = {
3361
3598
  query: {
3362
3599
  /**
package/cfbd-5.20.0.tgz DELETED
Binary file