The disc golf API, maintained by hand.

The disc catalog behind TryDiscs.com: flight numbers and full PDGA physical specs for every disc, curated manually and refreshed as new discs are approved.

Request a free keyGranted manually. Tell us what you're building and where the attribution will live.

2,152

Discs

Flight numbers plus full PDGA physical specs

204

Brands

Every manufacturer in the Try Discs catalog

Free

API keys

Personal and commercial use, with attribution

Quick start

curl "https://api.trydiscs.com/v1/discs?q=destroyer" \
  -H "X-API-Key: YOUR_KEY"

returns

{
  "meta": {
    "dataset_version": "2026-08-31",
    "attribution": "Disc data by Try Discs (https://trydiscs.com)",
    "total": 1, "count": 1, "limit": 100, "offset": 0
  },
  "data": [{
    "slug": "innova/destroyer",
    "brand": "Innova",
    "name": "Destroyer",
    "url": "https://trydiscs.com/product/innova/destroyer",
    "type": "Distance Driver",
    "speed": 12, "glide": 5, "turn": -1, "fade": 3,
    "stability": 2,
    "bead": "Beadless",
    "discontinued": false,
    "specs": {
      "diameter_cm": 21.1, "height_cm": 1.4,
      "rim_depth_cm": 1.2, "rim_thickness_cm": 2.2,
      "inside_rim_diameter_cm": 16.7,
      "rim_depth_diameter_ratio": 5.7, "rim_configuration": 30.5
    }
  }]
}

Endpoints

GET /v1API index and dataset info (no key required)
GET /v1/discsAll discs, with filters and pagination
GET /v1/discs/{brand}One brand's discs, e.g. /v1/discs/innova
GET /v1/discs/{brand}/{disc}One disc, e.g. /v1/discs/innova/destroyer
GET /v1/brandsAll brands with disc counts

Filtering discs

All parameters combine (AND). Example: /v1/discs?type=distance&speed_min=11&turn_max=-1&sort=speed

qSearch disc or brand name, e.g. q=destroyer
brandBrand slug or name, e.g. brand=innova
typeputter, midrange, control driver, distance driver (partial ok)
beadbeaded or beadless
discontinuedtrue or false, e.g. discontinued=false for current molds only
speed, glide, turn, fade, stabilityExact match, e.g. speed=9
*_min / *_maxRanges, e.g. speed_min=8&speed_max=10&turn_max=-1
sort, ordersort=speed&order=desc (also name, brand, glide, …)
limit, offsetPagination. Default 100, max 2000 per request

277 of the 2,152 discs (niche, vintage, and some discontinued molds) have no published flight numbers. Those fields return null and flight-number filters skip them; their physical specs are still complete.

Terms (the short version)

  • Attribution is required. Anywhere the data appears publicly, show “Disc data by Try Discs” linking to https://trydiscs.com. It's also in every response's meta.attribution.
  • Personal and commercial apps are both welcome, and caching or syncing the data locally to power your app is fine. Just don't republish or sell the Try Discs catalog as a bulk download, a standalone database, or a public API. Building apps and tools on top of it is exactly what it's for.
  • Default limit is 120 requests/minute per key. Need more? Ask.
  • Best effort, no warranty. We maintain the catalog by hand and fix errors quickly, but the data is provided as-is: flight numbers are the manufacturers', physical specs follow PDGA listings, and inaccuracies can still slip through. Verify anything critical against PDGA or manufacturer listings. Try Discs is not liable for decisions made or losses incurred from using the data. Keys are personal and revocable.