Public API
Disc Golf Buzz provides a free, open public API for disc golf videos, podcasts, news, and course data. No API key required. We believe in open data and giving back to the disc golf community.
Base URL: https://discgolf.buzz/api
General Usage
All endpoints return JSON and support the following query parameters:
| Parameter | Type | Description |
|---|---|---|
| limit | number | Number of results per page (default: 10, max: 100) |
| page | number | Page number for pagination (default: 1) |
| sort | string | Field to sort by. Prefix with - for descending (e.g. -publishedAt) |
| depth | number | Relationship depth to populate (0 = IDs only, 1 = full objects) |
| where[field][operator] | string | Filter results (see filtering section) |
All list responses follow this structure:
{
"docs": [...], // Array of results
"totalDocs": 17263, // Total matching documents
"limit": 10, // Results per page
"totalPages": 1727, // Total pages
"page": 1, // Current page
"hasPrevPage": false,
"hasNextPage": true,
"nextPage": 2,
"prevPage": null
}Filtering
Use where parameters to filter results.
| Operator | Description | |
|---|---|---|
| equals | Exact match | |
| not_equals | Not equal to | |
| like | Contains (case-insensitive) | |
| exists | Field exists (true/false) | |
| in | Value is in array | |
| greater_than | Greater than value | |
| less_than | Less than value |
# Get open courses in Texas GET https://discgolf.buzz/api/courses?where[region_code][equals]=TX&where[operational_status][equals]=open # Get videos with transcripts GET https://discgolf.buzz/api/videos?where[transcript][exists]=true&limit=20 # Search videos by title GET https://discgolf.buzz/api/videos?where[title][like]=jonesboro&sort=-publishedAt
Videos
Tournament coverage, highlights, and disc golf content from top YouTube channels including JomezPro, Gatekeeper Media, PDGA, and more.
Endpoints
GET https://discgolf.buzz/api/videos # List all videos GET https://discgolf.buzz/api/videos/:id # Get video by ID
Fields
| Field | Type | Description |
|---|---|---|
| id | string | Unique identifier |
| title | string | Video title |
| slug | string | URL-friendly identifier |
| url | string | YouTube watch URL |
| embedUrl | string | YouTube embed URL |
| publishedAt | date | Publication date (ISO 8601) |
| views | string | View count (e.g. '94K views') |
| categories | relationship | Associated channel/category (depth=1 for full object) |
| transcript | string | Auto-generated YouTube transcript text |
| videoDescription | string | AI-generated description from transcript |
| meta.title | string | SEO title |
| meta.description | string | SEO description |
| _status | string | Publication status (published/draft) |
Examples
# Latest 10 videos GET https://discgolf.buzz/api/videos?sort=-publishedAt&limit=10 # Videos from a specific category GET https://discgolf.buzz/api/videos?where[categories][in]=CATEGORY_ID&depth=1 # Videos with transcripts, newest first GET https://discgolf.buzz/api/videos?where[transcript][exists]=true&sort=-publishedAt&limit=20 # Search by title GET https://discgolf.buzz/api/videos?where[title][like]=champions+cup
Sample Response
{
"id": "abc123",
"title": "2026 Champions Cup | MPO Final Round",
"slug": "2026-champions-cup-mpo-final-round",
"url": "https://www.youtube.com/watch?v=VIDEO_ID",
"embedUrl": "https://www.youtube.com/embed/VIDEO_ID",
"publishedAt": "2026-04-15T18:00:00.000Z",
"views": "124K views",
"categories": ["CATEGORY_ID"],
"transcript": "Welcome to the Champions Cup final round...",
"videoDescription": "Watch the exciting conclusion of the 2026 Champions Cup...",
"meta": {
"title": "2026 Champions Cup Final Round — Disc Golf Buzz",
"description": "Watch the MPO final round of the 2026 Champions Cup..."
},
"_status": "published"
}Podcasts
Disc golf podcast episodes from top shows including Bodanza Disc Golf, Grip Locked, SmashBoxx TV, and more.
Endpoints
GET https://discgolf.buzz/api/podcasts # List all podcasts GET https://discgolf.buzz/api/podcasts/:id # Get podcast by ID
Fields
| Field | Type | Description |
|---|---|---|
| id | string | Unique identifier |
| title | string | Episode title |
| slug | string | URL-friendly identifier |
| url | string | YouTube watch URL |
| embedUrl | string | YouTube embed URL |
| publishedAt | date | Publication date (ISO 8601) |
| episodeNumber | number | Episode number |
| season | number | Season number |
| guest | string | Guest name(s) |
| showNotes | string | Episode show notes |
| categories | relationship | Associated show/category |
| transcript | string | Auto-generated transcript |
| videoDescription | string | AI-generated episode description |
Examples
# Latest podcast episodes GET https://discgolf.buzz/api/podcasts?sort=-publishedAt&limit=10 # Episodes with guest info GET https://discgolf.buzz/api/podcasts?where[guest][exists]=true&sort=-publishedAt # Search by title GET https://discgolf.buzz/api/podcasts?where[title][like]=mcbeth
News
Disc golf news articles and updates.
Endpoints
GET https://discgolf.buzz/api/news # List all news GET https://discgolf.buzz/api/news/:id # Get news item by ID
Fields
| Field | Type | Description |
|---|---|---|
| id | string | Unique identifier |
| title | string | Article title |
| slug | string | URL-friendly identifier |
| publishedAt | date | Publication date (ISO 8601) |
| categories | relationship | Associated categories |
| meta.title | string | SEO title |
| meta.description | string | SEO description |
| _status | string | Publication status |
Examples
# Latest news GET https://discgolf.buzz/api/news?sort=-publishedAt&limit=10 # Published news only GET https://discgolf.buzz/api/news?where[_status][equals]=published&sort=-publishedAt
Courses
Disc golf course data for 4,000+ courses across the United States, powered by Disc Golf API. Course data is provided with attribution as required.
Endpoints
GET https://discgolf.buzz/api/courses # List all courses GET https://discgolf.buzz/api/courses/:id # Get course by ID
Fields
| Field | Type | Description |
|---|---|---|
| id | string | Unique identifier |
| name | string | Course name |
| slug | string | URL-friendly identifier |
| locality | string | City name |
| region_code | string | State/region code (e.g. TX) |
| country_code | string | Country code (e.g. US) |
| lat | number | Latitude coordinate |
| lon | number | Longitude coordinate |
| holes | number | Number of holes |
| par_total | number | Total par for the course |
| website | string | Course website URL |
| operator_name | string | Course operator/organization |
| operational_status | string | open | closed | seasonal | unknown |
| access_model | string | free | paid | unknown |
| condition_status | string | good | fair | poor | unknown |
| confidence_score | number | Data confidence score (0-1) |
| externalId | string | DiscGolfAPI source ID |
| attribution | string | Required attribution text |
Examples
# All courses in Texas GET https://discgolf.buzz/api/courses?where[region_code][equals]=TX&limit=50 # Open courses only GET https://discgolf.buzz/api/courses?where[operational_status][equals]=open&sort=name # 18-hole courses in Florida GET https://discgolf.buzz/api/courses?where[region_code][equals]=FL&where[holes][equals]=18 # Free access courses GET https://discgolf.buzz/api/courses?where[access_model][equals]=free&sort=name # Course by slug GET https://discgolf.buzz/api/courses?where[slug][equals]=memorial-park
Sample Response
{
"id": "abc123",
"name": "Memorial Park Disc Golf Course",
"slug": "memorial-park-disc-golf-course",
"locality": "Houston",
"region_code": "TX",
"country_code": "US",
"lat": 29.7654,
"lon": -95.4271,
"holes": 18,
"par_total": 54,
"website": "https://example.com/memorial-park",
"operational_status": "open",
"access_model": "free",
"condition_status": "good",
"confidence_score": 0.95,
"attribution": "Course data supplied by DiscGolfAPI."
}Categories
Channel and topic categories used to organize videos and podcasts.
Endpoints
GET https://discgolf.buzz/api/categories # List all categories GET https://discgolf.buzz/api/categories/:id # Get category by ID
Example
# Get all video categories GET https://discgolf.buzz/api/categories?where[type][equals]=video&sort=title # Get all podcast categories GET https://discgolf.buzz/api/categories?where[type][equals]=podcast&sort=title
Rate Limits & Usage
This API is free to use with no authentication required. We ask that you:
- Keep requests reasonable — avoid hammering the API with thousands of requests per minute
- Cache responses where possible
- Include attribution for course data as required by DiscGolfAPI terms
- Do not resell the data
If you build something cool with this API, we'd love to hear about it. [email protected]
Course data supplied by DiscGolfAPI. Used with attribution as required.