---
title: "Team roster pulse — roster + injuries + depth changes + anomalies (Growth+)"
method: GET
path: "/v1/{sport}/teams/{team}/roster-pulse"
tags: ["Multi"]
---

# Team roster pulse — roster + injuries + depth changes + anomalies (Growth+)

`GET /v1/{sport}/teams/{team}/roster-pulse`

## Request

- Base URL: `https://api.playcallerapp.com`
- URL: `https://api.playcallerapp.com/v1/{sport}/teams/{team}/roster-pulse`
- Auth: API key in header `X-PlayCaller-Key`

Single-call team lineup intelligence: returns the current roster, recent injury updates, depth chart changes (NFL only), and active anomaly signals for any player on the team. Aggregates 4 data sources in one request. Counts as 4 requests toward your rate limit (`X-PC-Request-Weight: 4` response header).

**Tier access:** Growth, Pro Insights, Syndicate Alpha

## Path parameters

- `sport` 'nfl' | 'nba' | 'mlb' | 'nhl', required
- `team` string, required

## Response `200`

Roster pulse

- object
  - `success` boolean
  - `endpoint` string
  - `sport` string
  - `team` string
  - `generated_at` string, date-time
  - `roster` object[]
    - `player_id` string
    - `player_name` string
    - `position` string
    - `status` string
    - `anomaly_flag` boolean
  - `injury_updates` object[]
    - `player_name` string
    - `practice_status` string
    - `injury_type` string, nullable
    - `notes` string, nullable
    - `report_date` string, date
  - `depth_changes` object[]: NFL only — empty for other sports
    - `player_name` string
    - `position` string
    - `change_type` string
    - `old_order` integer, nullable
    - `new_order` integer, nullable
    - `ai_blurb` string, nullable
    - `detected_date` string, date
  - `anomalies` object[]
    - `player_name` string
    - `player_id` string
    - `anomaly_type` string
    - `severity` string
    - `anomaly_score` integer
    - `detected_at` string, date-time, nullable
  - `meta` ResponseMeta
    - `sport` string
    - `league` string: Present on multi-sport (ESPN-backed) endpoints; mirrors sport unless a sport has sub-leagues (e.g. soccer: epl/mls).
    - `tier` string
    - `calls_remaining_this_month` integer
    - `documentation_url` string, uri

## Other responses

- `401`: Missing or invalid API key
- `402`: Growth tier or higher required
- `429`: Rate limit or monthly quota exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/playcallerapp/apis/playcaller-data-api.md) · [All operations](https://skmtc.dev/playcallerapp/apis/playcaller-data-api/llms.txt) · [OpenAPI document](https://skmtc.dev/playcallerapp/apis/playcaller-data-api/revisions/100c0a3ffbfe?raw)
