---
title: "List player_contracts for NFL"
method: GET
path: "/api/v1/nfl/player_contracts"
tags: ["NFL"]
---

# List player_contracts for NFL

`GET /api/v1/nfl/player_contracts`

## Request

- Base URL: `https://api.stat-api.com`
- URL: `https://api.stat-api.com/api/v1/nfl/player_contracts`
- Auth: HTTP bearer

## Query parameters

- `player_id` integer
- `team_id` integer
- `position` 'C' | 'CB' | 'ED' | 'FB' | 'IDL' | 'K' | 'LB' | 'LG' | 'LS' | 'LT' | 'P' | 'QB' | 'RB' | 'RG' | 'RT' | 'S' | 'TE' | 'WR'
- `limit` integer
- `from_id` integer
- `format` 'json' | 'csv'

## Response `200`

player_contracts rows matching the declared filter set.

- NFLPlayerContractsListResponse
  - `has_more` boolean, required: True when a full page came back, so more rows can exist.
  - `limit` integer, required: Page size used for this response.
  - `next_from_id` integer, nullable, required: Pass this as `from_id` on the next request to page forward. `null` on the terminal page, and on a first page requested without `from_id` (that page uses the default sort): to walk every row, start with `from_id=0`.
  - `player_contracts` NFLPlayerContracts[], required
    - `apy` integer, required: Average annual value (APY) in U.S. dollars — total `value` divided by `years`.
    - `apy_cap_pct` number, double, required: APY as a percentage of the league salary cap in the signing year (0.0-100.0).
    - `college` string, nullable
    - `date_of_birth` string, date, nullable
    - `guaranteed` integer, required: Total guaranteed money over the life of the contract, in U.S. dollars.
    - `height` string, nullable: Height (e.g., `6-2`).
    - `id` integer, required: Primary Key
    - `inflated_apy` integer, required: `apy` adjusted to the most recent salary cap.
    - `inflated_guaranteed` integer, required: `guaranteed` adjusted to the most recent salary cap.
    - `inflated_value` integer, required: `value` adjusted to the most recent salary cap, in U.S. dollars.
    - `is_active` boolean, required: True for the player's currently-active contract; false for historical contracts.
    - `player_id` integer, required
    - `position` string, required: Player position at the time the contract was signed.
    - `season_history_json` string, nullable: JSON-encoded year-by-year cap-hit breakdown for the life of the contract (stored as a string).
    - `team_id` integer, required
    - `value` integer, required: Total contract value in U.S. dollars.
    - `weight` integer, nullable: Weight in pounds.
    - `year_signed` integer, required: Calendar year the contract was signed.
    - `years` integer, required: Total contract length in years.

## Other responses

- `400`: No declared filter set was satisfied by the request — see `accepted` in the body for the valid combinations.

---

[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/23b66b957723?raw)
