Skip to main content
GET
/
game
/
matches
/
{matchId}
/
scores
Read all map scores for a match
curl --request GET \
  --url https://teambattles.gg/api/v1/game/matches/{matchId}/scores \
  --header 'Authorization: Bearer <token>'
{
  "scores": [
    {
      "mapIndex": 0,
      "mapId": "<string>",
      "creatorTeamScore": 0,
      "opponentTeamScore": 0,
      "scoreStatus": "<string>",
      "playerStats": {},
      "submittedAt": "<string>",
      "confirmedAt": "<string>"
    }
  ],
  "seriesScore": {
    "creatorMapWins": 0,
    "opponentMapWins": 0
  },
  "timestamp": "<string>"
}

Permission Required

This is a read that accepts either scope: a key with game.lifecycle at read access or a key with game.scores at write access passes. 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

The {matchId} must resolve to a match in your bound game. An unknown match returns 404 error_match_not_found.

What’s Returned

Returns { scores, seriesScore, timestamp }. Each scores[] entry carries mapIndex, mapId, creatorTeamScore, opponentTeamScore, a scoreStatus of CONFIRMED or PENDING, optional playerStats, and the ISO submittedAt / confirmedAt timestamps. seriesScore is the aggregate { creatorMapWins, opponentMapWins } counted from the confirmed maps.

Authorizations

Authorization
string
header
required

Send your API key as: Authorization: Bearer tb_

Path Parameters

matchId
string
required

Match ID.

Response

All map scores plus the aggregate series tally.

All map scores for a match plus the aggregate series tally.

scores
object[]
required

All recorded map scores for the match.

seriesScore
object
required

Aggregate map-win tally across the series.

timestamp
string
required

Server response time (ISO 8601).