Skip to main content

MatchDto

Returned by GET_getMatch and GET_getConsoleMatch.
FieldTypeDescription
matchInfoMatchInfoDtoGeneral match information
playerslist[PlayerDto]All players in the match
coacheslist[CoachDto]Coaches (used in tournament mode)
teamslist[TeamDto]Team results
roundResultslist[RoundResultDto]Per-round data

MatchInfoDto

FieldTypeDescription
matchIdstrUnique match identifier
mapIdstrMap identifier
gameLengthMillisintMatch duration in milliseconds
gameStartMillisintUnix timestamp when the match started
provisioningFlowIdstrProvisioning flow identifier
isCompletedboolWhether the match has completed
customGameNamestrCustom game name (empty if not custom)
queueIdstrQueue type identifier
gameModestrGame mode
isRankedboolWhether the match was ranked
seasonIdstrSeason identifier

MatchlistDto

Returned by GET_getMatchlist and GET_getConsoleMatchlist.
FieldTypeDescription
puuidstrThe player’s PUUID
historylist[MatchlistEntryDto]Match history entries

MatchlistEntryDto

FieldTypeDescription
matchIdstrUnique match identifier
gameStartTimeMillisintUnix timestamp when the match started
queueIdstrQueue type (e.g., "competitive", "unrated")

RecentMatchesDto

Returned by GET_getRecent and GET_getConsoleRecent.
FieldTypeDescription
currentTimeintCurrent Unix timestamp in milliseconds
matchIdslist[str]Recently completed match IDs

PlayerDto

FieldTypeDescription
puuidstrThe player’s PUUID
gameNamestrIn-game name
tagLinestrTag line
teamIdstrTeam ("Red" or "Blue")
partyIdstrParty identifier
characterIdstrAgent identifier
statsPlayerStatsDto | NoneOverall match statistics
competitiveTierintCompetitive rank tier
isObserverboolWhether the player was an observer
playerCardstrPlayer card identifier
playerTitlestrPlayer title identifier
accountLevelintAccount level

PlayerStatsDto

FieldTypeDescription
scoreintTotal score
roundsPlayedintRounds participated in
killsintTotal kills
deathsintTotal deaths
assistsintTotal assists
playtimeMillisintTotal playtime in milliseconds
abilityCastsAbilityCastsDto | NoneAbility usage counts

TeamDto

FieldTypeDescription
teamIdstrTeam identifier ("Red" or "Blue")
wonboolWhether the team won
roundsPlayedintRounds played
roundsWonintRounds won
numPointsintTotal points scored

CoachDto

FieldTypeDescription
puuidstrThe coach’s PUUID
teamIdstrThe team the coach belongs to

RoundResultDto

FieldTypeDescription
roundNumintRound number (0-indexed)
roundResultstrResult type (e.g., "Eliminated", "Detonate")
roundCeremonystrCeremony type
winningTeamstrWinning team ("Red" or "Blue")
bombPlanterstr | NonePUUID of spike planter
bombDefuserstr | NonePUUID of spike defuser
plantRoundTimeint | NoneTime of plant in milliseconds
plantSitestr | NoneSpike site ("A", "B", or "C")
defuseRoundTimeint | NoneTime of defuse in milliseconds
playerStatslist[PlayerRoundStatsDto]Per-player round statistics
roundResultCodestrRound result code

PlayerRoundStatsDto

FieldTypeDescription
puuidstrThe player’s PUUID
killslist[KillDto]Kills by this player in the round
damagelist[DamageDto]Damage dealt to each opponent
scoreintScore earned in the round
economyEconomyDtoEconomic information
abilityAbilityDtoAbility usage

AbilityCastsDto

FieldTypeDescription
grenadeCastsintC ability casts
ability1CastsintQ ability casts
ability2CastsintE ability casts
ultimateCastsintX (ultimate) casts

AbilityDto

FieldTypeDescription
grenadeEffectsstrC ability effects
ability1EffectsstrQ ability effects
ability2EffectsstrE ability effects
ultimateEffectsstrX ability effects

EconomyDto

FieldTypeDescription
loadoutValueintTotal loadout value
weaponstrWeapon identifier
armorstrArmor identifier
remainingintCredits remaining after purchase
spentintCredits spent in the round

KillDto

FieldTypeDescription
timeSinceGameStartMillisintTime since match start
timeSinceRoundStartMillisintTime since round start
killerstrKiller’s PUUID
victimstrVictim’s PUUID
victimLocationLocationDtoVictim’s map coordinates
assistantslist[str] | NonePUUIDs of assistants
playerLocationslist[PlayerLocationsDto]All player positions at time of kill
finishingDamageFinishingDamageDtoFinal damage details

DamageDto

FieldTypeDescription
receiverstrReceiver’s PUUID
damageintTotal damage dealt
legshotsintLeg shot count
bodyshotsintBody shot count
headshotsintHeadshot count

FinishingDamageDto

FieldTypeDescription
damageTypestrType of damage ("Weapon", "Ability", "Bomb")
damageItemstrItem or ability that dealt damage
isSecondaryFireModeboolWhether secondary fire was used

LocationDto

FieldTypeDescription
xintX coordinate
yintY coordinate

PlayerLocationsDto

FieldTypeDescription
puuidstrThe player’s PUUID
viewRadiansfloatDirection the player is facing (radians)
locationLocationDtoMap coordinates

Example

import valaw
import asyncio

async def main():
    client = valaw.Client("YOUR_TOKEN", "americas")
    try:
        match = await client.GET_getMatch("match-id", "na")

        print(f"Map: {match.matchInfo.mapId}")
        print(f"Duration: {match.matchInfo.gameLengthMillis / 1000 / 60:.1f} min")

        for player in match.players:
            if player.stats:
                kda = f"{player.stats.kills}/{player.stats.deaths}/{player.stats.assists}"
                print(f"  {player.gameName}#{player.tagLine}: {kda}")
    finally:
        await client.close()

asyncio.run(main())