Skip to main content
GET
Players

Authorizations

apiKey
string
query
required

Query Parameters

fields
enum<string>[]

Specify custom response with available response fields.


Fields included as default: id, firstName, lastName, name, alternativeFirstName, alternativeLastName, alternativeName, initialOfFirstName, initialOfLastName, gender, status, playerType, position, detailedPosition, shoots, catches, yearOfBirth, dateOfBirth, age, placeOfBirth, youthTeam, nationality, secondaryNationality, weight, height, contract, capHit, gameStatus, gameStatusInfo, views, imageUrl, imageCopyright, pronunciationUrl, verified, verifiedStyle, contactable, staff, latestStats, latestGameLogsAggregated, leagueExperience, nhlRights, draftSelection, agencies, profileDescriptionAsHTML, scoutingReportUrl, scoutingReportThumbnailUrl, biographyAsHTML, playerStyles, links, eliteprospectsUrlPath, slug, isIndexable, updatedAt, _links

Available options:
id,
firstName,
lastName,
name,
alternativeFirstName,
alternativeLastName,
alternativeName,
initialOfFirstName,
initialOfLastName,
gender,
status,
playerType,
position,
detailedPosition,
shoots,
catches,
yearOfBirth,
dateOfBirth,
age,
placeOfBirth,
youthTeam,
nationality,
secondaryNationality,
weight,
height,
contract,
capHit,
gameStatus,
gameStatusInfo,
views,
imageUrl,
imageCopyright,
pronunciationUrl,
verified,
verifiedStyle,
contactable,
staff,
latestStats,
latestGameLogsAggregated,
leagueExperience,
nhlRights,
draftSelection,
agencies,
profileDescriptionAsHTML,
scoutingReportUrl,
scoutingReportThumbnailUrl,
biographyAsHTML,
playerStyles,
links,
eliteprospectsUrlPath,
slug,
isIndexable,
updatedAt,
_links,
nationality.*,
secondaryNationality.*,
weight.*,
height.*,
staff.*,
latestStats.*,
latestGameLogsAggregated.*,
leagueExperience.*,
nhlRights.*,
draftSelection.*,
agencies.*,
playerStyles.*,
links.*,
*
offset
integer
default:0

The number of items to skip before starting to collect the result set.

Required range: x >= 0
limit
integer
default:100

The number of items to return.

Required range: 0 <= x <= 1000
sort
enum<string>[]

Sort results by field name. Prefix with - for descending order (e.g., -name).

Available options:
id,
-id,
name,
-name,
dateOfBirth,
-dateOfBirth,
age,
-age,
height,
-height,
weight,
-weight,
contract,
-contract,
latestStats.season,
-latestStats.season,
latestStats.team,
-latestStats.team,
latestStats.league,
-latestStats.league,
views,
-views,
updatedAt,
-updatedAt
id
integer[]

Filter by id

id:gt
integer

Filter by id greater than

q
string

Full-text search by name

name
string

Filter by name

firstName
string

Filter by firstName

firstName:startsWith
string

Filter by firstName starts with

lastName
string

Filter by lastName

lastName:startsWith
string

Filter by lastName starts with

gender
enum<string>

Filter by gender

Available options:
male,
female
playerType
enum<string>

Filter by playerType

Available options:
GOALTENDER,
SKATER
position
(enum<string> | null)[]

Filter by position

Available options:
G,
D,
F,
null
position:not
(enum<string> | null)[]

Filter by position not equal to

Available options:
G,
D,
F,
null
detailedPosition
enum<string>[]

Filter by detailedPosition

Available options:
G,
D,
F,
C,
W,
LW,
RW
detailedPosition:not
enum<string>[]

Filter by detailedPosition not equal to

Available options:
G,
D,
F,
C,
W,
LW,
RW
anyPosition
enum<string>[]

OR-matches token(s) against Pos and Pos2 — e.g. anyPosition=F,LW returns players whose position is F OR whose detailedPosition contains LW. Accepts a comma-separated string or array; values are DETAILED_POSITIONS. Pos2 is a substring match, so anyPosition=W also matches LW/RW.

Available options:
G,
D,
F,
C,
W,
LW,
RW
anyPosition:not
enum<string>[]

Excludes players matching anyPosition. NOT of the OR (De Morgan): for each token, neither Pos = token nor Pos2 LIKE %token%.

Available options:
G,
D,
F,
C,
W,
LW,
RW
playerStyle
string[]

Filter by playerStyle slug

nationality
string[]

Filter by nationality slug in ISO 3166-1 alpha-3

secondaryNationality
string[]

Filter by secondaryNationality slug in ISO 3166-1 alpha-3

dateOfBirth
string

Filter by dateOfBirth

dateOfBirth:from
string

Filter by dateOfBirth greater or equal to

dateOfBirth:to
string

Filter by dateOfBirth less than or equal to

yearOfBirth
integer

Filter by yearOfBirth

yearOfBirth:min
integer

Filter by yearOfBirth greater or equal to

yearOfBirth:max
integer

Filter by yearOfBirth less than or equal to

monthOfBirth
integer

Filter by monthOfBirth

dayOfMonthOfBirth
integer

Filter by dayOfMonthOfBirth

age
integer

In UTC

age:min
integer

In UTC. Inclusive lower bound on player age.

age:max
integer

In UTC. Inclusive upper bound on player age.

placeOfBirth
string

Filter by placeOfBirth

youthTeam
string

Filter by youthTeam

contract
string

Filter by contract

nhlDrafted
boolean

Filter by nhlDrafted

nhlDraftedByTeam
integer[]

Filter by nhlDraftedByTeam

draftedInDraftType
string[]

Filter by draftedInDraftType

draftedInDraftType:not
string[]

Filter by draftedInDraftType not equal to

draftedByTeam
integer[]

Filter by draftedByTeam

nhlDraftEligibility
integer

Filter by nhlDraftEligibility

draftStatus
enum<string>

Filter by draftStatus

Available options:
drafted-prospect,
drafted-player,
undrafted-prospect-u21,
not-drafted
agency
string[]

Agency ID, comma-separated agency IDs, or sentinel "has_any" / "none".

shoots
enum<string> | null

Filter by shoots

Available options:
L,
R,
null
status
enum<string>

Filter by status

Available options:
active,
inactive,
retired,
deceased
status:not
enum<string>

Filter by status not equal to

Available options:
active,
inactive,
retired,
deceased
height.metrics:min
integer

Filter by height.metrics greater or equal to

height.imperial:min
string

Filter by height.imperial greater or equal to

height.metrics:max
integer

Filter by height.metrics less than or equal to

height.imperial:max
string

Filter by height.imperial less than or equal to

weight.metrics:min
integer

Filter by weight.metrics greater or equal to

weight.imperial:min
integer

Filter by weight.imperial greater or equal to

weight.metrics:max
integer

Filter by weight.metrics less than or equal to

weight.imperial:max
integer

Filter by weight.imperial less than or equal to

gameStatus
enum<string>[]

Filter by gameStatus

Available options:
healthy,
injured,
suspended
gameStatus:not
enum<string>[]

Filter by gameStatus not equal to

Available options:
healthy,
injured,
suspended
verified
boolean

Filter by verified

verifiedStyle
integer

Filter by verifiedStyle

contactable
boolean

Filter by contactable

latestStats.league
string

Filter by latestStats.league slug

latestStats.team
integer[]

Filter by latestStats.team ID

playingInCountry
string[]

Filter by playingInCountry

notPlayingInCountry
string[]

Filter by notPlayingInCountry

hasPlayedInCountry
string[]

Filter by hasPlayedInCountry

hasPlayedInCountry.season
string

Filter by hasPlayedInCountry.season slug

neverPlayedInCountry
string[]

Filter by neverPlayedInCountry

playingInLeague
string[]

Filter by playingInLeague

notPlayingInLeague
string[]

Filter by notPlayingInLeague

hasPlayedInLeague
string[]

Filter by hasPlayedInLeague

hasPlayedInLeague.season
string

Filter by hasPlayedInLeague.season slug

neverPlayedInLeague
string[]

Filter by neverPlayedInLeague

includeLeagueExperience
string[]

Filter by includeLeagueExperience

playingInTeam
integer[]

Filter by playingInTeam

notPlayingInTeam
integer[]

Filter by notPlayingInTeam

hasPlayedInTeam
integer[]

Filter by hasPlayedInTeam

hasPlayedInTeam.season
string

Filter by hasPlayedInTeam.season slug

neverPlayedInTeam
integer[]

Filter by neverPlayedInTeam

internationalExperience
string[]

Filter by internationalExperience

neverPlayedInternationally
string[]

International league(s) the player has never participated in (e.g. 'World Championship', 'Olympic Games', 'World Juniors'). Multi-value AND-combined.

leagueExperienceLogic
enum<string>

Combinator for league-experience filters (playingInLeague / hasPlayedInLeague / etc.). Default 'and' (preserves existing multi-value behavior); pass 'or' for union semantics.

Available options:
and,
or
teamExperienceLogic
enum<string>

Combinator for team-experience filters. Default 'and' (preserves existing multi-value behavior); pass 'or' for union semantics.

Available options:
and,
or
nationExperienceLogic
enum<string>

Combinator for nation-experience filters (playingInCountry / hasPlayedInCountry / etc.). Default 'and' (preserves existing multi-value behavior); pass 'or' for union semantics.

Available options:
and,
or
internationalExperienceLogic
enum<string>

Combinator for internationalExperience filter. Default 'and' (preserves existing multi-value behavior); pass 'or' for union semantics.

Available options:
and,
or
careerHistoryLogic
enum<string>

Combinator BETWEEN the four career-history experience filters (league / team / nation/country / international). Default 'and' (a player must match every set experience filter); pass 'or' to match players matching ANY of the set experience filters. The per-filter *ExperienceLogic toggles still control AND/OR within each filter.

Available options:
and,
or
staff
integer

Filter by staff ID

nhlRights.rights
enum<string>[]

Filter by nhlRights.rights

Available options:
unsigned,
signed
nhlRights.team
integer[]

Filter by nhlRights.team ID

views:min
integer

Filter by views greater or equal to

views:max
integer

Filter by views less than or equal to

updatedAt:min
string<date-time>

Filter by updatedAt greater or equal to in ISO-8601 format for date and time

awesomeName
boolean

Filter by awesomeName

Response

200 - application/json

A paginated list of players.

_meta
object
data
object[]