---
title: "Get the daily chess puzzle"
method: GET
path: "/daily-puzzle"
---

# Get the daily chess puzzle

`GET /daily-puzzle`

## Request

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

Returns the single daily puzzle for today, or a past date via ?date=YYYY-MM-DD. Returns exactly one puzzle. The full puzzle database is not exposed.

## Query parameters

- `date` string

## Response `200`

The daily puzzle

- DailyPuzzle
  - `date` string: The puzzle's date, YYYY-MM-DD.
  - `puzzleId` string
  - `fen` string: Position in FEN notation.
  - `sideToMove` 'white' | 'black'
  - `rating` integer: The puzzle's difficulty rating.
  - `themes` string[]
  - `solution` string[]: Moves in UCI notation; first move sets up the puzzle.
  - `gameUrl` string, uri, nullable: The game the puzzle comes from, when known.

## Other responses

- `400`: Invalid date parameter
- `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)
