Submit turn moves
POST
/bot/game/{id}/move
const url = 'https://play-api.jc.id.lv/bot/game/example/move';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"moves":["example"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://play-api.jc.id.lv/bot/game/example/move \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "moves": [ "example" ] }'Submit the turn’s micro-moves in UCI, one per rolled die. The verdict is synchronous.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”id
required
string
Game id.
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
moves
required
One entry per rolled die; a root-to-leaf path of the legal-move tree.
Array<string>
Examplegenerated
{ "moves": [ "example" ]}Responses
Section titled “Responses”The turn was applied.
Media typeapplication/json
object
applied
required
boolean
version
The resulting TurnPlayed version
integer | null
reason
Rejection reason when not applied.
string | null
Examplegenerated
{ "applied": true, "version": 1, "reason": "example"}No verdict within a few seconds — treat as fire-and-forget and watch the stream.
Refused (not your turn, illegal turn, game is over).
Media typeapplication/json
object
applied
required
boolean
version
The resulting TurnPlayed version
integer | null
reason
Rejection reason when not applied.
string | null
Examplegenerated
{ "applied": true, "version": 1, "reason": "example"}