How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Lichess Tournaments (Arena) API

Access Arena tournaments played on Lichess.[Official Arena tournaments](https://lichess.org/tournament) are maintained by Lichess,but you can [create your own Arena tournaments](https://lichess.org/tournament/new) as well.

Lichess Tournaments (Arena) 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 Tournaments (Arena). 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 14 operations across 12 paths, and defines 34 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.

14 operations 12 paths 34 schemas 8 GET6 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.0
API Version
2.0.144
Base URL
https://lichess.org
Authentication
OAuth 2.0
Resource Areas
1

Authentication & Security 1

Lichess Tournaments (Arena) 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 14

Across 12 paths, the API surfaces 14 operations — 8 GET, 6 POST. Each is listed below with its method, path, parameters, and response codes.

Tournaments (Arena) 14

Access Arena tournaments played on Lichess. [Official Arena tournaments](https://lichess.org/tournament) are maintained by Lichess, but you can [create your own Arena tournaments]…

GET
/api/tournament
Get current tournaments
apiTournament → 200
POST
/api/tournament
Create a new Arena tournament
apiTournamentPost body → 200400
GET
/api/tournament/{id}
Get info about an Arena tournament
tournament 2 params → 200
POST
/api/tournament/{id}
Update an Arena tournament
apiTournamentUpdate 1 param body → 200400
POST
/api/tournament/{id}/join
Join an Arena tournament
apiTournamentJoin 1 param body → 200400
POST
/api/tournament/{id}/withdraw
Pause or leave an Arena tournament
apiTournamentWithdraw 1 param → 200400
POST
/api/tournament/{id}/terminate
Terminate an Arena tournament
apiTournamentTerminate 1 param → 200400
POST
/api/tournament/team-battle/{id}
Update a team battle
apiTournamentTeamBattlePost 1 param body → 200400
GET
/api/tournament/{id}/games
Export games of an Arena tournament
gamesByTournament 11 params → 200
GET
/api/tournament/{id}/results
Get results of an Arena tournament
resultsByTournament 3 params → 200
GET
/api/tournament/{id}/teams
Get team standing of a team battle
teamsByTournament 1 param → 200
GET
/api/user/{username}/tournament/created
Get tournaments created by a user
apiUserNameTournamentCreated 3 params → 200
GET
/api/user/{username}/tournament/played
Get tournaments played by a user
apiUserNameTournamentPlayed 3 params → 200
GET
/api/team/{teamId}/arena
Get team Arena tournaments
apiTeamArena 5 params → 200

Schemas 34

The contract defines 34 schemas that model the data the API accepts and returns. The most detailed are ArenaTournamentFull (37 properties), ArenaTournament (27 properties), GameJson (22 properties), GamePlayerUser (8 properties). Each schema is shown below with its type and property counts.

GameJson
object
22 properties 9 required
PatronColor
integer
Players can choose a color for their Patron wings. See [here for the color mappings](https://github.com/lichess-org/lila/blob/master/ui/lib/css/abstract/patron…
Verdicts
object
2 properties 2 required
FromPositionFEN
string
Custom initial position (in X-FEN). Variant must be standard, fromPosition, or chess960 (if a valid 960 starting position), and the game cannot be rated.
Variant
object
3 properties 2 required
ArenaPerf
object
4 properties 3 required
ArenaStatus
integer
10: created, 20: started, 30: finished
Patron
boolean
Use patronColor value instead to determine if player is a patron.
ArenaTournamentPlayer
object
4 properties 3 required
ArenaStatusName
string
The current state of the arena tournament
VariantKey
string
GamePgn
string
GameMoveAnalysis
object
5 properties
GameColor
string
ArenaSheet
object
2 properties 1 required
Ok
object
1 property 1 required
PerfType
string
GameOpening
object
3 properties 3 required
GamePlayers
object
2 properties 2 required
Verdict
object
2 properties 2 required
ArenaTournamentFull
object
37 properties 4 required
Clock
object
2 properties 2 required
Flair
string
See [available flair list and images](https://github.com/lichess-org/lila/tree/master/public/flair)
ArenaTournamentPlayed
object
2 properties 2 required
Error
object
1 property 1 required
GameStatusName
string
Speed
string
ArenaTournaments
object
3 properties 3 required
ArenaPosition
LightUser
object
6 properties 2 required
GamePlayerUser
object
8 properties 2 required
Title
string
only appears if the user is a titled player or a bot user
ArenaTournament
object
27 properties 13 required
ArenaRatingObj
object
2 properties 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

lichess-tournaments-arena-api-openapi.yml Raw ↑

Other APIs Lichess publishes across the network.

Lichess Account API
Lichess Analysis API
Lichess Board API
Lichess Bot API
Lichess Broadcasts API
Lichess Bulk pairings API
Lichess Challenges API
Lichess External engine API
Lichess FIDE API
Lichess Games API
Lichess Messaging API
Lichess OAuth API
Where this information came from

This is an independent, third-party profile of Lichess Tournaments (Arena) 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.