---
title: "Per-player match history (Build+)"
method: GET
path: "/v1/tennis/players/{name}/game-log"
tags: ["Tennis"]
---

# Per-player match history (Build+)

`GET /v1/tennis/players/{name}/game-log`

## Request

- Base URL: `https://api.playcallerapp.com`
- URL: `https://api.playcallerapp.com/v1/tennis/players/{name}/game-log`
- Auth: API key in header `X-PlayCaller-Key`

Returns a single player's match history and win/loss record from stored ESPN match results. For a comparison between two named players, use `/v1/tennis/players/h2h` instead — this endpoint is per-player only.

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

## Path parameters

- `name` string, required

## Query parameters

- `tour` 'atp' | 'wta'
- `limit` integer

## Response `200`

Player match history and record

- object
  - `success` boolean
  - `endpoint` string
  - `player` string
  - `record` object
    - `wins` integer
    - `losses` integer
    - `total_matches` integer
  - `matches` object[]
    - `date` string
    - `tour` string
    - `tournament` string
    - `round` string
    - `opponent` string
    - `score_player` integer
    - `score_opponent` integer
    - `result` 'win' | 'loss', nullable
    - `is_final` boolean
  - `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`: Build tier or higher required
- `404`: No matches found for the given player
- `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)
