Game: Matches
Update A Match's Lifecycle Status
Transition one of your game’s matches between its allowed lifecycle states.
PATCH
Permission Required
This endpoint requires thegame.lifecycle permission with read-write access. Your API key must be a game-developer key bound to a game. The binding asserts the match belongs to your bound game before the handler runs: a key bound to a different game, or a non-developer key, receives a 403 error_game_scope_mismatch.
Access / Membership Rules
Only these transitions are accepted:READY -> IN_PROGRESS, IN_PROGRESS -> CANCELLED, and ACCEPTED -> CANCELLED. Any other target (or a COMPLETED target) returns 409 error_match_not_in_valid_state. Matches do not complete here - they complete automatically once enough map scores are confirmed, so submit scores via the scores endpoints instead. Use the dedicated forfeit endpoint for forfeits. An unknown match returns 404 error_match_not_found.
What’s Returned
Returns{ "success": true, matchId, previousStatus, newStatus, timestamp }.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
status | string | Yes | Target status. Must be a valid transition target: IN_PROGRESS or CANCELLED. |
Authorizations
Send your API key as: Authorization: Bearer tb_
Path Parameters
Match ID.
Body
application/json
Request body for updating a match's lifecycle status.
Target status. Allowed transitions: READY -> IN_PROGRESS, IN_PROGRESS -> COMPLETED|CANCELLED, ACCEPTED -> CANCELLED. COMPLETED is not accepted directly (matches complete automatically once scores are confirmed).
Response
The match status was transitioned successfully.