---
title: "Betting Player Props - by Game"
method: GET
path: "/v3/nhl/odds/{format}/BettingPlayerPropsByGameID/{gameId}"
tags: ["NHL v3 Odds"]
---

# Betting Player Props - by Game

`GET /v3/nhl/odds/{format}/BettingPlayerPropsByGameID/{gameId}`

## Request

- Base URL: `https://api.sportsdata.io`
- URL: `https://api.sportsdata.io/v3/nhl/odds/{format}/BettingPlayerPropsByGameID/{gameId}`
- Auth: one of:
  - API key in header `Ocp-Apim-Subscription-Key`
  - API key in query parameter `key`
- TypeScript: <https://skmtc.dev/sportsdata/apis/nhl-api/docs/v3/nhl/odds/:format/BettingPlayerPropsByGameID/:gameId/get.ts> (a function with typed inputs; its response is checked against the schema)

This works in the same way as Betting Markets by Market Type but is prefiltered to the Player Props type only. Ideal if your application will only ever require Player Props, but if you also want Team Props etc. it is recommended to use the by Market Type endpoint.

## Path parameters

- `format` 'JSON' | 'XML', required
- `gameId` string, required

## Query parameters

- `include` 'available' | 'unlisted'

## Response `200`

Success

- BettingMarket[]
  - `BettingMarketID` integer: The unique ID of the betting market
  - `BettingEventID` integer: The unique ID assocated with the betting event
  - `BettingMarketTypeID` integer, nullable: The ID associated with the name of the market type within a market
  - `BettingMarketType` string, nullable: The name of the market type within a betting market (e.g. Player Prop, Team Prop, Game Prop, etc.)
  - `BettingBetTypeID` integer, nullable: The ID associated with the name of the bet type within a market
  - `BettingBetType` string, nullable: The name of the bet type within a market (e.g. Total Points, Moneyline, Puck Line, etc.)
  - `BettingPeriodTypeID` integer, nullable: The ID associated with the betting period type which we can result
  - `BettingPeriodType` string, nullable: The name of the period type of a market (e.g. Full Game; 1st Period; Overtime; Regular Season)
  - `Name` string, nullable: The generic name of this market
  - `TeamID` integer, nullable: The unique ID of the team
  - `TeamKey` string, nullable: The abbreviation [Key] of the team tied to this market result (if applicable)
  - `PlayerID` integer, nullable: The player's unique PlayerID as assigned by SportsDataIO. Note: this ID will stay with the player throughout their entire career
  - `PlayerName` string, nullable: The name of the player tied to this market (if applicable)
  - `Created` string, nullable: The date and time when this betting market was created in US Eastern Time.
  - `Updated` string, nullable: The last updated date of this market
  - `AvailableSportsbooks` Sportsbook[]: The sportsbooks that have had odds in this market
    - `SportsbookID` integer: The unique ID of the sportsbook
    - `Name` string, nullable: The name of the sportsbook(s)
  - `AnyBetsAvailable` boolean, nullable: A field that returns "True" if there are any available bets to make within the market in question. If there are no bets available to make, the field returns "False"
  - `BettingOutcomes` BettingOutcome[]: The list of betting outcomes from each sportsbook in this market
    - `BettingOutcomeID` integer, nullable: The unique ID associated with this specific outcome
    - `BettingMarketID` integer, nullable: The unique ID of the betting market
    - `SportsBook` Sportsbook
      - `SportsbookID` integer: The unique ID of the sportsbook
      - `Name` string, nullable: The name of the sportsbook(s)
    - `BettingOutcomeTypeID` integer, nullable: The ID associated with the betting outcome type
    - `BettingOutcomeType` string, nullable: The name of the betting outcome within a betting market (e.g. Home; Away; Under; Over)
    - `PayoutAmerican` integer, nullable: The american odds payout
    - `PayoutDecimal` number, nullable: The decimal odds payout
    - `Value` number, nullable: The number associated with the outcome (spread/total/etc)
    - `Participant` string, nullable: The name of the participant (typically team or player) associated with the outcome. NOTE: This is provided by the sportsbook. In the case of Player odds; we highly recommend using PlayerID as names of players can be inconsistent between sportsbooks
    - `IsAvailable` boolean, nullable: Is this outcome available for betting as of last update
    - `IsAlternate` boolean, nullable: Is this an alternate value or the core value
    - `Created` string, nullable: The date and time when this betting outcome was created in US Eastern Time.
    - `Updated` string, nullable: The timestamp of the last time this betting outcome was updated (in US Eastern Time)
    - `Unlisted` string, nullable: The datetime the outcome was unlisted (no longer available for bets)
    - `TeamID` integer, nullable: The unique ID of the team
    - `PlayerID` integer, nullable: The player's unique PlayerID as assigned by SportsDataIO. Note: this ID will stay with the player throughout their entire career
    - `GlobalTeamID` integer, nullable: A globally unique ID for this team. This value is guaranteed to be unique across all sports/leagues.
    - `SportsbookUrl` string, nullable: The URL for sportsbook event
    - `IsInPlay` boolean, nullable: Was this outcome created after the start time of the game (only applies when the betting event is of type game)
    - `SportsbookMarketID` string, nullable: The market ID of the given sportsbook when available for deep links
    - `SportsbookOutcomeID` string, nullable: The outcome ID of the given sportsbook when available for deep links
  - `ConsensusOutcomes` ConsensusOutcome[]: The single set of consensus outcomes of this market
    - `NumberOfSportsbooks` integer: The number of sportsbooks odds that went into creating this consensus outcome
    - `BettingOutcomeID` integer, nullable: The unique ID associated with this specific outcome
    - `BettingMarketID` integer, nullable: The unique ID of the betting market
    - `SportsBook` Sportsbook
      - `SportsbookID` integer: The unique ID of the sportsbook
      - `Name` string, nullable: The name of the sportsbook(s)
    - `BettingOutcomeTypeID` integer, nullable: The ID associated with the betting outcome type
    - `BettingOutcomeType` string, nullable: The name of the betting outcome within a betting market (e.g. Home; Away; Under; Over)
    - `PayoutAmerican` integer, nullable: The american odds payout
    - `PayoutDecimal` number, nullable: The decimal odds payout
    - `Value` number, nullable: The number associated with the outcome (spread/total/etc)
    - `Participant` string, nullable: The name of the participant (typically team or player) associated with the outcome. NOTE: This is provided by the sportsbook. In the case of Player odds; we highly recommend using PlayerID as names of players can be inconsistent between sportsbooks
    - `IsAvailable` boolean, nullable: Is this outcome available for betting as of last update
    - `IsAlternate` boolean, nullable: Is this an alternate value or the core value
    - `Created` string, nullable: The date and time when this betting outcome was created in US Eastern Time.
    - `Updated` string, nullable: The timestamp of the last time this betting outcome was updated (in US Eastern Time)
    - `Unlisted` string, nullable: The datetime the outcome was unlisted (no longer available for bets)
    - `TeamID` integer, nullable: The unique ID of the team
    - `PlayerID` integer, nullable: The player's unique PlayerID as assigned by SportsDataIO. Note: this ID will stay with the player throughout their entire career
    - `GlobalTeamID` integer, nullable: A globally unique ID for this team. This value is guaranteed to be unique across all sports/leagues.
    - `SportsbookUrl` string, nullable: The URL for sportsbook event
    - `IsInPlay` boolean, nullable: Was this outcome created after the start time of the game (only applies when the betting event is of type game)
    - `SportsbookMarketID` string, nullable: The market ID of the given sportsbook when available for deep links
    - `SportsbookOutcomeID` string, nullable: The outcome ID of the given sportsbook when available for deep links
  - `IsArchived` boolean: Indicates if the BettingOutcomes have been moved to the archives
  - `ArchiveLocation` string, nullable: If IsArchived is true, this returns the URL that can be used to retrieve the archived BettingOutcomes. An API Key and Sportsbook Grouping will be required to retrieve this information. If IsArchived is false, this returns an emtpy string

## Other responses

- `401`: Unauthorized

---

[API](https://skmtc.dev/sportsdata/apis/nhl-api.md) - [All operations](https://skmtc.dev/sportsdata/apis/nhl-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sportsdata/apis/nhl-api/revisions/23cc22d7f2ad?raw)
