STAT-API

PGA player_holes API

player_holesgolf.player_holes
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.)
GET/api/v1/pga/player_holes
Requires one of: player_id or tournament_id — requests satisfying none of these return 400.
Parameters
player_idquerybigintoptional
Filter to a single player.
tournament_idquerybigintoptional
Filter to a single tournament.
limitqueryintegeroptionaldefault 50
Page size. Defaults to 50; max 5000.
from_idquerybigintoptional
Return rows with id strictly greater than this value; page using the previous response's `next_from_id`. Omit on the first page.
Restores the documented defaults (trial keys only accept the unchanged defaults).
Request
curl -sS --compressed \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  'https://api.stat-api.com/api/v1/pga/player_holes?player_id=1'
Responses
200player_holes rows matching the declared filter set, wrapped in { player_holes, limit, next_from_id }. next_from_id is the last row's id on a full page — pass it back via ?from_id= to walk the full result; null marks the terminal page.application/jsonshow example ▸
400No declared filter set was satisfied — response body matches MissingRequiredFiltersError; pick one combo from the accepted-sets hint and resend.application/json
Response Schema(17 fields)show schema ▸
FieldTypeReferencesDescription
idkey
bigint—Primary Key
player_id
bigint—
e.g. 193
player_round_id
bigint—
e.g. 1
tournament_id
bigint—
e.g. 255
birdie
booleannullable——
Values:falsetrue
bogey
booleannullable——
Values:falsetrue
double_bogey
booleannullable——
Values:falsetrue
double_eagle
booleannullable——
e.g. — (all-null in sample)
eagle
booleannullable——
Values:falsetrue
hole_in_one
booleannullable——
e.g. false
hole_number
integer——
e.g. 1
is_par
booleannullable——
Values:truefalse
par
integernullable——
e.g. 4
round_number
integer——
e.g. 1
score
integernullable——
e.g. 4
to_par
integernullable—Score relative to par for this hole
e.g. 0
worse_than_double_bogey
booleannullable——
Values:falsetrue
GET/api/v1/pga/player_holes/{id}
Parameters
idpathbigintrequired
Primary key (id) of the player_hole row.
Restores the documented defaults (trial keys only accept the unchanged defaults).
Request
curl -sS --compressed \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  'https://api.stat-api.com/api/v1/pga/player_holes/{pk_value}'
Responses
200Single player_hole row.application/jsonshow example ▸
404Row not found.
Response Schema(17 fields)show schema ▸
FieldTypeReferencesDescription
idkey
bigint—Primary Key
player_id
bigint—
e.g. 193
player_round_id
bigint—
e.g. 1
tournament_id
bigint—
e.g. 255
birdie
booleannullable——
Values:falsetrue
bogey
booleannullable——
Values:falsetrue
double_bogey
booleannullable——
Values:falsetrue
double_eagle
booleannullable——
e.g. — (all-null in sample)
eagle
booleannullable——
Values:falsetrue
hole_in_one
booleannullable——
e.g. false
hole_number
integer——
e.g. 1
is_par
booleannullable——
Values:truefalse
par
integernullable——
e.g. 4
round_number
integer——
e.g. 1
score
integernullable——
e.g. 4
to_par
integernullable—Score relative to par for this hole
e.g. 0
worse_than_double_bogey
booleannullable——
Values:falsetrue