Leagues
Draft
GET/v2/leagues/{id}/draftAll plans
One round of the league’s draft — the NBA’s, the NFL’s and other leagues the source keeps a draft for: every pick in order with the club making it, the club it was traded from, the player (a /v2/players id) and the prospect as the draft lists him (position, top prospect, college); plus the clubs with no pick in the round.
prospect.position is the draft’s own notation (basketball G, F, C, FC; American football QB, WR, OT, …). tradedFrom is set on a pick that changed hands (the NBA 2026 #5 was the Clippers’ from the Pacers). player is null when the source has no profile for the pick. A draft in progress fills as picks are made. Refreshed daily.
Parameters
id
our numeric id (positive integer)
year
the draft’s year, e.g. 2026
round
the round, 1–20 (default 1; the NBA has 2, the NFL 7)
Response
- data
DraftRound- meta
- year, round, count (picks)
- errors
- 400 bad_request — year missing, before 1950 or after next year, round outside 1–20403 history_not_in_plan — a draft counts as of the end of its year: last year’s draft is outside a Free, Starter or Pro plan’s history once that year is over404 no_data — the league has no draft that year or no such round
Every /v2 call can also answer the common errors.
$ curl -H "Authorization: Bearer sk_live_…" \ "https://api.sportsapi.app/v2/leagues/{id}/draft?year=…"
Example
{ "data": { "picks": [ { "overallPick": 1, "round": 1, "pickInRound": 1, "team": { "id": 3510, "name": "Washington Wizards", "code": "WAS", … }, "tradedFrom": null, "player": { "id": 9420, "name": "AJ Dybantsa", … }, "prospect": { "name": "AJ Dybantsa", "position": "F", "topProspect": true, "fromTeam": { "id": 9811, "name": "Brigham Young Cougars", … }, "fromTeamName": "BYU" } }, { "overallPick": 5, "round": 1, "pickInRound": 5, "team": { "name": "Los Angeles Clippers", … }, "tradedFrom": { "name": "Indiana Pacers", … }, … }, … ], "teamsWithoutPick": [ { "id": 3496, "name": "Denver Nuggets", … }, … ] }, "meta": { "year": 2026, "round": 1, "count": 30 } }