Webhooks — chess Chess-specific webhook events fired during live sessions, in addition to the standard events .
Events Event When it fires chess.checkA king is placed in check chess.promotionA pawn reaches the back rank and is promoted chess.castleA castling move is executed chess.afk_warningActive player has been idle for 60 s — 30 s left before forfeit chess.afk_timeoutActive player did not move within 90 s and forfeited
chess.checkField Type Description attackingPlayerIdstring Player ID who delivered the check movestring UCI move that caused the check, e.g. "f3g5+"
{ "event": "chess.check", "data": { "attackingPlayerId": "user_123", "move": "f3g5+" } }Copy chess.promotionField Type Description playerIdstring "q" | "r" | "b" | "n" fromstring Origin square, e.g. "e7" tostring Destination square, e.g. "e8" promotedTostring "q" (queen) | "r" (rook) | "b" (bishop) | "n" (knight)
{ "event": "chess.promotion", "data": { "playerId": "user_123", "from": "e7", "to": "e8", "promotedTo": "q" } }Copy chess.castleField Type Description playerIdstring Player who castled sidestring "kingside" | "queenside"
{ "event": "chess.castle", "data": { "playerId": "user_123", "side": "kingside" } }Copy chess.afk_warningFired 60 seconds after the last move when the active player has not acted. The player has 30 seconds remaining before automatic forfeit. Only fires when afkTimeoutEnabled is true.
Field Type Description playerIdstring Player ID who is AFK secondsRemainingnumber Seconds until automatic forfeit (always 30)
{ "event": "chess.afk_warning", "data": { "playerId": "user_123", "secondsRemaining": 30 } }Copy chess.afk_timeoutFired when the 90-second AFK limit is reached. The game ends immediately — a game.ended event follows with reason: "afk_timeout".
Field Type Description forfeitedPlayerIdstring Player ID who was forfeited winnerIdstring Player ID who wins by default
{ "event": "chess.afk_timeout", "data": { "forfeitedPlayerId": "user_123", "winnerId": "user_456" } }Copy Beta Gamer GaaS API — questions?
support@beta-gamer.com