VlrDevApi

series.info()

Get series header (teams, score, picks/bans, etc.)

Signature

import vlrdevapi as vlr

result = vlr.series.info(
    match_id: int,
    timeout: float = 5.0
) -> Info | None

Parameters

Prop

Type

Return Value

Type: Info | None

Returns series header information or None if not found.

Prop

Type

TeamInfo fields:

Prop

Type

MapAction fields:

Prop

Type

Examples

Get Series Header

Get series header
import vlrdevapi as vlr

# Get series information
series = vlr.series.info(match_id=511536)

if series:
    print(f"{series.event} - {series.event_phase}")
    print(f"{series.teams[0].name} vs {series.teams[1].name}")
    print(f"Score: {series.score[0]}-{series.score[1]}")
    print(f"Best of: {series.best_of}")
    print(f"Status: {series.status_note}")
    if series.patch:
        print(f"Patch: {series.patch}")
else:
    print("Series not found")

View Picks and Bans

View picks and bans
import vlrdevapi as vlr

series = vlr.series.info(match_id=511536)

if series:
    print(f"=== {series.teams[0].name} vs {series.teams[1].name} ===")
    
    # Show picks
    if series.picks:
        print("\nPicks:")
        for pick in series.picks:
            print(f"  {pick.team} picked {pick.map}")
    
    # Show bans
    if series.bans:
        print("\nBans:")
        for ban in series.bans:
            print(f"  {ban.team} banned {ban.map}")
    
    # Show remaining map
    if series.remaining:
        print(f"\nRemaining: {series.remaining}")

Analyze Map Actions

Analyze map actions
import vlrdevapi as vlr

series = vlr.series.info(match_id=511536)

if series:
    print("Map Actions (in order):")
    for i, action in enumerate(series.map_actions, 1):
        print(f"{i}. {action.team} {action.action}ed {action.map}")
    
    # Count picks/bans per team
    team1_name = series.teams[0].name
    team2_name = series.teams[1].name
    
    team1_picks = sum(1 for p in series.picks if p.team == team1_name)
    team2_picks = sum(1 for p in series.picks if p.team == team2_name)
    
    print(f"\n{team1_name} picks: {team1_picks}")
    print(f"{team2_name} picks: {team2_picks}")

Error Handling

  • Network failures: Returns None
  • Invalid match ID: Returns None
  • Match not found: Returns None

The function never raises exceptions, making it safe to use without try-catch blocks.

Tips

  • All list fields (map_actions, picks, bans) are always lists, never None
  • The teams field is always a tuple of exactly 2 TeamInfo objects
  • Use map_actions for chronological order, or picks/bans for filtered lists
  • Team IDs may be None for some matches
  • Combine with series.matches() to get detailed map statistics

Source

Data scraped from: https://www.vlr.gg/{match_id}