Skip to main content

Base URL

Authentication

Include your API key in the x-api-key header:

Version Availability

Snooker is served on V2 and V3 (plus V6 where enabled). It is not available on V1 — V1 covers only football, basketball, tennis, hockey, handball, american-football, baseball, volleyball and rugby, so /v1/snooker/... returns a 404 “unknown resource” error.
There is currently no world-ranking endpoint for snooker. Use tournament seasons (/api/tournament/:id/seasons), the draw (/api/tournament/:id/season/:seasonId/draw) and player form (/api/teams/:id/performance) instead.
All snooker endpoints are included on every plan, including Free (100 requests/day).

Snooker-Specific Notes

Individual Sport

Snooker is a 1v1 individual sport. On the API, “teams” represent individual players (e.g., Ronnie O’Sullivan has a teamId). Use /api/teams/:id to get player profiles.

Match Structure

  • Best-of-N frames: All matches are best-of a set number of frames
  • Early rounds: Best of 7 or 9
  • Semi-finals: Best of 11 or 17
  • World Championship Final: Best of 35 (played over 4 sessions across 2 days)
  • A frame is one complete game on the table

Scoring

  • Red balls: 1 point each (15 reds)
  • Colours: Yellow (2), Green (3), Brown (4), Blue (5), Pink (6), Black (7)
  • Maximum break: 147 (15 reds + 15 blacks + all colours)
  • Century break: 100+ points in one visit — the benchmark of excellence

Key Statistics

  • Frames won/lost, century breaks, highest break, maximum 147s
  • Frame win percentage, long pot success %, safety success %

Category Structure

Snooker uses a single International category (ID: 55) because the World Snooker Tour is a unified global circuit.

Season

August–May, following the World Snooker Tour calendar.

Match Sub-Endpoint Coverage

The upstream provider does not publish per-match sub-feeds for snooker. The following paths are permanently unavailable and will return an empty or not-found response:
  • GET /api/match/:matchId/scores
  • GET /api/match/:matchId/lineups
  • GET /api/match/:matchId/statistics
  • GET /api/match/:matchId/incidents
  • GET /api/match/:matchId/graph
Frame-by-frame scores are embedded in GET /api/match/:matchId and the live feeds (/api/live, /api/live/all). See the Match Endpoints page for the full supported list.

Endpoint Categories

Example Requests

Major Tournaments

Key Players (for testing)

Sport Comparison — Snooker vs Darts vs Tennis

UI Design Ideas

  • Frame score: Show frames won: “O’Sullivan 10-7 Trump” with current frame break
  • Century counter: Highlight 100+ breaks prominently — prestige stat
  • Maximum break: 147 is extremely rare — display with special formatting
  • Session tracking: Long matches split across multiple sessions
Last modified on September 20, 2026