GuidesDocs
Coverage MatrixDocumentationChange LogLog InContact Us
Guides

Tracking Playoffs

This integration scenario explains how to track playoff data in golf tournaments using the Sportradar Golf API. It focuses on detecting when a tournament moves to a playoff, retrieving playoff leaderboard data, and pulling hole-by-hole scoring for full playoff rounds.

This scenario is commonly used to:

  • Display playoff leaderboards alongside the main tournament leaderboard
  • Track sudden-death scoring on a hole-by-hole basis
  • Power live scoring tickers and notifications during playoff finishes
  • Drive tournament finalization workflows


Overview

When a stroke-play tournament ends with two or more players tied for the lead, the tournament moves to a playoff to determine the winner. Playoffs can take several forms, from a single sudden-death hole to a full additional round, depending on the tournament's rules.

In the Golf API, playoffs are surfaced through the same Tournament Leaderboard and Scorecards Per Round feeds used during regulation play. The tournament's status shifts to playoff when a playoff begins, and a dedicated playoff element appears on the leaderboard for the players involved.


Playoff Lifecycle

The diagram below shows how a tournament transitions through a playoff scenario, from the final round of regulation play to tournament closure.

Playoff LifecycleFrom the final round to closed
No tiefinal round closescompleteclosed
Tie for the leadinprogresstied for the leadplayoffplayoff element appears on the leaderboard
Where scores land
Sudden death (most PGA Tour events): scores publish only in the leaderboard playoff array
Full extra round: hole-by-hole scoring from Scorecards Per Round with playoff/01 in the path
Resolutionwinner decidedcompleteclosed
Playoffs are never pre-scheduled, so detection must be reactive: watch tournament.status near the end of the final round. The live cache tier and Push behavior carry through the extra holes unchanged.

Before You Start: Playoff Status and Behavior

Playoffs are not pre-scheduled. They only occur when regulation play ends in a tie for the lead. Your integration should be prepared to handle a tournament transitioning from inprogress to playoff near the end of the final scheduled round.

Key behaviors to expect:

  • The tournament status transitions to playoff when a playoff begins
  • A playoff element appears on the Tournament Leaderboard containing only the tied players
  • If a complete playoff round is played, hole-by-hole data is available in Scorecards Per Round using playoff as the round type
  • Once the playoff resolves, the tournament moves to complete, then closed

For a visual breakdown of the round and tournament status transitions during a playoff, see our Tournament Status Workflow page.


💡

Best Practice

Watch for the playoff status transition near the end of the final scheduled round. The live-play cache tier (3-second TTL) continues through a playoff, so your polling cadence and Push behavior carry over unchanged.

When retrieving hole-by-hole playoff scoring, substitute playoff for rounds in the Scorecards Per Round URL path.


Relevant Feeds

The following feeds are used when tracking playoffs:

FeedPurpose
Tournament LeaderboardDetect playoff status and retrieve playoff leaderboard positions
Scorecards Per RoundRetrieve hole-by-hole scoring during a full playoff round
Push LeaderboardStream real-time playoff leaderboard updates
Push ScorecardStream real-time hole-by-hole playoff scoring updates


High-Level Workflow

A typical playoff integration follows this flow:

Tournament Leaderboard → Detect playoff Status → Playoff Element / Scorecards → Final Resolution

  1. Monitor tournament status during the final round
  2. Detect the transition to playoff
  3. Retrieve playoff leaderboard data
  4. Optionally pull hole-by-hole playoff scoring
  5. Track the transition to complete and closed


Integration Steps


1. Detect the Playoff Transition

While tracking a live tournament, monitor the tournament.status field returned in the Tournament Leaderboard feed. When regulation play ends with players tied for the lead, the status transitions from inprogress to playoff.

GET https://api.sportradar.com/golf/{access_level}/{golf_tour}/v3/{language_code}/{season_year}/tournaments/{tournament_id}/leaderboard.{format}

The snippets below show the same tournament's leaderboard at two points: the final round ending in a tie, and the moment the playoff begins.

Before the transition (inprogress, players tied at the top)

{
  "name": "Example Tournament",
  "status": "inprogress",
  "leaderboard": [
    {
      "id": "3e4963cb-6e80-4393-85cf-2aecec453c4a",
      "first_name": "Jordan",
      "last_name": "Spieth",
      "position": 1,
      "tied": true,
      "score": -12,
      "strokes": 268
    },
    {
      "id": "e260788d-657a-4d72-9766-82f27a9c66ba",
      "first_name": "Sean",
      "last_name": "O'Hair",
      "position": 1,
      "tied": true,
      "score": -12,
      "strokes": 268
    }
  ]
}

After the transition (playoff, playoff element appears)

{
  "name": "Example Tournament",
  "status": "playoff",
  "leaderboard": [
    {
      "id": "3e4963cb-6e80-4393-85cf-2aecec453c4a",
      "position": 1,
      "tied": true,
      "score": -12,
      "strokes": 268
    },
    {
      "id": "e260788d-657a-4d72-9766-82f27a9c66ba",
      "position": 1,
      "tied": true,
      "score": -12,
      "strokes": 268
    }
  ],
  "playoff": [
    {
      "id": "3e4963cb-6e80-4393-85cf-2aecec453c4a",
      "first_name": "Jordan",
      "last_name": "Spieth",
      "position": 1,
      "tied": true,
      "score": 0,
      "strokes": 0
    }
  ]
}

Two things change in the response: the top-level status shifts from inprogress to playoff, and a new playoff array appears with only the tied players.

Why this matters

  • Playoffs are not pre-scheduled, so detection must be reactive
  • The playoff status drives UI changes and notification logic
  • The same Tournament Leaderboard feed that powers live tracking surfaces playoff data

2. Retrieve Playoff Leaderboard Data

Once the tournament status is playoff, the Tournament Leaderboard response includes a dedicated playoff element containing only the players participating in the playoff. Each playoff player includes their current playoff score and a per-round summary. The example below is the playoff element from the 2024 Sony Open in Hawaii, decided in sudden death:

{
  "playoff": [
    {
      "id": "7edd8344-4f0b-4ea0-beb2-cdb5c093890f",
      "first_name": "Grayson",
      "last_name": "Murray",
      "position": 1,
      "tied": false,
      "score": -1,
      "strokes": 4,
      "abbr_name": "G.Murray",
      "rounds": [
        { "score": -1, "strokes": 4, "thru": 1, "birdies": 1, "pars": 0, "bogeys": 0, "sequence": 1 }
      ]
    },
    {
      "id": "0b5d3fd6-e3ec-4efd-8743-60db44c87425",
      "first_name": "Keegan",
      "last_name": "Bradley",
      "position": 2,
      "tied": true,
      "score": 0,
      "strokes": 5,
      "abbr_name": "K.Bradley",
      "rounds": [
        { "score": 0, "strokes": 5, "thru": 1, "birdies": 0, "pars": 1, "bogeys": 0, "sequence": 1 }
      ]
    },
    {
      "id": "5a9ea77c-7323-4f26-86b5-f6adc3b7e00a",
      "first_name": "Byeong Hun",
      "last_name": "An",
      "position": 2,
      "tied": true,
      "score": 0,
      "strokes": 5,
      "abbr_name": "B.An",
      "rounds": [
        { "score": 0, "strokes": 5, "thru": 1, "birdies": 0, "pars": 1, "bogeys": 0, "sequence": 1 }
      ]
    }
  ]
}

The playoff element returns:

  • Player position and tied status within the playoff
  • Playoff score (relative to par) and strokes for the extra holes
  • A rounds entry per playoff round, whose thru is the number of extra holes played

Here Grayson Murray won on the first extra hole with a birdie (strokes: 4, score: -1) over Keegan Bradley and Byeong Hun An, who both made par.

To interrogate this playoff yourself, request the 2024 Sony Open in Hawaii: tour pga, season 2024, tournament id ca6742c1-b7f3-4b8b-93e1-5fe76023cb30. The playoff block remains on its Tournament Leaderboard now that the event is closed, so the full sequence is reproducible end to end.

Use this data to display a dedicated playoff leaderboard alongside the main tournament leaderboard.


3. Retrieve Hole-by-Hole Playoff Scoring

When a tournament plays a complete playoff round to determine the winner, hole-by-hole scoring is available in the Scorecards Per Round feed. Substitute playoff for rounds in the URL path, and use 01 as the round number for the first playoff round.

GET https://api.sportradar.com/golf/{access_level}/{golf_tour}/v3/{language_code}/{season_year}/tournaments/{tournament_id}/playoff/{round_number}/scores.{format}
{
  "round": {
    "number": 1,
    "status": "inprogress",
    "players": [
      {
        "id": "3e4963cb-6e80-4393-85cf-2aecec453c4a",
        "first_name": "Jordan",
        "last_name": "Spieth",
        "score": -1,
        "thru": 3,
        "strokes": 10,
        "starting_hole": 1,
        "scores": [
          { "number": 1, "par": 4, "strokes": 3 },
          { "number": 2, "par": 4, "strokes": 4 },
          { "number": 3, "par": 3, "strokes": 3 }
        ]
      }
    ]
  }
}

Use this feed to power hole-by-hole playoff scorecards and live scoring tickers during sudden-death or extended playoff scenarios.

Scorecards Cover Full Playoff Rounds Only

Hole-by-hole playoff scoring in Scorecards Per Round is only available when a complete playoff round is played. A sudden-death playoff (such as the 2024 Sony Open's) returns 200 with an empty body on this feed, so read sudden-death results from the Tournament Leaderboard playoff element instead.


4. Stream Playoff Updates via Push

The Push Leaderboard and Push Scorecard feeds continue to stream updates throughout playoff play. The tournament.status in the Push payload reflects the playoff state, and leaderboard updates include the same playoff element described above.

GET https://api.sportradar.com/golf/{access_level}/stream/{golf_tour}/{language_code}/leaderboards/subscribe
GET https://api.sportradar.com/golf/{access_level}/stream/{golf_tour}/{language_code}/scorecards/subscribe

For Push Scorecard, you can filter by round to scope the stream to playoff rounds specifically, or by player to focus on a single playoff participant.

In the event of a Push disconnection during a playoff, recover missed data by polling the corresponding RESTful feed.


5. Detect Playoff Resolution

Once a playoff winner is determined, the tournament status transitions from playoff to complete, and finally to closed after stat validation.

The snippet below is the 2024 Sony Open after its playoff resolved and the tournament settled to closed. The winner now holds position: 1 outright while the playoff losers share second on the same regulation score, and the playoff element remains in the response with the extra-hole detail.

{
  "status": "closed",
  "leaderboard": [
    { "first_name": "Grayson", "last_name": "Murray", "position": 1, "tied": false, "score": -17, "strokes": 263 },
    { "first_name": "Keegan", "last_name": "Bradley", "position": 2, "tied": true, "score": -17, "strokes": 263 },
    { "first_name": "Byeong Hun", "last_name": "An", "position": 2, "tied": true, "score": -17, "strokes": 263 }
  ]
}

Key transitions to watch for:

  • playoff to complete, indicating a winner has been determined but stats are not yet validated
  • complete to closed, indicating stats are fully validated and the tournament is finalized

Both transitions appear in the Tournament Leaderboard and Tournament Summary feeds. Use them to:

  • Update UI from "live playoff" to "tournament complete"
  • Trigger end-of-tournament notifications
  • Reduce polling frequency once the tournament is closed


Common Use Cases

Typical builds on this workflow include:

  • Displaying a dedicated playoff leaderboard alongside the main tournament leaderboard
  • Powering hole-by-hole playoff scorecards during full playoff rounds
  • Driving live notifications for playoff starts, hole completions, and winners
  • Surfacing playoff finishes in tournament recap and historical content
  • Supporting fantasy and prediction applications that resolve based on tournament winners

Best Practices

  • Treat playoff detection as reactive. Monitor tournament.status rather than scheduling for playoffs
  • Use the existing Tournament Leaderboard integration as the foundation. The playoff element appears in the same response
  • For full playoff rounds, swap rounds for playoff in the Scorecards Per Round URL path
  • Continue using Push feeds during playoffs. Both Push Leaderboard and Push Scorecard surface playoff updates
  • Watch for the playoff to complete to closed transitions to drive end-of-tournament UI and notification logic
  • In the event of a Push disconnection during a playoff, fall back to RESTful feeds to recover missed data

Did this page help you?