AsyncAPI channel · Lichess
· Lichess Streaming API
/api/board/game/stream/{gameId}
Stream the state of a game being played with the Board API. The first line is
always of type `gameFull`. The server closes the stream when the game ends.
Full game data. All values are immutable, except for the embedded `state` field.
Always sent as the first line of a Board or Bot game stream.
Content-Type: application/x-ndjson
gameState
Current state of the game. Sent when a move is played, a draw is offered or
agreed, a takeback is proposed, or the game ends. Immutable values not included.
Content-Type: application/x-ndjson
chatLine
Chat message sent by a user (or the bot itself) in the player or spectator room.
Content-Type: application/x-ndjson
opponentGone
Whether the opponent has left the game, and how long before you can claim a
win or draw.
Content-Type: application/x-ndjson
About AsyncAPI
The AsyncAPI specification describes event-driven APIs the way OpenAPI describes request/response APIs. A channel is the named pipe — a webhook URL, a Kafka topic, a WebSocket route, an MQTT subject — that producers and consumers publish or subscribe to. Each channel carries one or more messages with structured payloads, and an operation declares whether a given party sends or receives on that channel.
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.