Overview
Whether it's the Sunday drama at Augusta, the grit of the U.S. Open, or the history of The Open Championship, your app needs to keep up. Our PGA API delivers the live, shot-by-shot data required to turn passive viewers into engaged users.
The Opportunity: Golf is Booming. Are You Ready?
The market is signaling a massive shift. In 2025 alone, recreational play hit 82 million rounds, while betting handles jumped by 20%—the fourth straight year of double-digit growth.
This surge in participation and fantasy engagement has created a new standard. Your users now expect TV-quality live leaderboards and instant scoring updates on every device.
The Problem
Building the infrastructure to ingest and clean this data is expensive and slow. You need a reliable source that's ready to scale with your growth.
The Solution
Our PGA API gives you a clean, reliable pipeline immediately. Stop maintaining data scrapers and start shipping the real-time experience your users demand.
PGA Data
DataFeeds PGA API is designed to capture the full competitive picture before, during, and after each tournament.
Tournament and Event Data
- Major championships and regular PGA Tour events
- Event schedules, course information, and field details
- Round-by-round progression across multi-day tournaments
Player and Field Information
- Player profiles and identifiers
- Tournament participation and withdrawals
- Tee times and pairings
Scoring and Results
- Hole-by-hole scoring
- Round scores and cumulative totals
- Leaderboards and finishing positions
- Cuts, ties, and playoff results
Live and In-Play Updates
- Real-time score changes
- Leaderboard movement throughout each round
- Timely updates for rich media, fantasy platforms, and applications
PGA API Pricing
Choose the tier that matches your needs. All plans include access to our full PGA API documentation and developer support.
Pre Game
- Season schedules
- Tournament & field details
- Player profiles
- Tee times & pairings
Post Game
- Everything in Pre Game
- Hole-by-hole scoring
- Round scores & leaderboards
- Final positions & playoffs
Live Feed
- Everything in Pre & Post Game
- Real-time score updates
- Live leaderboards
- In-play data for live coverage & apps
Developer Examples
Integrate PGA data into your application with straightforward REST API calls. Authenticate with your API key and request the endpoints you need—season schedules, tournament fields, live leaderboards, and more.
Season Schedule
Retrieve the full PGA Tour season with tournament dates, venues, and course details.
curl -X GET "https://api.rolling-insights.com/pga/schedule/season/2025" \
-H "Authorization: Bearer YOUR_API_KEY"
Tournament Field
Get the field for a specific tournament including player names, tee times, and pairings.
curl -X GET "https://api.rolling-insights.com/pga/field/{tournamentId}" \
-H "Authorization: Bearer YOUR_API_KEY"
Live Feed
Access real-time scoring and leaderboard updates during active rounds.
curl -X GET "https://api.rolling-insights.com/pga/live/{tournamentId}" \
-H "Authorization: Bearer YOUR_API_KEY"
{
"data": {
"PGA": [
{
"field": {
"5": {
"player": "Brandt Snedeker",
"Round 1": { "Hole 1": { "par": 4, "score": 3 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 5 }, "Hole 4": { "par": 3, "score": 3 }, "Hole 5": { "par": 5, "score": 4 }, "Hole 6": { "par": 4, "score": 3 }, "Hole 7": { "par": 3, "score": 3 }, "Hole 8": { "par": 4, "score": 5 }, "Hole 9": { "par": 4, "score": 4 }, "Hole 10": { "par": 3, "score": 3 }, "Hole 11": { "par": 5, "score": 4 }, "Hole 12": { "par": 4, "score": 4 }, "Hole 13": { "par": 3, "score": 4 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 4 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 3 }, "Hole 18": { "par": 4, "score": 4 } },
"Round 2": { "Hole 1": { "par": 4, "score": 3 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 4 }, "Hole 4": { "par": 3, "score": 2 }, "Hole 5": { "par": 5, "score": 5 }, "Hole 6": { "par": 4, "score": 4 }, "Hole 7": { "par": 3, "score": 3 }, "Hole 8": { "par": 4, "score": 5 }, "Hole 9": { "par": 4, "score": 3 }, "Hole 10": { "par": 3, "score": 4 }, "Hole 11": { "par": 5, "score": 5 }, "Hole 12": { "par": 4, "score": 4 }, "Hole 13": { "par": 3, "score": 2 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 4 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 4 }, "Hole 18": { "par": 4, "score": 4 } },
"Round 3": { "Hole 1": { "par": 4, "score": 4 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 5 }, "Hole 4": { "par": 3, "score": 3 }, "Hole 5": { "par": 5, "score": 5 }, "Hole 6": { "par": 4, "score": 4 }, "Hole 7": { "par": 3, "score": 3 }, "Hole 8": { "par": 4, "score": 4 }, "Hole 9": { "par": 4, "score": 4 }, "Hole 10": { "par": 3, "score": 3 }, "Hole 11": { "par": 5, "score": 4 }, "Hole 12": { "par": 4, "score": 3 }, "Hole 13": { "par": 3, "score": 3 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 4 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 4 }, "Hole 18": { "par": 4, "score": 5 } },
"Round 4": { "Hole 1": { "par": 4, "score": 4 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 5 }, "Hole 4": { "par": 3, "score": 3 }, "Hole 5": { "par": 5, "score": 5 }, "Hole 6": { "par": 4, "score": 5 }, "Hole 7": { "par": 3, "score": 4 }, "Hole 8": { "par": 4, "score": 3 }, "Hole 9": { "par": 4, "score": 4 }, "Hole 10": { "par": 3, "score": 3 }, "Hole 11": { "par": 5, "score": 5 }, "Hole 12": { "par": 4, "score": 4 }, "Hole 13": { "par": 3, "score": 4 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 3 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 3 }, "Hole 18": { "par": 4, "score": 5 } },
"current": { "Round 1": "69", "Round 2": "69", "Round 3": "71", "Round 4": "73", "position": "T45", "score_overall": "-6", "through_today": "F", "total_strokes": "282" },
"tee_times": { "Round 1": "Thu, 19 Sep 2019 13:31:00 GMT", "Round 2": "Fri, 20 Sep 2019 21:01:00 GMT", "Round 3": "Sat, 21 Sep 2019 17:01:00 GMT", "Round 4": "Sun, 22 Sep 2019 16:50:00 GMT" }
},
"16": {
"player": "Jason Dufner",
"Round 1": { "Hole 1": { "par": 4, "score": 4 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 5 }, "Hole 4": { "par": 3, "score": 3 }, "Hole 5": { "par": 5, "score": 5 }, "Hole 6": { "par": 4, "score": 4 }, "Hole 7": { "par": 3, "score": 3 }, "Hole 8": { "par": 4, "score": 4 }, "Hole 9": { "par": 4, "score": 3 }, "Hole 10": { "par": 3, "score": 3 }, "Hole 11": { "par": 5, "score": 5 }, "Hole 12": { "par": 4, "score": 4 }, "Hole 13": { "par": 3, "score": 2 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 4 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 4 }, "Hole 18": { "par": 4, "score": 4 } },
"Round 2": { "Hole 1": { "par": 4, "score": 4 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 5 }, "Hole 4": { "par": 3, "score": 3 }, "Hole 5": { "par": 5, "score": 4 }, "Hole 6": { "par": 4, "score": 4 }, "Hole 7": { "par": 3, "score": 4 }, "Hole 8": { "par": 4, "score": 4 }, "Hole 9": { "par": 4, "score": 5 }, "Hole 10": { "par": 3, "score": 3 }, "Hole 11": { "par": 5, "score": 5 }, "Hole 12": { "par": 4, "score": 4 }, "Hole 13": { "par": 3, "score": 3 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 3 }, "Hole 16": { "par": 4, "score": 5 }, "Hole 17": { "par": 4, "score": 4 }, "Hole 18": { "par": 4, "score": 4 } },
"Round 3": {}, "Round 4": {},
"current": { "Round 1": "70", "Round 2": "73", "Round 3": "-", "Round 4": "-", "position": "-", "score_overall": "CUT", "through_today": "CUT", "total_strokes": "143" },
"tee_times": { "Round 1": "Thu, 19 Sep 2019 13:52:00 GMT", "Round 2": "Fri, 20 Sep 2019 21:22:00 GMT" }
},
"18": {
"player": "Charley Hoffman",
"Round 1": { "Hole 1": { "par": 4, "score": 4 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 5 }, "Hole 4": { "par": 3, "score": 4 }, "Hole 5": { "par": 5, "score": 4 }, "Hole 6": { "par": 4, "score": 5 }, "Hole 7": { "par": 3, "score": 3 }, "Hole 8": { "par": 4, "score": 4 }, "Hole 9": { "par": 4, "score": 4 }, "Hole 10": { "par": 3, "score": 2 }, "Hole 11": { "par": 5, "score": 4 }, "Hole 12": { "par": 4, "score": 5 }, "Hole 13": { "par": 3, "score": 3 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 4 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 5 }, "Hole 18": { "par": 4, "score": 4 } },
"Round 2": { "Hole 1": { "par": 4, "score": 3 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 5 }, "Hole 4": { "par": 3, "score": 2 }, "Hole 5": { "par": 5, "score": 5 }, "Hole 6": { "par": 4, "score": 4 }, "Hole 7": { "par": 3, "score": 2 }, "Hole 8": { "par": 4, "score": 3 }, "Hole 9": { "par": 4, "score": 3 }, "Hole 10": { "par": 3, "score": 3 }, "Hole 11": { "par": 5, "score": 4 }, "Hole 12": { "par": 4, "score": 3 }, "Hole 13": { "par": 3, "score": 3 }, "Hole 14": { "par": 5, "score": 4 }, "Hole 15": { "par": 4, "score": 4 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 4 }, "Hole 18": { "par": 4, "score": 4 } },
"Round 3": { "Hole 1": { "par": 4, "score": 5 }, "Hole 2": { "par": 4, "score": 4 }, "Hole 3": { "par": 5, "score": 4 }, "Hole 4": { "par": 3, "score": 4 }, "Hole 5": { "par": 5, "score": 5 }, "Hole 6": { "par": 4, "score": 4 }, "Hole 7": { "par": 3, "score": 2 }, "Hole 8": { "par": 4, "score": 4 }, "Hole 9": { "par": 4, "score": 4 }, "Hole 10": { "par": 3, "score": 3 }, "Hole 11": { "par": 5, "score": 5 }, "Hole 12": { "par": 4, "score": 3 }, "Hole 13": { "par": 3, "score": 3 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 3 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 4 }, "Hole 18": { "par": 4, "score": 4 } },
"Round 4": { "Hole 1": { "par": 4, "score": 4 }, "Hole 2": { "par": 4, "score": 3 }, "Hole 3": { "par": 5, "score": 4 }, "Hole 4": { "par": 3, "score": 3 }, "Hole 5": { "par": 5, "score": 4 }, "Hole 6": { "par": 4, "score": 5 }, "Hole 7": { "par": 3, "score": 3 }, "Hole 8": { "par": 4, "score": 4 }, "Hole 9": { "par": 4, "score": 4 }, "Hole 10": { "par": 3, "score": 4 }, "Hole 11": { "par": 5, "score": 6 }, "Hole 12": { "par": 4, "score": 4 }, "Hole 13": { "par": 3, "score": 2 }, "Hole 14": { "par": 5, "score": 5 }, "Hole 15": { "par": 4, "score": 4 }, "Hole 16": { "par": 4, "score": 4 }, "Hole 17": { "par": 4, "score": 4 }, "Hole 18": { "par": 4, "score": 4 } },
"current": { "Round 1": "73", "Round 2": "64", "Round 3": "70", "Round 4": "71", "position": "T23", "score_overall": "-10", "through_today": "F", "total_strokes": "278" },
"tee_times": { "Round 1": "Thu, 19 Sep 2019 13:52:00 GMT", "Round 2": "Fri, 20 Sep 2019 21:22:00 GMT", "Round 3": "Sat, 21 Sep 2019 17:33:00 GMT", "Round 4": "Sun, 22 Sep 2019 18:00:00 GMT" }
}
},
"purse": "$6,600,000",
"sport": "PGA",
"status": "final",
"playoff": { "636": { "player": "Sebastian Munoz" }, "969": { "player": "Sung jae Im" } },
"event_ID": 5,
"game_status": "Playoff - Final",
"golf_courses": [{ "par": "72", "name": "Country Club of Jackson", "yards": "7440" }],
"tournament_ID": "2019-5",
"tournament_date": "September 19 - 22, 2019",
"tournament_name": "Sanderson Farms Championship",
"tournament_location": "Country Club of Jackson - Jackson, MS"
}
]
}
}
For the complete list of endpoints, request/response schemas, and field definitions, see the PGA API Documentation .