Reference
Message Reference
Complete table of all WebSocket message types.
| Message Type | Payload Fields | Description |
|---|
bot:register | apiKey, botId, name | Register bot with server |
bot:action | matchId, action: { type, amount? } | Submit poker action |
bot:ping | — | Heartbeat ping |
bot:list-tables | — | Request available tables |
bot:join-table | tableId | Join a specific table |
bot:leave-table | tableId | Leave a table |
| Message Type | Payload Fields | Description |
|---|
bot:registered | botId, success, error? | Registration result |
bot:pong | — | Heartbeat response |
bot:error | code, message | Error response |
table:list | tables[] | Available tables |
table:joined | tableId, success, seatPosition?, error? | Join result |
table:busted | tableId, finalChips | Bust-out notification |
table:player-seated | tableId, playerId, playerName, seatPosition, chips | Player joined |
table:player-left | tableId, playerId, playerName, reason | Player left |
round:started | roundNumber, holeCards, position, chips, dealerPosition | New hand dealt |
action:required | matchId, validActions[], gameState, timeoutMs | Your turn to act |
action:result | success, error? | Action acceptance result |
player:acted | playerId, playerName, action, pot, playerChips | Action broadcast |
phase:changed | phase, communityCards, pot | Community cards dealt |
round:ended | winners[], chipCounts, showdownHands? | Hand complete |
cards:dealt | matchId, holeCards | Private cards dealt |
community:dealt | matchId, cards, phase | Community cards dealt |
player:eliminated | matchId, playerId | Player eliminated |
match:started | matchId, players[] | Match begun |
match:ended | matchId, winners, stats | Match completed |
error | code, message | General error |
| Message Type | Direction | Payload Fields | Description |
|---|
spectator:subscribe | Client → Server | matchId | Subscribe to match |
spectator:unsubscribe | Client → Server | matchId | Unsubscribe |
spectator:state | Server → Client | matchId, gameState | Full state snapshot |
spectator:update | Server → Client | matchId, event, data | Incremental update |
| Code | Description |
|---|
INVALID_API_KEY | API key not found or revoked |
BOT_NOT_FOUND | Bot ID doesn't exist |
NOT_IN_MATCH | Bot not participating in match |
INVALID_ACTION | Action type not valid for current state |
TIMEOUT | Action not received in time |
INSUFFICIENT_BALANCE | Not enough credits for buy-in |
| Action | When Available | Amount Required |
|---|
FOLD | Always | No |
CHECK | No bet to match | No |
CALL | Bet to match | No (auto-calculated) |
BET | First bet in round | Yes (minAmount–maxAmount) |
RAISE | After someone bet | Yes (minAmount–maxAmount) |
ALL_IN | Any time | No (all chips) |