---
title: "Retrieve analysis for a submitted game"
method: GET
path: "/game/{gameId}"
---

# Retrieve analysis for a submitted game

`GET /game/{gameId}`

## Request

- Base URL: `https://www.chessigma.com/public-api/v1`
- URL: `https://www.chessigma.com/public-api/v1/game/{gameId}`
- Auth: none required
- TypeScript: <https://skmtc.dev/chessigma/apis/chessigma-public-api/docs/game/:gameId/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns game metadata and analysis. Because analysis runs client-side, this returns data only if a user has already opened the game page and triggered analysis. Only games submitted via this public API are readable here.

## Path parameters

- `gameId` string, uuid, required

## Response `200`

Game analysis

- GameAnalysisResponse
  - `gameId` string, uuid
  - `status` 'completed'
  - `analysis` object
    - `game` Game
      - `id` string
      - `pgn` string
      - `white_username` string, nullable: From the PGN's White tag, in lowercase.
      - `black_username` string, nullable: From the PGN's Black tag, in lowercase.
      - `white_rating` integer, nullable: From the PGN's WhiteElo tag. 0 or null when the PGN has none.
      - `black_rating` integer, nullable: From the PGN's BlackElo tag. 0 or null when the PGN has none.
      - `white_result` string, nullable: win, loss or draw.
      - `black_result` string, nullable: win, loss or draw.
      - `time_class` string, nullable: From the PGN's TimeControl tag: ultraBullet, bullet, blitz, rapid, classical, or correspondence when there is no clock.
      - `time_control` string, nullable: Seconds plus increment, such as 300+0, or unlimited.
      - `source` string: public-api for games submitted through this API.
  - `metadata` object
    - `analysisCompletedAt` string, date-time
    - `version` string

## Other responses

- `400`: Invalid game ID format (must be a UUID)
- `403`: Game exists but was not submitted via the public API
- `404`: Game not found or analysis not yet available
- `429`: Rate limit exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/chessigma/apis/chessigma-public-api.md) - [All operations](https://skmtc.dev/chessigma/apis/chessigma-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/chessigma/apis/chessigma-public-api/revisions/14ea5ae24479?raw)
