Lichess
APIFree REST API for Lichess user, game, puzzle, and tournament data
Overview
The Lichess API provides RESTful access to platform data including user profiles, game histories (with PGN), puzzles, tournaments, and opening explorer stats. Key endpoints: /user/{username} (user details), /user/{username}/games (game list), /puzzle/random (random puzzle), /tournament (active tournaments). Responses are JSON-formatted. Use cases: Build chess analytics tools, game review apps, puzzle training platforms, or integrate Lichess data into educational resources. Public data requires no auth; private data uses OAuth2.
Example Integration (JavaScript)
fetch('https://lichess.org/api')
.then(res => res.json())
.then(data => console.log(data))
.catch(err => console.error(err)); Key Features
- RESTful API
- JSON Responses
- No Auth for Public Data
- OAuth2 for Private Access
- PGN Game Support
- Puzzle & Tournament Endpoints
Frequently Asked Questions
? Is Lichess API free to use?
Yes, the Lichess API is entirely free for personal and non-commercial purposes, with no subscription fees.
? Does it require an API Key?
Public data endpoints (e.g., user profiles, public games) do not need an API key. Private data access (like private games) requires OAuth2 authentication.
? What is the response format?
All API responses are in JSON format. Game endpoints also include optional PGN (Portable Game Notation) for detailed game records.
Top Alternatives
People Also Ask about Lichess
Tool Info
Pros
- ⊕ Free & Open Access
- ⊕ Comprehensive Chess Data
- ⊕ Well-Documented
- ⊕ JSON + PGN Formats
- ⊕ Community-Driven Updates
Cons
- ⊖ Rate Limits Apply
- ⊖ No Official SLA
- ⊖ Commercial Use Restrictions
- ⊖ OAuth Required for Private Data