Search games
Search games using various filters. This endpoint provides a web interface and API access to search through all Lichess games.Game search requires authentication. Anonymous users cannot search games.
Query Parameters
Page number for pagination
Search Form Parameters
These parameters are typically submitted via POST in the request body:Players
Player A username (white or black)
Player B username (white or black)
White player username
Black player username
Filter by winner. Possible values:
white, black, none (draws)Rating
Minimum average rating (400-2900)
Maximum average rating (400-2900)
Game Type
Game type(s). Multiple values can be selected.Possible values:
ultraBullet- UltraBulletbullet- Bulletblitz- Blitzrapid- Rapidclassical- Classicalcorrespondence- Correspondencechess960- Chess960crazyhouse- Crazyhouseantichess- Antichessatomic- Atomichorde- HordekingOfTheHill- King of the HillracingKings- Racing KingsthreeCheck- Three-check
Game Status
Filter by game result/statusPossible values:
mate- Checkmateresign- Resignationstalemate- Stalematetimeout- Time outdraw- Drawoutoftime- Out of timecheat- Cheat detected
Date Range
Minimum date in ISO 8601 format (e.g.,
2024-01-01)Maximum date in ISO 8601 format (e.g.,
2024-12-31)Time Control
Minimum number of turns (half-moves)
Maximum number of turns (half-moves)
Minimum game duration in seconds
Maximum game duration in seconds
Clock initial time in seconds
Clock increment in seconds
Additional Filters
Filter by rated status. Possible values:
true, falseFilter games with computer analysis. Possible values:
true, falseFilter by opening ECO code or name (e.g.,
C50, Italian Game)Filter by game sourcePossible values:
lobby- Lobbyfriend- Friendai- Computerapi- APItournament- Tournamentpool- Poolswiss- Swisssimul- Simultaneous exhibition
Response
For web requests, returns an HTML page with search results. For API requests (with appropriate Accept headers), returns a JSON paginator object:Search limitations
Example searches
Find games between two players
Find high-rated blitz games
Find games with specific opening
Find games from a date range
Notes
- Game search uses Elasticsearch for indexing and searching
- Results are sorted by relevance by default
- The search index may have a slight delay (typically under 1 minute) for newly finished games
- Some filters require games to be analyzed (e.g., accuracy, complex position queries)
- Tournament and Swiss games can be filtered by tournament/swiss ID in the game metadata

