Lichess API
APIFree REST API for Lichess user, game, puzzle, and tournament data
Overview
The Lichess API offers RESTful endpoints to access comprehensive platform data: user profiles, game histories, chess puzzles, tournaments, leaderboards, and real-time game streams. Responses are JSON-formatted. Key endpoints include /api/user/{username} (user details), /api/games/user/{username} (game records), /api/puzzle/daily (daily puzzle), and /api/tournament/{id} (tournament info). Use cases: build chess analytics tools, game replay apps, puzzle training features, or third-party chess platforms. Supports authenticated (OAuth2/personal key) access for private data and unauthenticated access for public data.
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 architecture
- JSON response format
- Authenticated/unauthenticated access
- Real-time game streaming
- Comprehensive data coverage (users, games, puzzles)
- Open-source documentation
Frequently Asked Questions
? Is the Lichess API free to use?
Yes, it’s completely free for all personal and non-commercial purposes with no hidden costs.
? Does it require an API key?
Public data endpoints don’t need a key, but private data or authenticated actions require an OAuth2 token or personal API key.
? What is the response format?
All endpoints return data in JSON format, ideal for easy integration into apps.
Top Alternatives
People Also Ask about Lichess API
Tool Info
Pros
- ⊕ 100% free for personal/non-commercial use
- ⊕ Rich data set for chess-related apps
- ⊕ Community-supported and well-maintained
- ⊕ No commercial license fees
Cons
- ⊖ Rate limits apply (varies by endpoint)
- ⊖ Private data requires authentication
- ⊖ No official SLA
- ⊖ Bulk exports may need special permission