Get Match Tagged Game Actions
get_game_actionsQuery chronological volleyball play-by-play touches and DataVolley tags from a match, filtering by set, skill, player, team, or quality to inspect specific tactical events.
Instructions
Query chronologically ordered, event-by-event volleyball touches and DataVolley (.dvw) scout tags from a match with optional set, skill, player, team, and quality filters, unlike get_match_player_stats (aggregate player totals) or download_match_dvw (raw .dvw file export to disk).
When to Use
Inspect granular play-by-play contacts, video timestamps, start/end court zones (
1–9), attack combinations, and DataVolley codes (e.g.*17AT#,a07SM=).Filter specific tactical subsets, such as all reception errors (
action_type='receive', quality='error'), clutch kills in Set 5 (set_number=5, action_type='attack', quality='kill'), or an individual hitter's shot tendencies (player='17', action_type='attack').
When NOT to Use
Do NOT page through all match touches just to compute a player's kill or dig totals; call
get_match_player_statsin a single request instead.Do NOT use for P1–P6 sideout summary tables; call
get_rotation_breakdowninstead.Do NOT use when the user wants a
.dvwfile saved to disk for external software; calldownload_match_dvwinstead.
Behavioral Guarantees & Caching
Execution Contract: Strictly read-only, idempotent query.
Caching Policy: Raw match touch timelines are cached on local disk for 7 days (
604800s); all filtering and pagination execute locally in memory after the initial fetch.Rate Limiting: Client token bucket (
2 req/s, burst4) with automatic retry.
Parameter & Workflow Semantics
All provided filter parameters (
set_number,action_type,player,team,quality) combine via logicalANDbeforeoffsetandlimitpagination are applied.The response header always reports
total_matchingalongsidereturned_countso you know whether to advanceoffset(offset + limit) for additional pages.
Returns & Error States
'markdown': Summary counts by action type followed by a table with columns#,Set,Score,Time,Team,Player,Action,Quality,DVW Code, andTactical Details.'compact': JSON object{"match": str, "total_matching": int, "returned_count": int, "by_type": dict, "events": [{"idx": int, "set": int, "score": str, "time": float, "team": str, "no": str, "player": str, "type": str, "quality": str, "dvw": str, "zone": str, "fbso": bool}]}.Returns validation error if
match_idis empty, or⚠️ Authentication Erroron HTTP401/403.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| team | No | Optional team filter: 'a' (home/primary team), 'b' (away/opponent team), or team name substring. | |
| limit | No | Maximum number of chronological touch events to return per page (1 to 200). | |
| offset | No | Zero-based pagination offset for stepping through chronological match touches. | |
| player | No | Optional athlete filter matching jersey number (e.g. '17' or '#7') or case-insensitive player name substring. | |
| quality | No | Optional outcome/evaluation filter mapping to DataVolley evaluation codes: 'kill' (# on attack/block), 'error' (=), 'ace' (# on serve), 'perfect_pass' (# on receive), 'assist', or 'in_play'. | |
| match_id | Yes | Unique Volleymetrics match identifier obtained from list_volleyball_matches. | |
| set_number | No | Optional set number (1 to 5) to restrict play-by-play touches to a single set. When None, searches across all sets. | |
| action_type | No | Optional volleyball skill filter mapping to DataVolley skill codes: 'serve' (S), 'receive' (R), 'set' (E), 'attack' (A), 'block' (B), 'dig' (D), or 'free_ball' (F). | |
| force_refresh | No | When True, bypasses the 7-day local disk cache and fetches raw match events directly from Volleymetrics. | |
| output_format | No | Response representation format: 'markdown' renders a chronological play-by-play table; 'compact' returns a token-efficient JSON object with total count and filtered breakdown. | markdown |