---
title: "Game-by-game stats for an MLB player"
method: GET
path: "/v1/mlb/players/{id}/stats"
tags: ["MLB"]
---

# Game-by-game stats for an MLB player

`GET /v1/mlb/players/{id}/stats`

## Request

- Base URL: `https://api.playcallerapp.com`
- URL: `https://api.playcallerapp.com/v1/mlb/players/{id}/stats`
- Auth: API key in header `X-PlayCaller-Key`

Returns daily batting and pitching stat lines with pre-calculated fantasy points. Useful for tracking recent form, streaks, and park-factor-adjusted production.

**Tier access:** Developer Sandbox, Build, Growth, Pro Insights, Syndicate Alpha

## Path parameters

- `id` string, required

## Query parameters

- `date` string, date
- `limit` integer

## Response `200`

Player game-by-game stat log

- object
  - `success` boolean
  - `endpoint` string
  - `player` object
    - `id` string
    - `full_name` string
    - `position` string
    - `team` string
  - `count` integer
  - `data` MLBPlayerStats[]
    - `rank` integer, nullable: Leaders endpoint only
    - `id` string, nullable: Leaders endpoint only
    - `player_name` string, nullable: Leaders endpoint only
    - `team` string
    - `position` string
    - `stat_date` string, date-time
    - `game_pk` string, nullable: Player-stats endpoint only
    - `fantasy_points` string: Numeric value returned as a string
    - `is_final` boolean
    - `is_starter` boolean, nullable: Player-stats endpoint only
    - `last_updated` string, date-time, nullable: Player-stats endpoint only
    - `batting` object
      - `h` integer: Hits
      - `r` integer: Runs Scored
      - `hr` integer: Home Runs
      - `rbi` integer: RBI
      - `sb` integer: Stolen Bases
      - `bb` integer: Walks
      - `ab` integer, nullable: At Bats — player-stats endpoint only
      - `pa` integer, nullable: Plate Appearances — player-stats endpoint only
    - `pitching` object, nullable
      - `ip` string: Innings Pitched, returned as a string (e.g. "6.2")
      - `w` integer: Wins
      - `k` integer: Strikeouts
      - `sv` integer: Saves
      - `hld` integer: Holds
      - `er` integer: Earned Runs
  - `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
- `404`: Player not found
- `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)
