Lichess Bot API
Play on Lichess as a bot. Allows engine play.Read the [blog post announcement of lichess bots](https://lichess.org/blog/WvDNticAAMu_mHKP/welcome-lichess-bots).Only works with [Bot accounts](#tag/bot/POST/api/bot/account/upgrade).### Features- [Stream incoming chess moves](#tag/bot/GET/api/bot/game/stream/{gameId})- [Play chess moves](#tag/bot/POST/api/bot/game/{gameId}/move/{move})- [Read](#tag/bot/GET/api/bot/game/stream/{gameId}) and [write](#tag/bot/POST/api/bot/game/{gameId}/chat) in the player and spectator chats- [Receive](#tag/bot/GET/api/stream/event), [create](#tag/challenges/POST/api/challenge/{username}) and [accept](#tag/challenges/POST/api/challenge/{challengeId}/accept) (or [decline](#tag/challenges/POST/api/challenge/{challengeId}/decline)) challenges- [Abort](#tag/bot/POST/api/bot/game/{gameId}/abort) and [resign](#tag/bot/POST/api/bot/game/{gameId}/resign) games- Engine assistance is [allowed](https://lichess.org/page/fair-play)### Restrictions- Bots can only play challenge games: pools and tournaments are off-limits- Bots cannot play UltraBullet (¼+0) because it requires making too many requests. But 0+1 and ½+0 are allowed.- Bots must follow [Lichess TOS](https://lichess.org/terms-of-service) specifically Sandbagging, Constant Aborting, Boosting, etc- Bot devs are advised to make their Bots play casual only when testing their Bots logic and to avoid breaking Lichess TOS.### Integrations- [Python3 lichess-bot](https://github.com/lichess-bot-devs/lichess-bot) (official)- [Python3 lichess UCI bot](https://github.com/Torom/BotLi)- [JavaScript bot-o-tron](https://github.com/tailuge/bot-o-tron)- [Golang lichess-bot](https://github.com/dolegi/lichess-bot)- [Electronic Chessboard](http://www.oliviermercier.com/res/projects/chessboard/)- Yours? Please make [an issue or pull request](https://github.com/lichess-org/api).### Links- [Announcement](https://lichess.org/blog/WvDNticAAMu_mHKP/welcome-lichess-bots)- Join the [Lichess Bots team](https://lichess.org/team/lichess-bots) with your bot account- [Get help in the discord channel](https://discord.gg/quwueFd)- Watch [Lichess Bot TV](https://lichess.org/tv/bot)
Lichess Bot API is one of 23 APIs that Lichess publishes on the APIs.io network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification.
This API exposes 2 JSON Schema definitions.
Tagged areas include Bot. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an AsyncAPI specification, a JSON-LD context, and 2 JSON Schemas.
This API exposes 13 operations across 12 paths, and defines 41 schemas. It is described by OpenAPI 3.1.0, at version 2.0.144.
Requests are made against 4 base URLs: https://lichess.org, https://lichess.dev, http://localhost:{port}, http://l.org.
Metadata
The identity and technical contract details declared by the specification.
Authentication & Security 1
Lichess Bot API declares
1 security scheme
for authenticating requests.
It supports OAuth 2.0 (OAuth2) using the authorizationCode flow, exposing 23 scopes.
OAuth2— Read [the introduction for how to make authenticated requests](description/authentication).
Paths & Operations 13
Across 12 paths, the API surfaces 13 operations — 4 GET, 9 POST. Each is listed below with its method, path, parameters, and response codes.
Play on Lichess as a bot. Allows engine play. Read the [blog post announcement of lichess bots](https://lichess.org/blog/WvDNticAAMumHKP/welcome-lichess-bots). Only works with [Bo…
Schemas 41
The contract defines 41 schemas that model the data the API accepts and returns. The most detailed are GameEventInfo (21 properties), Perfs (18 properties), ChallengeJson (15 properties), GameFullEvent (14 properties). Each schema is shown below with its type and property counts.
Specification
The full machine-readable OpenAPI contract behind this narrative.
Source
More from Lichess 12
Other APIs Lichess publishes across the network.
This is an independent, third-party profile of Lichess Bot API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.
The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.
Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.
info@apievangelist.com
·
Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and
you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.