---
title: "Get a single play_participation by id"
method: GET
path: "/api/v1/nfl/play_participations/{id}"
tags: ["NFL"]
---

# Get a single play_participation by id

`GET /api/v1/nfl/play_participations/{id}`

## Request

- Base URL: `https://api.stat-api.com`
- URL: `https://api.stat-api.com/api/v1/nfl/play_participations/{id}`
- Auth: HTTP bearer

## Path parameters

- `id` integer, required: Primary Key

## Response `200`

Single play_participations row.

- NFLPlayParticipations: The personnel and pre-snap setup on every NFL play (one row per play, not per player) — offensive formation, personnel grouping, defensive look, coverage scheme, and the on-field player ids as comma-joined text columns. 2024 season coverage.
  - `defenders_in_box` integer, nullable: Number of defenders within ~8 yards of the line of scrimmage at the snap.
  - `defense_coverage_type` string, nullable: Specific coverage scheme (e.g., `COVER_1`, `COVER_2_MAN`, `COVER_3`, `COVER_4`).
  - `defense_man_zone_type` string, nullable: Man- vs. zone-coverage classification (`MAN`, `ZONE`).
  - `defense_personnel` string, nullable: Defensive personnel grouping (e.g., `4 DL, 2 LB, 5 DB`).
  - `defense_players_gsis_ids` string, nullable: GSIS IDs of defensive players on the field for this play.
  - `game_id` integer, required
  - `id` integer, required: Primary Key
  - `n_defense` integer, nullable: Count of defensive players on the field (typically 11).
  - `n_offense` integer, nullable: Count of offensive players on the field (typically 11).
  - `ngs_air_yds` number, double, nullable: Air yards traveled by the pass from the line of scrimmage to where the receiver caught/dropped it (Next Gen Stats).
  - `number_of_pass_rushers` integer, nullable: Number of defenders who rushed the passer on this play (Next Gen Stats).
  - `offense_formation` string, nullable: Offensive formation alignment (e.g., `SHOTGUN`, `SINGLEBACK`, `I_FORM`, `PISTOL`).
  - `offense_personnel` string, nullable: Offensive personnel grouping in `RB-TE-WR` shorthand (e.g., `1 RB, 2 TE, 2 WR` → `12 personnel`).
  - `offense_players_gsis_ids` string, nullable: GSIS IDs of offensive players on the field for this play.
  - `play_id` string, required: Play identifier matching `play_by_plays.play_id` for the same game.
  - `players_on_play_gsis_ids` string, nullable: GSIS IDs of every player on the field for this play (comma-separated or JSON-encoded depending on source vintage).
  - `possession_team_id` integer, required: Team in possession on this play (FK to `teams`).
  - `route` string, nullable: Route the targeted receiver ran (e.g., `GO`, `SLANT`, `OUT`, `POST`).
  - `time_to_throw` number, double, nullable: Time from snap to pass release in seconds (Next Gen Stats).
  - `was_pressure` boolean, nullable: True if the quarterback faced pass-rush pressure on this play.

## Other responses

- `404`: Row not found.

---

[API](https://skmtc.dev/stat-api/apis/sports-db-public-api.md) · [All operations](https://skmtc.dev/stat-api/apis/sports-db-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/stat-api/apis/sports-db-public-api/revisions/0c8484d5fc29?raw)
