Skip to content

Content

griddy / nfl / endpoints / pro / content**

content

Classes

Content

Content(
    sdk_config: SDKConfiguration,
    parent_ref: Optional[object],
)

Bases: ProSDK, GameContentMixin


              flowchart TD
              griddy.nfl.endpoints.pro.content.Content[Content]
              griddy.nfl.endpoints.pro.ProSDK[ProSDK]
              griddy.nfl.basesdk.BaseSDK[BaseSDK]
              griddy.nfl.endpoints.pro.mixins.game_content.GameContentMixin[GameContentMixin]

                              griddy.nfl.endpoints.pro.ProSDK --> griddy.nfl.endpoints.pro.content.Content
                                griddy.nfl.basesdk.BaseSDK --> griddy.nfl.endpoints.pro.ProSDK
                

                griddy.nfl.endpoints.pro.mixins.game_content.GameContentMixin --> griddy.nfl.endpoints.pro.content.Content
                


              click griddy.nfl.endpoints.pro.content.Content href "" "griddy.nfl.endpoints.pro.content.Content"
              click griddy.nfl.endpoints.pro.ProSDK href "" "griddy.nfl.endpoints.pro.ProSDK"
              click griddy.nfl.basesdk.BaseSDK href "" "griddy.nfl.basesdk.BaseSDK"
              click griddy.nfl.endpoints.pro.mixins.game_content.GameContentMixin href "" "griddy.nfl.endpoints.pro.mixins.game_content.GameContentMixin"
            
Source code in griddy/nfl/endpoints/pro/__init__.py
def __init__(self, sdk_config: SDKConfiguration, parent_ref: Optional[object]):
    super().__init__(sdk_config=sdk_config, parent_ref=parent_ref)
    self.sdk_configuration.server_type = "pro"
Functions
get_home_film_cards
get_home_film_cards(
    *,
    retries: OptionalNullable[RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None
) -> HomeFilmCardsResponse

Get Home Film Cards

Retrieves featured film room content cards for the home page. Returns weekly playlists and featured player film breakdowns.

:param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds :param http_headers: Additional headers to set or replace on requests.

Source code in griddy/nfl/endpoints/pro/content.py
def get_home_film_cards(
    self,
    *,
    retries: OptionalNullable[utils.RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None,
) -> models.HomeFilmCardsResponse:
    r"""Get Home Film Cards

    Retrieves featured film room content cards for the home page.
    Returns weekly playlists and featured player film breakdowns.


    :param retries: Override the default retry configuration for this method
    :param server_url: Override the default server URL for this method
    :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
    :param http_headers: Additional headers to set or replace on requests.
    """
    config = self._get_home_film_cards_config(
        retries=retries,
        server_url=server_url,
        timeout_ms=timeout_ms,
        http_headers=http_headers,
    )
    return self._execute_endpoint(config)
get_home_film_cards_async async
get_home_film_cards_async(
    *,
    retries: OptionalNullable[RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None
) -> HomeFilmCardsResponse

Get Home Film Cards

Retrieves featured film room content cards for the home page. Returns weekly playlists and featured player film breakdowns.

:param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds :param http_headers: Additional headers to set or replace on requests.

Source code in griddy/nfl/endpoints/pro/content.py
async def get_home_film_cards_async(
    self,
    *,
    retries: OptionalNullable[utils.RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None,
) -> models.HomeFilmCardsResponse:
    r"""Get Home Film Cards

    Retrieves featured film room content cards for the home page.
    Returns weekly playlists and featured player film breakdowns.


    :param retries: Override the default retry configuration for this method
    :param server_url: Override the default server URL for this method
    :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
    :param http_headers: Additional headers to set or replace on requests.
    """
    config = self._get_home_film_cards_config(
        retries=retries,
        server_url=server_url,
        timeout_ms=timeout_ms,
        http_headers=http_headers,
    )
    return await self._execute_endpoint_async(config)
get_season_insights
get_season_insights(
    *,
    season: int,
    limit: Optional[int] = 20,
    tags: Optional[List[Tag]] = None,
    team_id: Optional[str] = None,
    nfl_id: Optional[str] = None,
    retries: OptionalNullable[RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None
) -> List[Insight]

Get Season Content Insights

Retrieves curated editorial insights and analytics content for NFL players during a specified season. Returns expert commentary combining Next Gen Stats data with editorial analysis, including pregame previews, postgame breakdowns, fantasy insights, and evergreen content. Supports filtering by player, team, content tags, and publication limits for targeted content discovery.

:param season: Season year :param limit: Maximum number of insights to return :param tags: Content tags to filter by (supports multiple comma-separated tags) :param team_id: Filter by specific team identifier :param nfl_id: Filter by specific player NFL identifier :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds :param http_headers: Additional headers to set or replace on requests.

Source code in griddy/nfl/endpoints/pro/content.py
def get_season_insights(
    self,
    *,
    season: int,
    limit: Optional[int] = 20,
    tags: Optional[List[models.Tag]] = None,
    team_id: Optional[str] = None,
    nfl_id: Optional[str] = None,
    retries: OptionalNullable[utils.RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None,
) -> List[models.Insight]:
    r"""Get Season Content Insights

    Retrieves curated editorial insights and analytics content for NFL players during
    a specified season. Returns expert commentary combining Next Gen Stats data with
    editorial analysis, including pregame previews, postgame breakdowns, fantasy insights,
    and evergreen content. Supports filtering by player, team, content tags, and publication
    limits for targeted content discovery.


    :param season: Season year
    :param limit: Maximum number of insights to return
    :param tags: Content tags to filter by (supports multiple comma-separated tags)
    :param team_id: Filter by specific team identifier
    :param nfl_id: Filter by specific player NFL identifier
    :param retries: Override the default retry configuration for this method
    :param server_url: Override the default server URL for this method
    :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
    :param http_headers: Additional headers to set or replace on requests.
    """
    config = self._get_season_insights_config(
        season=season,
        limit=limit,
        tags=tags,
        team_id=team_id,
        nfl_id=nfl_id,
        retries=retries,
        server_url=server_url,
        timeout_ms=timeout_ms,
        http_headers=http_headers,
    )
    return self._execute_endpoint(config)
get_season_insights_async async
get_season_insights_async(
    *,
    season: int,
    limit: Optional[int] = 20,
    tags: Optional[List[Tag]] = None,
    team_id: Optional[str] = None,
    nfl_id: Optional[str] = None,
    retries: OptionalNullable[RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None
) -> List[Insight]

Get Season Content Insights

Retrieves curated editorial insights and analytics content for NFL players during a specified season. Returns expert commentary combining Next Gen Stats data with editorial analysis, including pregame previews, postgame breakdowns, fantasy insights, and evergreen content. Supports filtering by player, team, content tags, and publication limits for targeted content discovery.

:param season: Season year :param limit: Maximum number of insights to return :param tags: Content tags to filter by (supports multiple comma-separated tags) :param team_id: Filter by specific team identifier :param nfl_id: Filter by specific player NFL identifier :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds :param http_headers: Additional headers to set or replace on requests.

Source code in griddy/nfl/endpoints/pro/content.py
async def get_season_insights_async(
    self,
    *,
    season: int,
    limit: Optional[int] = 20,
    tags: Optional[List[models.Tag]] = None,
    team_id: Optional[str] = None,
    nfl_id: Optional[str] = None,
    retries: OptionalNullable[utils.RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None,
) -> List[models.Insight]:
    r"""Get Season Content Insights

    Retrieves curated editorial insights and analytics content for NFL players during
    a specified season. Returns expert commentary combining Next Gen Stats data with
    editorial analysis, including pregame previews, postgame breakdowns, fantasy insights,
    and evergreen content. Supports filtering by player, team, content tags, and publication
    limits for targeted content discovery.


    :param season: Season year
    :param limit: Maximum number of insights to return
    :param tags: Content tags to filter by (supports multiple comma-separated tags)
    :param team_id: Filter by specific team identifier
    :param nfl_id: Filter by specific player NFL identifier
    :param retries: Override the default retry configuration for this method
    :param server_url: Override the default server URL for this method
    :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
    :param http_headers: Additional headers to set or replace on requests.
    """
    config = self._get_season_insights_config(
        season=season,
        limit=limit,
        tags=tags,
        team_id=team_id,
        nfl_id=nfl_id,
        retries=retries,
        server_url=server_url,
        timeout_ms=timeout_ms,
        http_headers=http_headers,
    )
    return await self._execute_endpoint_async(config)
get_filmroom_plays
get_filmroom_plays(
    *,
    game_id: Optional[List[str]] = None,
    week_slug: Optional[List[WeekSlugEnum]] = None,
    season: Optional[List[int]] = None,
    season_type: Optional[List[SeasonTypeEnum]] = None,
    nfl_id: Optional[List[str]] = None,
    quarter: Optional[List[int]] = None,
    down: Optional[List[int]] = None,
    yards_to_go_type: Optional[List[YardsToGoType]] = None,
    touchdown: Optional[List[BinaryFlagEnum]] = None,
    rush10_plus_yards: Optional[
        List[BinaryFlagEnum]
    ] = None,
    fumble_lost: Optional[List[BinaryFlagEnum]] = None,
    fumble: Optional[List[BinaryFlagEnum]] = None,
    qb_alignment: Optional[List[QbAlignment]] = None,
    redzone: Optional[List[BinaryFlagEnum]] = None,
    goal_to_go: Optional[List[BinaryFlagEnum]] = None,
    pass_play: Optional[List[BinaryFlagEnum]] = None,
    run_play: Optional[List[BinaryFlagEnum]] = None,
    play_type: Optional[List[PlayTypeEnum]] = None,
    attempt: Optional[List[BinaryFlagEnum]] = None,
    completion: Optional[List[BinaryFlagEnum]] = None,
    interception: Optional[List[BinaryFlagEnum]] = None,
    reception: Optional[List[BinaryFlagEnum]] = None,
    sack: Optional[List[BinaryFlagEnum]] = None,
    rec_motion: Optional[List[BinaryFlagEnum]] = None,
    target_location: Optional[List[TargetLocation]] = None,
    air_yard_type: Optional[List[AirYardType]] = None,
    dropback_time_type: Optional[
        List[DropbackTimeType]
    ] = None,
    pressure: Optional[List[BinaryFlagEnum]] = None,
    blitz: Optional[List[BinaryFlagEnum]] = None,
    play_action: Optional[List[BinaryFlagEnum]] = None,
    rush_direction: Optional[List[RushDirection]] = None,
    run_stuff: Optional[List[BinaryFlagEnum]] = None,
    receiver_alignment: Optional[
        List[ReceiverAlignment]
    ] = None,
    separation_type: Optional[List[SeparationType]] = None,
    personnel: Optional[List[Personnel]] = None,
    defenders_in_the_box_type: Optional[
        List[DefendersInTheBoxType]
    ] = None,
    def_coverage_type: Optional[
        List[DefCoverageType]
    ] = None,
    retries: OptionalNullable[RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None
) -> FilmroomPlaysResponse

Get Filmroom Plays with Advanced Filtering

Retrieves detailed play-by-play data with extensive filtering capabilities for film study. Returns comprehensive play information including formations, personnel packages, game situations, and detailed play descriptions. This endpoint supports advanced filtering by game situation, player involvement, formation types, and tactical elements.

:param game_id: Filter by specific game IDs (supports multiple values) :param week_slug: Filter by week identifier (supports multiple values) :param season: Filter by season year (supports multiple values) :param season_type: Filter by season type :param nfl_id: Filter by player NFL ID :param quarter: Filter by quarter :param down: Filter by down :param yards_to_go_type: Filter by yards to go category :param touchdown: Filter for touchdown plays (1 = yes, 0 = no) :param rush10_plus_yards: Filter for rushing plays of 10+ yards :param fumble_lost: Filter for plays with fumbles lost :param fumble: Filter for plays with fumbles :param qb_alignment: Filter by quarterback alignment :param redzone: Filter for red zone plays :param goal_to_go: Filter for goal-to-go situations :param pass_play: Filter for passing plays :param run_play: Filter for running plays :param play_type: Filter by specific play types :param attempt: Filter for passing attempts :param completion: Filter for completed passes :param interception: Filter for interceptions :param reception: Filter for receptions :param sack: Filter for sacks :param rec_motion: Filter by receiver motion :param target_location: Filter by target location on field :param air_yard_type: Filter by air yards category :param dropback_time_type: Filter by dropback time :param pressure: Filter by quarterback pressure :param blitz: Filter by defensive blitz :param play_action: Filter by play action usage :param rush_direction: Filter by rush direction :param run_stuff: Filter for stuffed runs :param receiver_alignment: Filter by receiver alignment :param separation_type: Filter by receiver separation :param personnel: Filter by defensive personnel package :param defenders_in_the_box_type: Filter by defenders in the box :param def_coverage_type: Filter by defensive coverage type :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds :param http_headers: Additional headers to set or replace on requests.

Source code in griddy/nfl/endpoints/pro/content.py
def get_filmroom_plays(
    self,
    *,
    game_id: Optional[List[str]] = None,
    week_slug: Optional[List[models.WeekSlugEnum]] = None,
    season: Optional[List[int]] = None,
    season_type: Optional[List[models.SeasonTypeEnum]] = None,
    nfl_id: Optional[List[str]] = None,
    quarter: Optional[List[int]] = None,
    down: Optional[List[int]] = None,
    yards_to_go_type: Optional[List[models.YardsToGoType]] = None,
    touchdown: Optional[List[models.BinaryFlagEnum]] = None,
    rush10_plus_yards: Optional[List[models.BinaryFlagEnum]] = None,
    fumble_lost: Optional[List[models.BinaryFlagEnum]] = None,
    fumble: Optional[List[models.BinaryFlagEnum]] = None,
    qb_alignment: Optional[List[models.QbAlignment]] = None,
    redzone: Optional[List[models.BinaryFlagEnum]] = None,
    goal_to_go: Optional[List[models.BinaryFlagEnum]] = None,
    pass_play: Optional[List[models.BinaryFlagEnum]] = None,
    run_play: Optional[List[models.BinaryFlagEnum]] = None,
    play_type: Optional[List[models.PlayTypeEnum]] = None,
    attempt: Optional[List[models.BinaryFlagEnum]] = None,
    completion: Optional[List[models.BinaryFlagEnum]] = None,
    interception: Optional[List[models.BinaryFlagEnum]] = None,
    reception: Optional[List[models.BinaryFlagEnum]] = None,
    sack: Optional[List[models.BinaryFlagEnum]] = None,
    rec_motion: Optional[List[models.BinaryFlagEnum]] = None,
    target_location: Optional[List[models.TargetLocation]] = None,
    air_yard_type: Optional[List[models.AirYardType]] = None,
    dropback_time_type: Optional[List[models.DropbackTimeType]] = None,
    pressure: Optional[List[models.BinaryFlagEnum]] = None,
    blitz: Optional[List[models.BinaryFlagEnum]] = None,
    play_action: Optional[List[models.BinaryFlagEnum]] = None,
    rush_direction: Optional[List[models.RushDirection]] = None,
    run_stuff: Optional[List[models.BinaryFlagEnum]] = None,
    receiver_alignment: Optional[List[models.ReceiverAlignment]] = None,
    separation_type: Optional[List[models.SeparationType]] = None,
    personnel: Optional[List[models.Personnel]] = None,
    defenders_in_the_box_type: Optional[List[models.DefendersInTheBoxType]] = None,
    def_coverage_type: Optional[List[models.DefCoverageType]] = None,
    retries: OptionalNullable[utils.RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None,
) -> models.FilmroomPlaysResponse:
    # TODO: Note that the actual video file itself is acquired by:
    # 1.) Extract the mcpPlaybackId of the game
    # 2.) Using it (and other stuff I've yet to dechipher the meaning of
    #       to send a POST request to https://api.nfl.com/play/v1/asset/<mcpPlaybackId>
    # This request will return a JSON response with:
    # accessUrl, init, and metadata fields
    r"""Get Filmroom Plays with Advanced Filtering

    Retrieves detailed play-by-play data with extensive filtering capabilities for film study.
    Returns comprehensive play information including formations, personnel packages, game situations,
    and detailed play descriptions. This endpoint supports advanced filtering by game situation,
    player involvement, formation types, and tactical elements.


    :param game_id: Filter by specific game IDs (supports multiple values)
    :param week_slug: Filter by week identifier (supports multiple values)
    :param season: Filter by season year (supports multiple values)
    :param season_type: Filter by season type
    :param nfl_id: Filter by player NFL ID
    :param quarter: Filter by quarter
    :param down: Filter by down
    :param yards_to_go_type: Filter by yards to go category
    :param touchdown: Filter for touchdown plays (1 = yes, 0 = no)
    :param rush10_plus_yards: Filter for rushing plays of 10+ yards
    :param fumble_lost: Filter for plays with fumbles lost
    :param fumble: Filter for plays with fumbles
    :param qb_alignment: Filter by quarterback alignment
    :param redzone: Filter for red zone plays
    :param goal_to_go: Filter for goal-to-go situations
    :param pass_play: Filter for passing plays
    :param run_play: Filter for running plays
    :param play_type: Filter by specific play types
    :param attempt: Filter for passing attempts
    :param completion: Filter for completed passes
    :param interception: Filter for interceptions
    :param reception: Filter for receptions
    :param sack: Filter for sacks
    :param rec_motion: Filter by receiver motion
    :param target_location: Filter by target location on field
    :param air_yard_type: Filter by air yards category
    :param dropback_time_type: Filter by dropback time
    :param pressure: Filter by quarterback pressure
    :param blitz: Filter by defensive blitz
    :param play_action: Filter by play action usage
    :param rush_direction: Filter by rush direction
    :param run_stuff: Filter for stuffed runs
    :param receiver_alignment: Filter by receiver alignment
    :param separation_type: Filter by receiver separation
    :param personnel: Filter by defensive personnel package
    :param defenders_in_the_box_type: Filter by defenders in the box
    :param def_coverage_type: Filter by defensive coverage type
    :param retries: Override the default retry configuration for this method
    :param server_url: Override the default server URL for this method
    :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
    :param http_headers: Additional headers to set or replace on requests.
    """
    config = self._get_filmroom_plays_config(
        game_id=game_id,
        week_slug=week_slug,
        season=season,
        season_type=season_type,
        nfl_id=nfl_id,
        quarter=quarter,
        down=down,
        yards_to_go_type=yards_to_go_type,
        touchdown=touchdown,
        rush10_plus_yards=rush10_plus_yards,
        fumble_lost=fumble_lost,
        fumble=fumble,
        qb_alignment=qb_alignment,
        redzone=redzone,
        goal_to_go=goal_to_go,
        pass_play=pass_play,
        run_play=run_play,
        play_type=play_type,
        attempt=attempt,
        completion=completion,
        interception=interception,
        reception=reception,
        sack=sack,
        rec_motion=rec_motion,
        target_location=target_location,
        air_yard_type=air_yard_type,
        dropback_time_type=dropback_time_type,
        pressure=pressure,
        blitz=blitz,
        play_action=play_action,
        rush_direction=rush_direction,
        run_stuff=run_stuff,
        receiver_alignment=receiver_alignment,
        separation_type=separation_type,
        personnel=personnel,
        defenders_in_the_box_type=defenders_in_the_box_type,
        def_coverage_type=def_coverage_type,
        retries=retries,
        server_url=server_url,
        timeout_ms=timeout_ms,
        http_headers=http_headers,
    )
    return self._execute_endpoint(config)
get_filmroom_plays_async async
get_filmroom_plays_async(
    *,
    game_id: Optional[List[str]] = None,
    week_slug: Optional[List[WeekSlugEnum]] = None,
    season: Optional[List[int]] = None,
    season_type: Optional[List[SeasonTypeEnum]] = None,
    nfl_id: Optional[List[str]] = None,
    quarter: Optional[List[int]] = None,
    down: Optional[List[int]] = None,
    yards_to_go_type: Optional[List[YardsToGoType]] = None,
    touchdown: Optional[List[BinaryFlagEnum]] = None,
    rush10_plus_yards: Optional[
        List[BinaryFlagEnum]
    ] = None,
    fumble_lost: Optional[List[BinaryFlagEnum]] = None,
    fumble: Optional[List[BinaryFlagEnum]] = None,
    qb_alignment: Optional[List[QbAlignment]] = None,
    redzone: Optional[List[BinaryFlagEnum]] = None,
    goal_to_go: Optional[List[BinaryFlagEnum]] = None,
    pass_play: Optional[List[BinaryFlagEnum]] = None,
    run_play: Optional[List[BinaryFlagEnum]] = None,
    play_type: Optional[List[PlayTypeEnum]] = None,
    attempt: Optional[List[BinaryFlagEnum]] = None,
    completion: Optional[List[BinaryFlagEnum]] = None,
    interception: Optional[List[BinaryFlagEnum]] = None,
    reception: Optional[List[BinaryFlagEnum]] = None,
    sack: Optional[List[BinaryFlagEnum]] = None,
    rec_motion: Optional[List[BinaryFlagEnum]] = None,
    target_location: Optional[List[TargetLocation]] = None,
    air_yard_type: Optional[List[AirYardType]] = None,
    dropback_time_type: Optional[
        List[DropbackTimeType]
    ] = None,
    pressure: Optional[List[BinaryFlagEnum]] = None,
    blitz: Optional[List[BinaryFlagEnum]] = None,
    play_action: Optional[List[BinaryFlagEnum]] = None,
    rush_direction: Optional[List[RushDirection]] = None,
    run_stuff: Optional[List[BinaryFlagEnum]] = None,
    receiver_alignment: Optional[
        List[ReceiverAlignment]
    ] = None,
    separation_type: Optional[List[SeparationType]] = None,
    personnel: Optional[List[Personnel]] = None,
    defenders_in_the_box_type: Optional[
        List[DefendersInTheBoxType]
    ] = None,
    def_coverage_type: Optional[
        List[DefCoverageType]
    ] = None,
    retries: OptionalNullable[RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None
) -> FilmroomPlaysResponse

Get Filmroom Plays with Advanced Filtering

Retrieves detailed play-by-play data with extensive filtering capabilities for film study. Returns comprehensive play information including formations, personnel packages, game situations, and detailed play descriptions. This endpoint supports advanced filtering by game situation, player involvement, formation types, and tactical elements.

:param game_id: Filter by specific game IDs (supports multiple values) :param week_slug: Filter by week identifier (supports multiple values) :param season: Filter by season year (supports multiple values) :param season_type: Filter by season type :param nfl_id: Filter by player NFL ID :param quarter: Filter by quarter :param down: Filter by down :param yards_to_go_type: Filter by yards to go category :param touchdown: Filter for touchdown plays (1 = yes, 0 = no) :param rush10_plus_yards: Filter for rushing plays of 10+ yards :param fumble_lost: Filter for plays with fumbles lost :param fumble: Filter for plays with fumbles :param qb_alignment: Filter by quarterback alignment :param redzone: Filter for red zone plays :param goal_to_go: Filter for goal-to-go situations :param pass_play: Filter for passing plays :param run_play: Filter for running plays :param play_type: Filter by specific play types :param attempt: Filter for passing attempts :param completion: Filter for completed passes :param interception: Filter for interceptions :param reception: Filter for receptions :param sack: Filter for sacks :param rec_motion: Filter by receiver motion :param target_location: Filter by target location on field :param air_yard_type: Filter by air yards category :param dropback_time_type: Filter by dropback time :param pressure: Filter by quarterback pressure :param blitz: Filter by defensive blitz :param play_action: Filter by play action usage :param rush_direction: Filter by rush direction :param run_stuff: Filter for stuffed runs :param receiver_alignment: Filter by receiver alignment :param separation_type: Filter by receiver separation :param personnel: Filter by defensive personnel package :param defenders_in_the_box_type: Filter by defenders in the box :param def_coverage_type: Filter by defensive coverage type :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds :param http_headers: Additional headers to set or replace on requests.

Source code in griddy/nfl/endpoints/pro/content.py
async def get_filmroom_plays_async(
    self,
    *,
    game_id: Optional[List[str]] = None,
    week_slug: Optional[List[models.WeekSlugEnum]] = None,
    season: Optional[List[int]] = None,
    season_type: Optional[List[models.SeasonTypeEnum]] = None,
    nfl_id: Optional[List[str]] = None,
    quarter: Optional[List[int]] = None,
    down: Optional[List[int]] = None,
    yards_to_go_type: Optional[List[models.YardsToGoType]] = None,
    touchdown: Optional[List[models.BinaryFlagEnum]] = None,
    rush10_plus_yards: Optional[List[models.BinaryFlagEnum]] = None,
    fumble_lost: Optional[List[models.BinaryFlagEnum]] = None,
    fumble: Optional[List[models.BinaryFlagEnum]] = None,
    qb_alignment: Optional[List[models.QbAlignment]] = None,
    redzone: Optional[List[models.BinaryFlagEnum]] = None,
    goal_to_go: Optional[List[models.BinaryFlagEnum]] = None,
    pass_play: Optional[List[models.BinaryFlagEnum]] = None,
    run_play: Optional[List[models.BinaryFlagEnum]] = None,
    play_type: Optional[List[models.PlayTypeEnum]] = None,
    attempt: Optional[List[models.BinaryFlagEnum]] = None,
    completion: Optional[List[models.BinaryFlagEnum]] = None,
    interception: Optional[List[models.BinaryFlagEnum]] = None,
    reception: Optional[List[models.BinaryFlagEnum]] = None,
    sack: Optional[List[models.BinaryFlagEnum]] = None,
    rec_motion: Optional[List[models.BinaryFlagEnum]] = None,
    target_location: Optional[List[models.TargetLocation]] = None,
    air_yard_type: Optional[List[models.AirYardType]] = None,
    dropback_time_type: Optional[List[models.DropbackTimeType]] = None,
    pressure: Optional[List[models.BinaryFlagEnum]] = None,
    blitz: Optional[List[models.BinaryFlagEnum]] = None,
    play_action: Optional[List[models.BinaryFlagEnum]] = None,
    rush_direction: Optional[List[models.RushDirection]] = None,
    run_stuff: Optional[List[models.BinaryFlagEnum]] = None,
    receiver_alignment: Optional[List[models.ReceiverAlignment]] = None,
    separation_type: Optional[List[models.SeparationType]] = None,
    personnel: Optional[List[models.Personnel]] = None,
    defenders_in_the_box_type: Optional[List[models.DefendersInTheBoxType]] = None,
    def_coverage_type: Optional[List[models.DefCoverageType]] = None,
    retries: OptionalNullable[utils.RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None,
) -> models.FilmroomPlaysResponse:
    r"""Get Filmroom Plays with Advanced Filtering

    Retrieves detailed play-by-play data with extensive filtering capabilities for film study.
    Returns comprehensive play information including formations, personnel packages, game situations,
    and detailed play descriptions. This endpoint supports advanced filtering by game situation,
    player involvement, formation types, and tactical elements.


    :param game_id: Filter by specific game IDs (supports multiple values)
    :param week_slug: Filter by week identifier (supports multiple values)
    :param season: Filter by season year (supports multiple values)
    :param season_type: Filter by season type
    :param nfl_id: Filter by player NFL ID
    :param quarter: Filter by quarter
    :param down: Filter by down
    :param yards_to_go_type: Filter by yards to go category
    :param touchdown: Filter for touchdown plays (1 = yes, 0 = no)
    :param rush10_plus_yards: Filter for rushing plays of 10+ yards
    :param fumble_lost: Filter for plays with fumbles lost
    :param fumble: Filter for plays with fumbles
    :param qb_alignment: Filter by quarterback alignment
    :param redzone: Filter for red zone plays
    :param goal_to_go: Filter for goal-to-go situations
    :param pass_play: Filter for passing plays
    :param run_play: Filter for running plays
    :param play_type: Filter by specific play types
    :param attempt: Filter for passing attempts
    :param completion: Filter for completed passes
    :param interception: Filter for interceptions
    :param reception: Filter for receptions
    :param sack: Filter for sacks
    :param rec_motion: Filter by receiver motion
    :param target_location: Filter by target location on field
    :param air_yard_type: Filter by air yards category
    :param dropback_time_type: Filter by dropback time
    :param pressure: Filter by quarterback pressure
    :param blitz: Filter by defensive blitz
    :param play_action: Filter by play action usage
    :param rush_direction: Filter by rush direction
    :param run_stuff: Filter for stuffed runs
    :param receiver_alignment: Filter by receiver alignment
    :param separation_type: Filter by receiver separation
    :param personnel: Filter by defensive personnel package
    :param defenders_in_the_box_type: Filter by defenders in the box
    :param def_coverage_type: Filter by defensive coverage type
    :param retries: Override the default retry configuration for this method
    :param server_url: Override the default server URL for this method
    :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
    :param http_headers: Additional headers to set or replace on requests.
    """
    config = self._get_filmroom_plays_config(
        game_id=game_id,
        week_slug=week_slug,
        season=season,
        season_type=season_type,
        nfl_id=nfl_id,
        quarter=quarter,
        down=down,
        yards_to_go_type=yards_to_go_type,
        touchdown=touchdown,
        rush10_plus_yards=rush10_plus_yards,
        fumble_lost=fumble_lost,
        fumble=fumble,
        qb_alignment=qb_alignment,
        redzone=redzone,
        goal_to_go=goal_to_go,
        pass_play=pass_play,
        run_play=run_play,
        play_type=play_type,
        attempt=attempt,
        completion=completion,
        interception=interception,
        reception=reception,
        sack=sack,
        rec_motion=rec_motion,
        target_location=target_location,
        air_yard_type=air_yard_type,
        dropback_time_type=dropback_time_type,
        pressure=pressure,
        blitz=blitz,
        play_action=play_action,
        rush_direction=rush_direction,
        run_stuff=run_stuff,
        receiver_alignment=receiver_alignment,
        separation_type=separation_type,
        personnel=personnel,
        defenders_in_the_box_type=defenders_in_the_box_type,
        def_coverage_type=def_coverage_type,
        retries=retries,
        server_url=server_url,
        timeout_ms=timeout_ms,
        http_headers=http_headers,
    )
    return await self._execute_endpoint_async(config)
get_coaches_film_videos
get_coaches_film_videos(
    *,
    game_id: List[str],
    play_id: List[str],
    retries: OptionalNullable[RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None
) -> CoachesFilmResponse

Get Coaches Film Videos

Retrieves premium coaches film video content for specified games and plays. Returns multiple camera angles (endzone, sideline, broadcast) for each play, providing comprehensive film study material. Requires NFL Plus Premium subscription and appropriate geographic restrictions apply (US only).

:param game_id: Game identifiers (UUID format, supports multiple games) :param play_id: Play identifiers for specific plays within the games :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds :param http_headers: Additional headers to set or replace on requests.

Source code in griddy/nfl/endpoints/pro/content.py
def get_coaches_film_videos(
    self,
    *,
    game_id: List[str],
    play_id: List[str],
    retries: OptionalNullable[utils.RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None,
) -> models.CoachesFilmResponse:
    # TODO: Note that the game_id used in this request
    # corresponds to the Game's UUID often labeled fapi_game_id by the NFL.
    # Why is it different? Nobody knows
    r"""Get Coaches Film Videos

    Retrieves premium coaches film video content for specified games and plays.
    Returns multiple camera angles (endzone, sideline, broadcast) for each play,
    providing comprehensive film study material. Requires NFL Plus Premium subscription
    and appropriate geographic restrictions apply (US only).


    :param game_id: Game identifiers (UUID format, supports multiple games)
    :param play_id: Play identifiers for specific plays within the games
    :param retries: Override the default retry configuration for this method
    :param server_url: Override the default server URL for this method
    :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
    :param http_headers: Additional headers to set or replace on requests.
    """
    config = self._get_coaches_film_videos_config(
        game_id=game_id,
        play_id=play_id,
        retries=retries,
        server_url=server_url,
        timeout_ms=timeout_ms,
        http_headers=http_headers,
    )
    return self._execute_endpoint(config)
get_coaches_film_videos_async async
get_coaches_film_videos_async(
    *,
    game_id: List[str],
    play_id: List[str],
    retries: OptionalNullable[RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None
) -> CoachesFilmResponse

Get Coaches Film Videos

Retrieves premium coaches film video content for specified games and plays. Returns multiple camera angles (endzone, sideline, broadcast) for each play, providing comprehensive film study material. Requires NFL Plus Premium subscription and appropriate geographic restrictions apply (US only).

:param game_id: Game identifiers (UUID format, supports multiple games) :param play_id: Play identifiers for specific plays within the games :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds :param http_headers: Additional headers to set or replace on requests.

Source code in griddy/nfl/endpoints/pro/content.py
async def get_coaches_film_videos_async(
    self,
    *,
    game_id: List[str],
    play_id: List[str],
    retries: OptionalNullable[utils.RetryConfig] = UNSET,
    server_url: Optional[str] = None,
    timeout_ms: Optional[int] = None,
    http_headers: Optional[Mapping[str, str]] = None,
) -> models.CoachesFilmResponse:
    r"""Get Coaches Film Videos

    Retrieves premium coaches film video content for specified games and plays.
    Returns multiple camera angles (endzone, sideline, broadcast) for each play,
    providing comprehensive film study material. Requires NFL Plus Premium subscription
    and appropriate geographic restrictions apply (US only).


    :param game_id: Game identifiers (UUID format, supports multiple games)
    :param play_id: Play identifiers for specific plays within the games
    :param retries: Override the default retry configuration for this method
    :param server_url: Override the default server URL for this method
    :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
    :param http_headers: Additional headers to set or replace on requests.
    """
    config = self._get_coaches_film_videos_config(
        game_id=game_id,
        play_id=play_id,
        retries=retries,
        server_url=server_url,
        timeout_ms=timeout_ms,
        http_headers=http_headers,
    )
    return await self._execute_endpoint_async(config)