STAT-API

PGA Data Dictionary

Main

golf.players16 fieldsendpoints →

Every professional golfer — active tour members, conditional-status players, alumni who have competed at the highest level, and country-of-origin information.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
league_idstringnullable—52955Official tour player identifier
league_player_idinteger—52955Official PGA Tour player id
birth_citystringnullable—Seoul—
birth_countrystringnullable—United States—
birth_datedatenullable—1989-07-23—
birth_statestringnullable—California—
collegestringnullable—Oklahoma State University—
countrystringnullable—USA—
first_namestring—David—
full_namestring—Zach Johnson—
last_namestring—Kim—
pga_debut_yearintegernullable—2018—
photo_urlstringnullable———
short_namestringnullable—C. Johnson—
swingsstringnullable——Right, Left
golf.seasons6 fields· 1 refsendpoints →

Each season on a professional golf tour — the year-long schedule of tournaments leading up to the FedExCup playoffs (PGA), the major championships, and the season-ending Tour Championship.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
league_idstringnullable—liv-2021Official tour season identifier
tour_idbigint→ golf.tours14—
end_datetimestamptznullable—2021-12-31T00:00:00.000Z—
start_datetimestamptz—2021-01-01T00:00:00.000Z—
start_yearinteger—2021—
golf.tournaments21 fields· 2 refsendpoints →

Every professional golf tournament — the four majors (Masters, PGA Championship, U.S. Open, Open Championship), the PGA Tour stops, LIV events, the FedExCup playoffs, and Korn Ferry Tour events.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
league_idstringnullable—R2025016Official tour tournament identifier
season_idbigintnullable→ golf.seasons22—
tour_idbigintnullable→ golf.tours12—
canceledboolean—false—
citystringnullable—Ponte Vedra Beach—
countrystringnullable—United States of America—
ValuesUnited States of AmericaMexicoJapanBermudaPuerto RicoDominican RepublicScotlandCanadaEnglandNorthern IrelandFranceItalyBahamasSouth KoreaPeople's Republic of ChinaAustralia
end_datetimestamptznullable———
is_in_progressboolean—false—
is_overboolean—true—
Valuestruefalse
namestring—The RSM Classic—
parintegernullable———
pursebigintnullable—2000000000Total prize money in cents
roundsintegernullable———
start_datetimestamptz—2025-03-06T00:00:00.000Z—
start_date_timetimestamptznullable———
statestringnullable—California—
time_zonestringnullable———
venuestringnullable—Torrey Pines Golf Course (South Course)—
yardsintegernullable———
zipstringnullable———

Plays

golf.player_rounds25 fields· 2 refsendpoints →

Each player's scoring line for each round of every professional golf tournament — total strokes, score relative to par, eagles, birdies, bogeys, and double-bogeys. (Ball-striking detail — fairways, greens in regulation, putts — is not carried here.)

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigint→ golf.players194—
tournament_idbigint→ golf.tournaments887—
back_nine_startbooleannullable———
birdiesintegernullable—4—
bogeysintegernullable—2—
daydatenullable———
double_bogeysintegernullable—0—
double_eaglesintegernullable—0—
eaglesintegernullable—0—
holes_in_oneintegernullable—0—
parintegernullable—72—
parsintegernullable—12—
round_numberinteger—1—
scoreintegernullable—70Total strokes for round
sg_approachdecimalnullable—-0.8480—
sg_around_greendecimalnullable—0.7610—
sg_off_teedecimalnullable—0.8570—
sg_puttingdecimalnullable—1.6950—
sg_tee_to_greendecimalnullable—0.2610—
sg_totaldecimalnullable—-0.1640—
tee_timetimestamptznullable———
triple_bogeysintegernullable—0—
worse_than_double_bogeyintegernullable—0—
worse_than_triple_bogeyintegernullable—0—
golf.player_shots30 fields· 2 refsendpoints →

Shot-by-shot tracking for each player at each professional tournament — every stroke with its type, start/end location, distance, ShotLink/TOURCAST course coordinates, and TrackMan radar metrics (club & ball speed, spin, launch angle, apex, carry). Available for regular PGA Tour events with ShotLink; majors such as the Masters do not publish shot tracking.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigint→ golf.players20—
tournament_idbigint→ golf.tournaments255—
apex_heightfloatnullable—99.61—
ball_speedfloatnullable—175.15—
carry_distancefloatnullable—269.59—
club_speedfloatnullable—0—
distance_remaining_yardsfloatnullable—145Distance to the hole after the shot, in yards
distance_yardsfloatnullable—289Shot distance in yards (null when the source reports feet near the green)
final_strokebooleannullable—false—
Valuesfalsetrue
from_locationstringnullable—Green—
ValuesGreenTee BoxFairwayPrimary RoughIntermediate RoughGreenside BunkerFairway BunkerNative AreaOtherFringe
from_location_codestringnullable—OGR—
ValuesOGROTBOFWOROOIROGSOSTONAOTHOCO
from_xfloatnullable—7309.9—
from_yfloatnullable—11300.88—
from_zfloatnullable—246.065—
hole_numberinteger—9—
launch_anglefloatnullable—8.74Vertical launch angle (degrees)
launch_spinfloatnullable—0—
parintegernullable—4—
play_by_playstringnullable—In the hole—
round_numberinteger—3—
shot_numberinteger—1Stroke sequence within the hole (1 = first stroke)
smash_factorfloatnullable—0—
spin_axisfloatnullable—0—
stroke_typestringnullable—STROKESTROKE, PENALTY, DROP, PROVISIONAL
ValuesSTROKEDROPPENALTYPROVISIONAL
to_locationstringnullable—Green—
to_location_codestringnullable—OGR—
to_xfloatnullable—5799.6—
to_yfloatnullable—12140.75—
to_zfloatnullable—358.62—
golf.tournament_rounds5 fields· 1 refsendpoints →

Each round of every professional golf tournament — round 1 (Thursday), round 2 (Friday cut day), and the weekend rounds (Saturday and Sunday) plus any playoff holes.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
round_idinteger—20250161—
tournament_idbigint→ golf.tournaments1—
daydate—2025-03-05—
round_numberinteger—1—
golf.player_holes17 fields· 3 refsendpoints →

Hole-by-hole scoring for each player at each professional tournament — strokes and score relative to par per hole. (Shot-level tracking — drive distance, approach result, putts — is not carried here.)

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigint→ golf.players193—
player_round_idbigint→ golf.player_rounds1—
tournament_idbigint→ golf.tournaments255—
birdiebooleannullable—false—
Valuesfalsetrue
bogeybooleannullable—false—
Valuesfalsetrue
double_bogeybooleannullable—false—
Valuesfalsetrue
double_eaglebooleannullable———
eaglebooleannullable—false—
Valuesfalsetrue
hole_in_onebooleannullable—false—
hole_numberinteger—1—
is_parbooleannullable—true—
Valuestruefalse
parintegernullable—4—
round_numberinteger—1—
scoreintegernullable—4—
to_parintegernullable—0Score relative to par for this hole
worse_than_double_bogeybooleannullable—false—
Valuesfalsetrue

Stats

golf.operator_player_lookups8 fields· 2 refsendpoints →

How each sportsbook and fantasy operator names every professional golfer — the mapping from each operator's player identifier to a unified player record.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
operator_idbigint→ main.operators1Operator id: 1 DraftKings, 2 FanDuel, 3 Yahoo, 13 sportsdata.io.
operator_player_idstring—52955External player ID from operator
player_idbigintnullable→ golf.players1Internal golf.players.id reference
decided_attimestamptznullable—2026-08-20T21:44:47.304ZWhen the pin or block was decided.
decided_reasonstringnullable—DraftKings' Zach Johnson on 2021+ PGA Tour slates. 90 is the 1976-born veteran with 55 tournaments …Evidence behind a pinned or blocked decision.
ValuesDraftKings' Zach Johnson on 2021+ PGA Tour slates. 90 is the 1976-born veteran with 55 tournaments …FanDuel's Zach Johnson (bare part of composite ids like 85802-78291), same adjudication as DK 2049:…
decisionstringnullable—derivedHow this mapping was decided: 'derived' (finder answer, overwritable), 'pinned' (decided on evidence, trigger-protected), 'blocked' (no player we hold is this id; player_id NULL, never retried). DB default 'derived'; a BEFORE UPDATE trigger preserves non-derived rows.
Valuesderivedpinned
player_namestringnullable—Aaron BaddeleyPlayer name for reconciliation
golf.player_season_stats40 fields· 3 refsendpoints →

Season totals for each professional golfer — events played, cuts made, top-10 finishes, wins, and prize money earned. Ball-striking and strokes-gained metrics are not carried here.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigint→ golf.players38—
season_idbigintnullable→ golf.seasons15—
tour_idbigintnullable→ golf.tours12—
birdiesintegernullable—6—
bogey_free_roundsintegernullable—0—
bogeysintegernullable—9—
bounce_back_countintegernullable—1—
consecutive_birdie_or_better_countintegernullable———
cuts_madeintegernullable—1—
double_bogeysintegernullable—0—
double_eaglesintegernullable—0—
driving_accuracy_pctdecimalnullable—59.6600—
driving_distancedecimalnullable—306.3000Average driving distance in yards
eaglesintegernullable—0—
eventsintegernullable—1—
gir_pctdecimalnullable—69.9700Greens in regulation percentage
holes_in_oneintegernullable—0—
parsintegernullable—22—
putts_per_rounddecimalnullable—28.5100—
roundsintegernullable—2—
rounds_under_seventyintegernullable—0—
scrambling_pctdecimalnullable—58.3500—
second_placeintegernullable—0—
sg_approachdecimalnullable—-2.4415—
sg_around_greendecimalnullable—0.4845—
sg_off_teedecimalnullable—-0.2285—
sg_puttingdecimalnullable—-1.2805—
sg_totaldecimalnullable—-0.8370—
streaks_of_three_birdies_or_betterintegernullable—0—
third_placeintegernullable—0—
top_fiveintegernullable—0—
top_tenintegernullable—0—
top_twenty_fiveintegernullable—0—
total_scoreintegernullable—7Total score relative to par
total_strokesintegernullable—144—
triple_bogeysintegernullable—0—
winsintegernullable—0—
worse_than_double_bogeyintegernullable—0—
worse_than_triple_bogeyintegernullable—0—
golf.course_hole_stats15 fields· 1 refsendpoints →

Per-hole scoring statistics for each round of a tournament — par, yardage, the field's scoring average and its relation to par, and the distribution of eagles, birdies, pars, and bogeys, plus difficulty rank.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
tournament_idbigint→ golf.tournaments887—
birdiesintegernullable—8—
bogeysintegernullable—4—
course_codestring—006PGA Tour course code (e.g., 014 = Augusta National)
double_bogeysintegernullable—0—
eaglesintegernullable—0—
hole_numberinteger—1—
parintegernullable—4—
parsintegernullable—50—
rankintegernullable—1Difficulty rank among holes (1 = hardest)
round_numberinteger—2—
scoring_averagedecimalnullable—4.0000—
scoring_average_diffdecimalnullable—0.0000Scoring average relative to par
yardsintegernullable—450—
golf.leaderboards23 fields· 2 refsendpoints →

The full leaderboard of every professional golf tournament — each player's position, score relative to par, total strokes, made cut/missed cut status, and prize money.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigint→ golf.players61—
player_tournament_idinteger—54591—
tournament_idbigint→ golf.tournaments257—
earningsbigintnullable——Prize money earned in cents
fedex_ptsintegernullable———
is_alternatebooleannullable———
is_withdrawnbooleannullable—false—
Valuesfalsetrue
made_cutintegernullable—11 if made cut, 0 if missed
made_cut_did_not_finishbooleannullable———
rankintegernullable—2—
sg_approachdecimalnullable—11.7050—
sg_around_greendecimalnullable—4.4940—
sg_off_teedecimalnullable—0.6840—
sg_puttingdecimalnullable—7.1580—
sg_tee_to_greendecimalnullable—16.4630—
sg_totaldecimalnullable—-0.3120—
tee_timetimestamptznullable———
total_scoreintegernullable—-1Score relative to par
total_strokesintegernullable—143—
total_throughintegernullable——Current hole of player for current round
tournament_statusstringnullable—COMPLETEout, active, etc.
ValuesCOMPLETEWITHDRAWNDISQUALIFIED
winintegernullable—01 if won tournament

Odds

golf.tournament_odds22 fields· 2 refsendpoints →

Outright betting odds for professional golf tournaments — who wins the event, top-5/top-10/top-20 finish markets, head-to-head matchups, and other tournament-level wagers from sportsbooks.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
matchup_opponent_idbigintnullable———
player_idbigint→ golf.players195—
round_matchup_opponent_idbigintnullable———
three_ball_opponent1_idbigintnullable———
three_ball_opponent2_idbigintnullable———
tournament_idbigint→ golf.tournaments604—
first_round_leader_oddsintegernullable———
is_alternatebooleannullable———
is_availablebooleannullable—true—
make_cut_oddsintegernullable———
matchup_oddsintegernullable———
matchup_opponent_oddsintegernullable———
miss_cut_oddsintegernullable———
outright_oddsintegernullable—15000Odds to win tournament (American format)
round_matchup_oddsintegernullable———
round_matchup_opponent_oddsintegernullable———
sportsbookstringnullable—fanduelDraftKings, FanDuel, BetMGM, etc.
Valuesfandueldraftkingsbetfairwilliamhill_usunibetintertopslowvigbetriversbetmgmbarstoolsugarhousebetonlineagfoxbetbovadasuperbookunibet_ustwinspiresgtbets
three_ball_oddsintegernullable———
top_five_oddsintegernullable———
top_ten_oddsintegernullable———
top_twenty_oddsintegernullable———

Misc

golf.tours6 fieldsendpoints →

Professional golf tours — the PGA Tour, LIV Golf, the DP World Tour (formerly European Tour), the Korn Ferry Tour, the LPGA, and other competitive circuits.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
activeboolean—true—
codestring—pgaTour code (pga, european, liv, lpga, champions, korn_ferry)
Valuespgaeuropeanlivlpgachampionskorn_ferry
descriptionstringnullable—Professional Golf Association Tour—
ValuesProfessional Golf Association TourDP World Tour (formerly European Tour)LIV Golf Invitational SeriesLadies Professional Golf Association TourPGA Tour Champions (senior tour)PGA Tour developmental tour
logo_urlstringnullable———
namestring—PGA Tour—
ValuesPGA TourEuropean Tour (DP World Tour)LIV GolfLPGA TourChampions TourKorn Ferry Tour
golf.courses15 fieldsendpoints →

Golf courses that host professional events — Augusta National, Pebble Beach, St Andrews, TPC Sawgrass, and every other venue on the PGA, LIV, DP World, and Korn Ferry calendars.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
league_course_idintegernullable—656Official PGA Tour course id
addressstringnullable———
citystringnullable—La Quinta—
countrystringnullable—USA—
ValuesUSACANMEXSCOPURDOMFRAJPNBERBAHENG
elevationfloatnullable——Elevation in feet above sea level
image_urlstringnullable—https://res.cloudinary.com/pgatour-prod/ar_0.667,c_crop/d_placeholders:tournamentBackgroundSolid.pn…URL to aerial/overview image of course
latitudefloatnullable———
longitudefloatnullable———
namestring—Plantation Course at Kapalua—
parinteger—72—
statestringnullable—California—
timezonestringnullable——IANA timezone (e.g., America/New_York)
yardsinteger—7569—
zipstringnullable———
golf.player_news17 fields· 2 refsendpoints →

News about professional golfers — equipment changes, swing coach updates, sponsorships, tour-status changes, suspensions, and general beat-reporter updates.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigintnullable→ golf.players168—
tournament_idbigintnullable→ golf.tournaments——
ai_processedboolean—false—
authorstringnullable———
categoriesstringnullable—Latest—
contentstringnullable—Pairings, predictions and betting odds for each Sunday Singles matchup—
news_timetimestamptz—2025-08-04T15:19:00.000Z—
original_sourcestringnullable———
original_source_urlstringnullable———
priorityinteger—10—
situational_impactjsonbnullable——Structured situational impact assessment and fantasy implications for the player.
sourcestringnullable—pga_tour—
terms_of_usestringnullable———
titlestring—One-liners: Get to know all 70 players who made 2025 FedExCup Playoffs—
updated_timetimestamptznullable—2025-08-04T15:28:47.169Z—
urlstringnullable—https://www.pgatour.com/article/news/latest/2025/08/04/70-one-liners-for-fedexcup-playoffs-st-jude-…—