SnookerAPI
Documentation / Players
GET /players/{player_id}Free key, archive on paidMCP: get_player

Snooker API: One player: nationality, birth date and place, the year they turned professional, their ranking, minor-ranking and world titles, the first season they were ranked, their highest world ranking, matches played and won, titles, and the seasons they span

One player: nationality, birth date and place, the year they turned professional, their ranking, minor-ranking and world titles, the first season they were ranked, their highest world ranking, matches played and won, titles, and the seasons they span.

GEThttps://api.snookerapi.net/v1/players/{player_id}

Try it

Get a key

Parameters

NameTypeWhat it is
player_idid, required, in the pathThe player, as a pl_ id from GET /v1/players.

Returns

FieldTypeWhat it holds
idstringThe record's own id: stable, and the same in every call.
namestringThe name, as we hold it.
countrystring or nullThe country.
borndate or nullThe date of birth, where it is known.
birth_placestring or nullWhere the player was born, as their Wikipedia article gives it.
nicknamestring or nullThe player's nickname, as Wikidata records it.
turned_prointeger or nullThe year the player turned professional; null where it is not recorded.
first_ranked_seasonstring or nullThe first season the player appears in a world ranking list, e.g. 2013-14; null where never ranked.
highest_rankingobject or nullThe best world ranking position: position, season (the first season it was reached) and from (ranking_lists, our own lists; or player_record, with no season, where our lists do not reach). Null where neither has it.
ranking_titlesinteger or nullRanking titles won in the player's career, as their Wikipedia article counts them.
minor_ranking_titlesinteger or nullMinor-ranking titles won, as their Wikipedia article counts them.
world_titlesinteger or nullWorld Championship titles won, as their Wikipedia article lists them; 0 where it lists none.
formstring or nullThe last ten decided matches, newest first: W won, L lost.
latest_seasonobject or nullThe latest season the player played: season, played, won, lost, frames_won, frames_lost, titles.
matchesintegerHow many matches are held.
winsintegerMatches won.
titlesintegerEvents won.
first_seasonstring or nullThe first season played.
last_seasonstring or nullThe latest season played.
century_breaksintegerCenturies made in the events we hold.
maximum_breaksintegerOfficially recognised 147s.

Example answer

A real answer, read from the data within the last hour: GET /v1/players/pl_ra6m6b4g

{
    "data": {
        "id": "pl_ra6m6b4g",
        "name": "Wu Yize",
        "country": "People's Republic of China",
        "born": "2003-10-14",
        "birth_place": "Lanzhou, Gansu, China",
        "nickname": null,
        "turned_pro": 2021,
        "first_ranked_season": "2021-22",
        "highest_ranking": {
            "position": 4,
            "season": "2025-26",
            "from": "ranking_lists"
        },
        "ranking_titles": 3,
        "minor_ranking_titles": null,
        "world_titles": 1,
        "form": "WWWWWLWWLW",
        "latest_season": {
            "season": "2026-27",
            "played": 20,
            "won": 12,
            "lost": 5,
            "frames_won": 80,
            "frames_lost": 67,
            "titles": 1
        },
        "matches": 257,
        "wins": 151,
        "titles": 3,
        "first_season": "2017-18",
        "last_season": "2026-27",
        "century_breaks": 166,
        "maximum_breaks": 1
    },
    "meta": {
        "plan": "House key"
    }
}

Errors

StatusCodeWhen
401unauthorizedNo key, or a key that is not valid. Errors
400bad_requestA parameter has the wrong shape. Errors
422unknown_parameterA parameter this call does not take. Errors
429rate_limitedToo many calls this minute; wait for Retry-After. Errors
404not_foundNo record has that id. Errors