Public APIs
Lichess favicon

Lichess

Games & Comics

Access to all data of users, games, puzzles and etc on Lichess.

Lichess's website screenshot

About Lichess

Lichess is a free, open-source chess server that provides an API for programmatic access to its platform. The API is built on OpenAPI 3.1.0 and covers account management (reading and writing profile information and preferences), authentication, and other server operations, with some endpoints supporting streamed responses in newline-delimited JSON format.

The API supports two authentication methods: personal access tokens for direct use, and an OAuth2 authorization code flow with PKCE for applications that let users log in with their Lichess account. Access tokens obtained through OAuth2 are long-lived, expected to last about one year, and refresh tokens are not supported. Requests are rate-limited, with a 429 response indicating a limit has been exceeded.

Client libraries are available for Python (including async and MicroPython variants), Java, JavaScript/TypeScript, Rust, and .NET/C#, along with example applications demonstrating OAuth2 login and gameplay. The API is intended for developers building applications, bots, or integrations on top of Lichess, such as chess bots, board interfaces, and third-party clients. Bulk downloads of rated games, puzzles, and evaluated positions are also referenced as available resources.

Key features

  • Free, open-source chess server with a public REST API
  • OAuth2 authorization code flow with PKCE for user login
  • Personal access tokens for quick API access
  • Streaming endpoints via newline-delimited JSON (ND-JSON)
  • Downloadable datasets of rated games, puzzles, and evaluated positions
  • Official client libraries for Python, Java, JavaScript/TypeScript, Rust, and .NET

Frequently asked questions

Is the Lichess API free to use?

Yes, Lichess is a free/libre, open-source chess server powered by volunteers and donations, and its API is free to use.

What authentication methods does the API support?

It supports personal access tokens for quick access and OAuth2 authorization code flow with PKCE for letting users log in with their Lichess account.

Is there a rate limit on API requests?

Yes, all requests are rate limited, and exceeding a limit returns an HTTP 429 status, after which you should wait before retrying.

What programming languages have client libraries?

Official or community clients are listed for Python, MicroPython, Java, JavaScript/TypeScript, Rust, and .NET, among others.

Who is this API for?

It is for developers building chess-related tools, bots, or applications that need to read account data, play games, or access Lichess game and puzzle datasets.

Advertise here

Featured products

  • SerpApi - Search API favicon
  • Screenshot Scout favicon
  • TalorData favicon
  • CoreClaw favicon

Show your product to thousands of developers

· 100k monthly pageviews
· 7k newsletter subscribers

Advertise your product