Documentation ¶
Overview ¶
Package structs contains the structs AbiosGaming/sdk uses to unmarshal JSON.
Index ¶
- type AccessToken
- type BombEvent
- type BracketPosition
- type Caster
- type Champion
- type Country
- type CountryImages
- type CsMatchSummary
- type CsPlayerPerformance
- type CsPlayerStats
- type CsScoreBoardEntry
- type CsSeriesSummary
- type CsTeamCommonStats
- type CsTeamStats
- type DefaultRoster
- type DotaDmg
- type DotaDraftEvent
- type DotaFirstBloodEvent
- type DotaHeroWithWins
- type DotaItem
- type DotaMatchKill
- type DotaMatchPlayerStats
- type DotaMatchSummary
- type DotaPlayerAgainst
- type DotaPlayerDmg
- type DotaPlayerHealing
- type DotaPlayerPerformance
- type DotaPlayerStats
- type DotaRunesStat
- type DotaSeriesSummary
- type DotaStructureDest
- type DotaTeamStats
- type DotaWardsStat
- type Error
- type Forfeit
- type Game
- type GameImages
- type Hero
- type Incident
- type Kill
- type Links
- type LolDmg
- type LolEvent
- type LolItem
- type LolLaneEvent
- type LolMatchSummary
- type LolPlayer
- type LolPlayerAgainst
- type LolPlayerStats
- type LolSeriesSummary
- type LolTeamAgainst
- type LolTeamStats
- type Map
- type Match
- type MatchPerformance
- type MatchSummary
- type MatchWinrate
- type MatchWinrateOverall
- type MatchWinratePerMap
- type Moneyline
- type Organisation
- type PaginatedGames
- type PaginatedIncidents
- type PaginatedOrganisations
- type PaginatedPlayers
- type PaginatedSeries
- type PaginatedTeams
- type PaginatedTournaments
- type Platform
- type PlatformImages
- type Player
- type PlayerAgainst
- type PlayerImages
- type PlayerPlayByPlayStats
- type PlayerStats
- type Pos
- type Prizepool
- type Race
- type RaceImages
- type Role
- type RoshanEvent
- type Roster
- type RosterStats
- type Round
- type RoundPlayerStats
- type Scores
- type SearchResult
- type Seeding
- type Series
- type SeriesIncidents
- type SeriesPerformance
- type SeriesSummary
- type SinglePlayerStats
- type SocialMediaAccount
- type SportsbookOdds
- type Stage
- type Standings
- type StreakScope
- type Stream
- type StreamImages
- type Substage
- type SubstageRules
- type Team
- type TeamAgainst
- type TeamImages
- type TeamPlayByPlayStats
- type TeamStats
- type Tournament
- type TournamentImages
- type Weapon
- type WinrateMatchScope
- type WinratePerFormat
- type WinratePerMap
- type WinrateSeriesScope
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccessToken ¶
type AccessToken struct { AccessToken string `json:"access_token"` TokenType string `json:"token_type"` ExpiresIn int64 `json:"expires_in"` }
AccessToken holds information about an access token.
type BombEvent ¶ added in v3.1.0
type BombEvent struct { Type string `json:"type"` PlayerId int64 `json:"player_id"` RoundClock int64 `json:"round_clock"` Pos Pos `json:"pos"` }
BombEvent hold data about bomb event in CS:GO round
type BracketPosition ¶
type BracketPosition struct { Part string `json:"part,omitempty"` Col int64 `json:"col"` Offset int64 `json:"offset"` Seeding Seeding `json:"seeding,omitempty"` }
BracketPosition represents a Series position in a Substages bracket.
type Caster ¶
type Caster struct { Id int64 `json:"id,omitempty"` Name string `json:"name,omitempty"` Type *int64 `json:"type,omitempty"` Url string `json:"url,omitempty"` Primary bool `json:"primary,omitempty"` Stream *Stream `json:"stream,omitempty"` Country Country `json:"country,omitempty"` }
Caster represents an individual shoutcaster, casting a Series.
type Country ¶
type Country struct { Name string `json:"name,omitempty"` ShortName string `json:"short_name,omitempty"` Images CountryImages `json:"images,omitempty"` }
Country hold information about a country, nationality or language associated with a resource.
type CountryImages ¶
type CountryImages struct { Default string `json:"default,omitempty"` Thumbnail string `json:"thumbnail,omitempty"` }
CountryImages represents the different keys for images a Country can contain
type CsMatchSummary ¶
type CsMatchSummary struct { Home int64 `json:"home"` Away int64 `json:"away"` MatchLength int64 `json:"match_length"` ScoreBoard struct { Home []CsScoreBoardEntry `json:"home"` Away []CsScoreBoardEntry `json:"away"` } `json:"scoreboard"` Rounds []Round `json:"rounds"` }
CsMatchSummary is the summarization of a CS:GO match.
type CsPlayerPerformance ¶
type CsPlayerPerformance struct { Kills float64 `json:"kills"` Assists float64 `json:"assists"` Deaths float64 `json:"deaths"` DamageGiven float64 `json:"dmg_given"` DamageTaken float64 `json:"dmg_taken"` History int64 `json:"history"` Accuracy struct { General float64 `json:"general"` Headshot float64 `json:"head_shot"` } `json:"accuracy"` }
CsPlayerPerformance holds some general data about a players performance. This struct is re-used for different levels data (e.g per_map and over_all).
type CsPlayerStats ¶
type CsPlayerStats struct { Overall struct { CsPlayerPerformance Plants float64 `json:"plants"` Defuses float64 `json:"defuses"` } `json:"over_all"` PerMap []struct { Map Map `json:"map"` CtSide struct { CsPlayerPerformance Defuses float64 `json:"defuses"` } `json:"ct_side"` TSide struct { CsPlayerPerformance Plants float64 `json:"plants"` } `json:"t_side"` Overall struct { CsPlayerPerformance } `json:"over_all"` } `json:"per_map"` PerWeapon []struct { Weapon Weapon `json:"weapon"` DmgGivenRound int64 `json:"dmg_given_round"` Accuracy struct { General float64 `json:"general"` Headshot float64 `json:"head_shot"` } `json:"accuracy"` History int64 `json:"history"` } `json:"per_weapon"` }
CsPlayerByPlayStats holds play by play stats for cs players
type CsScoreBoardEntry ¶
type CsScoreBoardEntry struct { PlayerId int64 `json:"player_id"` Kills int64 `json:"kills"` Assists int64 `json:"assists"` Deaths int64 `json:"deaths"` Adr float64 `json:"adr"` }
CsScoreBoardEntry reflects a CS:GO scoreboard entry.
type CsSeriesSummary ¶
type CsTeamCommonStats ¶
type CsTeamCommonStats struct { NrMatches int64 `json:"nr_matches"` CtRounds int64 `json:"ct_rounds"` CtWins int64 `json:"ct_wins"` TRounds int64 `json:"t_rounds"` TWins int64 `json:"t_wins"` PistolRounds int64 `json:"pistol_rounds"` PistolWins int64 `json:"pistol_wins"` FirstKillRate float64 `json:"first_kill_rate"` FirstDeathRate float64 `json:"first_death_rate"` }
CsTeamCommonStats holds information common to multiple JSON objects.
type CsTeamStats ¶
type CsTeamStats struct { Totals struct { Kills int64 `json:"kills"` Deaths int64 `json:"deaths"` CsTeamCommonStats } `json:"totals"` Maps []struct { Map Map `json:"map"` CsTeamCommonStats } `json:"maps"` Marksman []struct { PlayerId int64 `json:"player_id"` Adr float64 `json:"adr"` Weapon Weapon `json:"weapon"` } `json:"marksman"` TopStats struct { Kills struct { PlayerAgainst Kills int64 `json:"kills"` } `json:"kills"` Adr struct { PlayerAgainst Adr float64 `json:"adr"` } `json:"adr"` Assists struct { PlayerAgainst Assists int64 `json:"assists"` } `json:"assists"` Plants struct { PlayerAgainst Plants int64 `json:"plants"` } `json:"plants"` Defuses struct { PlayerAgainst Defuses int64 `json:"defuses"` } `json:"defuses"` } `json:"top_stats"` TopMatches struct { BiggestLoss struct { TeamAgainst Rounds int64 `json:"rounds"` } `json:"biggest_loss"` BiggestWin struct { TeamAgainst Rounds int64 `json:"rounds"` } `json:"biggest_win"` MostRounds struct { TeamAgainst Rounds int64 `json:"rounds"` } `json:"most_rounds"` } `json:"top_matches"` }
CsTeamStats holds data about a team play by play stats for cs
type DefaultRoster ¶
type DefaultRoster struct { From string `json:"from,omitempty"` To *string `json:"to,omitempty"` Roster Roster `json:"roster,omitempty"` }
DefaultRoster represents the time period(s) when a Roster has been a Team's main roster or line-up.
type DotaDmg ¶
type DotaDmg struct { HpRemoval int64 `json:"hp_removal"` MagicalDmg int64 `json:"magical_dmg"` PhysicalDmg int64 `json:"physical_dmg"` PureDmg int64 `json:"pure_dmg"` }
DotaDmg is a collection of different types of damages given/taken in dota.
type DotaDraftEvent ¶ added in v3.1.0
type DotaDraftEvent struct { Order int64 `json:"order"` Type string `json:"type"` RosterId int64 `json:"roster_id"` Hero Hero `json:"hero"` }
DotaDraftEvent is information about event of draft phase of Dota match.
type DotaFirstBloodEvent ¶ added in v3.1.0
type DotaFirstBloodEvent struct { Killer int64 `json:"killer"` Victim int64 `json:"victim"` AtTime int64 `json:"at_time"` }
DotaFirstBloodEvent is a information about first blood in Dota match.
type DotaHeroWithWins ¶
type DotaHeroWithWins struct { Amount int64 `json:"amount"` Wins int64 `json:"wins"` Hero Hero `json:"hero"` }
DotaHeroWithAmount holds information about a Dota Hero and an integer representing and amount (e.g amount of times picked).
type DotaMatchKill ¶ added in v3.1.0
type DotaMatchKill struct { Killer int64 `json:"killer"` Victim int64 `json:"victim"` AtTime int64 `json:"at_time"` Assists []int64 `json:"assists"` }
DotaMatchKill is a summarization of data about kill event of Dota match.
type DotaMatchPlayerStats ¶ added in v3.1.0
type DotaMatchPlayerStats struct { PlayerId int64 `json:"player_id"` Hero Hero `json:"hero"` Kills int64 `json:"kills"` Deaths int64 `json:"deaths"` Assists int64 `json:"assists"` Gpm float64 `json:"gpm"` Networth int64 `json:"networth"` Xpm float64 `json:"xpm"` Levels map[string]int64 `json:"levels"` CreepKills int64 `json:"creep_kills"` CreepDenies int64 `json:"creep_denies"` CampsStacked int64 `json:"camps_stacked"` HeroDmg DotaPlayerDmg `json:"hero_dmg"` HeroHealing DotaPlayerHealing `json:"hero_healing"` Wards DotaWardsStat `json:"wards"` Runes DotaRunesStat `json:"runes"` Items struct { Inventory struct { Slot1 DotaItem `json:"slot_1"` Slot2 DotaItem `json:"slot_2"` Slot3 DotaItem `json:"slot_3"` Slot4 DotaItem `json:"slot_4"` Slot5 DotaItem `json:"slot_5"` Slot6 DotaItem `json:"slot_6"` } `json:"inventory"` Backpack struct { Slot1 DotaItem `json:"slot_1"` Slot2 DotaItem `json:"slot_2"` Slot3 DotaItem `json:"slot_3"` } `json:"backpack"` Stash struct { Slot1 DotaItem `json:"slot_1"` Slot2 DotaItem `json:"slot_2"` Slot3 DotaItem `json:"slot_3"` Slot4 DotaItem `json:"slot_4"` Slot5 DotaItem `json:"slot_5"` Slot6 DotaItem `json:"slot_6"` } `json:"stash"` } `json:"items"` }
DotaMatchPlayerStats is the summarization of a Player in Dota match.
type DotaMatchSummary ¶
type DotaMatchSummary struct { RadiantRoster int64 `json:"radiant_roster"` DireRoster int64 `json:"dire_roster"` MatchLength int64 `json:"match_length"` DraftSeq []DotaDraftEvent `json:"draft_seq"` FirstBlood DotaFirstBloodEvent `json:"first_blood"` Kills []DotaMatchKill `json:"kills"` StructureDest []DotaStructureDest `json:"structure_dest"` PlayerStats []DotaMatchPlayerStats `json:"player_stats"` RoshanEvents []RoshanEvent `json:"roshan_events"` }
DotaMatchSummary is the summarization of a Dota match.
type DotaPlayerAgainst ¶
type DotaPlayerAgainst struct { PlayerAgainst Hero Hero `json:"hero"` }
DotaPlayerAgainst is a grouping of PlayerAgainst and a Hero
type DotaPlayerDmg ¶ added in v3.1.0
type DotaPlayerDmg struct { Given struct { ByHero DotaDmg `json:"by_hero"` ByMobs DotaDmg `json:"by_mobs"` } `json:"given"` Taken struct { FromHeroes DotaDmg `json:"from_heroes"` FromMobs DotaDmg `json:"from_mobs"` } `json:"taken"` }
DotaPlayerDmg is a collection of damage stat given or taken by player in Dota match.
type DotaPlayerHealing ¶ added in v3.1.0
type DotaPlayerHealing struct { Given struct { ByHero int64 `json:"by_hero"` ByMobs int64 `json:"by_mobs"` } `json:"given"` Taken struct { FromHeroes int64 `json:"from_heroes"` FromMobs int64 `json:"from_mobs"` } `json:"taken"` }
DotaPlayerDmg is a collection of damage stat given or taken by player in Dota match.
type DotaPlayerPerformance ¶
type DotaPlayerPerformance struct { Matches int64 `json:"matches"` Wins int64 `json:"wins"` AvgKills float64 `json:"avg_kills"` AvgDeaths float64 `json:"avg_deaths"` AvgAssists float64 `json:"avg_assists"` AvgCreepKills float64 `json:"avg_creep_kills"` AvgCreepDenies float64 `json:"avg_creep_denies"` AvgGpm float64 `json:"avg_gpm"` AvgXpm float64 `json:"avg_xpm"` }
DotaPlayerPerformance holds some data about a a players performance. This struct is re-used for different levels of data (e.g hero_stats and top_hero)
type DotaPlayerStats ¶
type DotaPlayerStats struct { Stats DotaPlayerPerformance `json:"stats"` HeroStats struct { Attribute struct { Strength DotaPlayerPerformance `json:"strength"` Agility DotaPlayerPerformance `json:"agility"` Intelligence DotaPlayerPerformance `json:"intelligence"` } `json:"attribute"` TopHeroes []struct { Hero Hero `json:"hero"` DotaPlayerPerformance } `json:"top_heroes"` } `json:"hero_stats"` FactionStats struct { Radiant struct { Matches int64 `json:"matches"` Wins int64 `json:"wins"` } `json:"radiant"` Dire struct { Matches int64 `json:"matches"` Wins int64 `json:"wins"` } `json:"dire"` } `json:"faction_stats"` }
DotaPlayerByPlayStats holds play by play stats for dota players
type DotaRunesStat ¶ added in v3.1.0
type DotaRunesStat struct { DoubleDamageRunes int64 `json:"double_damage_runes"` HasteRunes int64 `json:"haste_runes"` IllusionRunes int64 `json:"illusion_runes"` InvisibilityRunes int64 `json:"invisibility_runes"` RegenerationRunes int64 `json:"regeneration_runes"` BountyRunes int64 `json:"bounty_runes"` ArcaneRunes int64 `json:"arcane_runes"` }
DotaRunesStat is a collection of data about picked up runes
type DotaSeriesSummary ¶
type DotaSeriesSummary struct { Scoreboard map[string][]struct { PlayerID int64 `json:"player_id"` MatchesPlayed int64 `json:"matches_played"` Kills int64 `json:"kills"` Deaths int64 `json:"deaths"` Assists int64 `json:"assists"` Gpm float64 `json:"gpm"` Xpm float64 `json:"xpm"` CreepKills int64 `json:"creep_kills"` CreepDenies int64 `json:"creep_denies"` HeroDmg struct { Given struct { ByHero struct { HpRemoval int64 `json:"hp_removal"` MagicalDmg int64 `json:"magical_dmg"` PhysicalDmg int64 `json:"physical_dmg"` PureDmg int64 `json:"pure_dmg"` } `json:"by_hero"` ByMobs struct { HpRemoval int64 `json:"hp_removal"` MagicalDmg int64 `json:"magical_dmg"` PhysicalDmg int64 `json:"physical_dmg"` PureDmg int64 `json:"pure_dmg"` } `json:"by_mobs"` } `json:"given"` Taken struct { FromHeroes struct { HpRemoval int64 `json:"hp_removal"` MagicalDmg int64 `json:"magical_dmg"` PhysicalDmg int64 `json:"physical_dmg"` PureDmg int64 `json:"pure_dmg"` } `json:"from_heroes"` FromMobs struct { HpRemoval int64 `json:"hp_removal"` MagicalDmg int64 `json:"magical_dmg"` PhysicalDmg int64 `json:"physical_dmg"` PureDmg int64 `json:"pure_dmg"` } `json:"from_mobs"` } `json:"taken"` } `json:"hero_dmg"` } `json:"scoreboard"` }
type DotaStructureDest ¶ added in v3.1.0
type DotaStructureDest struct { Killer int64 `json:"killer"` StructureType string `json:"structure_type"` StructurePos string `json:"structure_pos"` AtTime int64 `json:"at_time"` }
DotaStructureDest is a summarization of data about structure destruction event of Dota match.
type DotaTeamStats ¶
type DotaTeamStats struct { FactionStats struct { Radiant struct { Matches int64 `json:"matches"` Wins int64 `json:"wins"` } `json:"radiant"` Dire struct { Matches int64 `json:"matches"` Wins int64 `json:"wins"` } `json:"dire"` } `json:"faction_stats"` Drafts struct { Own struct { MostPicked []DotaHeroWithWins `json:"most_picked"` MostBanned []DotaHeroWithWins `json:"most_banned"` } `json:"own"` Opponents struct { MostPicked []DotaHeroWithWins `json:"most_picked"` MostBanned []DotaHeroWithWins `json:"most_banned"` } `json:"opponents"` } `json:"drafts"` TopStats struct { Kills struct { DotaPlayerAgainst Kills int64 `json:"kills"` } `json:"kills"` Gpm struct { DotaPlayerAgainst Gpm float64 `json:"gpm"` } `json:"gpm"` Xpm struct { DotaPlayerAgainst Xpm float64 `json:"xpm"` } `json:"xpm"` DmgGiven struct { DotaPlayerAgainst DmgGiven float64 `json:"dmg_given"` } `json:"dmg_given"` CreepKills struct { DotaPlayerAgainst LastHits int64 `json:"last_hits"` } `json:"creep_kills"` CreepDenies struct { DotaPlayerAgainst Denies int64 `json:"denies"` } `json:"creep_denies"` } `json:"top_stats"` TopMatches struct { AvgLength float64 `json:"avg_length"` Longest struct { Won struct { TeamAgainst Length int64 `json:"length"` } `json:"won"` Lost struct { TeamAgainst Length int64 `json:"length"` } `json:"lost"` } `json:"longest"` Shortest struct { Won struct { TeamAgainst Length int64 `json:"length"` } `json:"won"` Lost struct { TeamAgainst Length int64 `json:"length"` } `json:"lost"` } `json:"shortest"` AvgKpm float64 `json:"avg_kpm"` Kpm struct { Highest struct { Kpm float64 `json:"kpm"` TeamAgainst } `json:"highest"` Lowest struct { Kpm float64 `json:"kpm"` TeamAgainst } `json:"lowest"` } `json:"kpm"` } `json:"top_matches"` Average struct { Match struct { Kills *float64 `json:"kills"` Deaths *float64 `json:"deaths"` Assists *float64 `json:"assists"` Gpm *float64 `json:"gpm"` Xpm *float64 `json:"xpm"` Length *float64 `json:"length"` Wards struct { Observers struct { Killed *float64 `json:"killed"` Placed *float64 `json:"placed"` } `json:"observers"` Sentries struct { Killed *float64 `json:"killed"` Placed *float64 `json:"placed"` } `json:"sentries"` } `json:"wards"` Structures struct { Towers struct { Taken *float64 `json:"taken"` Lost *float64 `json:"lost"` Denied *float64 `json:"denied"` } `json:"towers"` Barracks struct { Taken *float64 `json:"taken"` Lost *float64 `json:"lost"` Denied *float64 `json:"denied"` } `json:"barracks"` } `json:"structures"` Creeps struct { Lane struct { Kills *float64 `json:"kills"` Denies *float64 `json:"denies"` } `json:"lane"` Neutral struct { Roshan *float64 `json:"roshan"` Total *float64 `json:"total"` } `json:"neutral"` } `json:"creeps"` FirstBlood struct { Rate *float64 `json:"rate"` TakenAt *float64 `json:"taken_at"` } `json:"first_blood"` } `json:"match"` } `json:"average"` }
DotaTeamStats holds data about a teams play by play stats for dota
type DotaWardsStat ¶ added in v3.1.0
type DotaWardsStat struct { Observers struct { Killed int64 `json:"killed"` Placed int64 `json:"placed"` } `json:"observers"` Sentries struct { Killed int64 `json:"killed"` Placed int64 `json:"placed"` } `json:"sentries"` }
DotaWardsStat is a collection of data about wards actions of a player
type Error ¶
type Error struct { ErrorMessage string `json:"error,omitempty"` ErrorCode int64 `json:"error_code,omitempty"` ErrorDescription string `json:"error_description,omitempty"` }
Error represents an error response from the API.
type Forfeit ¶
Forfeit contains two items with roster ids as keys mapping to a boolean value describing whether the roster has forfeited or not.
type Game ¶
type Game struct { Id int64 `json:"id,omitempty"` Title string `json:"title,omitempty"` LongTitle string `json:"long_title,omitempty"` DeletedAt *string `json:"deleted_at"` // Datettime Images GameImages `json:"images,omitempty"` Color string `json:"color,omitempty"` }
Game represents the actual game being played in a Series
type GameImages ¶
type GameImages struct { Square string `json:"square,omitempty"` Circle string `json:"circle,omitempty"` Rectangle string `json:"rectangle,omitempty"` }
GameImages represents the different keys for images a Game can contain
type Incident ¶
type Incident struct { SeriesId int64 `json:"series_id,omitempty"` MatchId *int64 `json:"match_id,omitempty"` Comment string `json:"comment,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt *string `json:"updated_at"` IncidentId int64 `json:"incident_id,omitempty"` }
Incident represents an incident.
type Kill ¶ added in v3.1.0
type Kill struct { RoundClock int64 `json:"round_clock"` Damage int64 `json:"damage"` Attacker struct { PlayerId int64 `json:"player_id"` Pos Pos `json:"pos"` } `json:"attacker"` Victim struct { PlayerId int64 `json:"player_id"` Pos Pos `json:"pos"` } `json:"victim"` Assists *int64 `json:"assist"` Weapon Weapon `json:"weapon"` HitGroup string `json:"hit_group"` }
Kill holds CS:GO kill data
type LolLaneEvent ¶
type LolMatchSummary ¶
type LolMatchSummary struct { MatchLength int64 `json:"match_length"` BlueRoster struct { Id int64 `json:"id"` Players []LolPlayer `json:"players"` } `json:"blue_roster"` PurpleRoster struct { Id int64 `json:"id"` Players []LolPlayer `json:"players"` } `json:"purple_roster"` Firsts struct { FirstBlood struct { PlayerId int64 `json:"player_id"` Timestamp int64 `json:"timestamp"` Team string `json:"team"` } `json:"first_blood"` FirstTower struct { PlayerId int64 `json:"player_id"` Timestamp int64 `json:"timestamp"` Team string `json:"team"` } `json:"first_tower"` FirstInhibitor struct { PlayerId int64 `json:"player_id"` Timestamp int64 `json:"timestamp"` Team string `json:"team"` } `json:"first_inhibitor"` FirstBaron struct { PlayerId int64 `json:"player_id"` Timestamp int64 `json:"timestamp"` Team string `json:"team"` } `json:"first_baron"` FirstDragon struct { PlayerId int64 `json:"player_id"` Timestamp int64 `json:"timestamp"` Team string `json:"team"` } `json:"first_dragon"` FirstRiftHerald struct { PlayerId int64 `json:"player_id"` Timestamp int64 `json:"timestamp"` Team string `json:"team"` } `json:"first_rift_herald"` } `json:"firsts"` Wards []struct { EventType string `json:"event_type"` Type string `json:"type"` PlayerId int64 `json:"player_id"` Timestamp int64 `json:"timestamp"` } `json:"wards"` KillTimeline []struct { Timestamp int64 `json:"timestamp"` Position Pos `json:"position"` KillerId int64 `json:"killer_id"` VictimId int64 `json:"victim_id"` Assists []int64 `json:"assists"` } `json:"kill_timeline"` ObjectiveEvents struct { Towers []struct { Type string `json:"type"` Assists []int64 `json:"assists"` LolLaneEvent } `json:"towers"` Inihibitors []struct { LolLaneEvent Assists []int64 `json:"assists"` } `json:"inhibitors"` Barons []LolEvent `json:"barons"` Dragons []struct { Type string `json:"type"` LolEvent } `json:"dragons"` RiftHeralds []LolEvent `json:"rift_heralds"` } `json:"objective_events"` Draft []struct { RosterId int64 `json:"roster_id"` Champion Champion `json:"champion"` Order *int64 `json:"order"` Type string `json:"type"` } `json:"draft"` }
type LolPlayer ¶
type LolPlayer struct { PlayerId int64 `json:"player_id"` Role string `json:"role"` Lane string `json:"lane"` Kills int64 `json:"kills"` Deaths int64 `json:"deaths"` Assists int64 `json:"assists"` GoldEarned int64 `json:"gold_earned"` GoldSpent int64 `json:"gold_spent"` Gpm float64 `json:"gpm"` TotalXp int64 `json:"total_xp"` Xpm float64 `json:"xpm"` Champion Champion `json:"champion"` KillCombos struct { Double int64 `json:"double"` Triple int64 `json:"triple"` Quadra int64 `json:"quadra"` Penta int64 `json:"penta"` Unreal int64 `json:"unreal"` LargestKillingSpree int64 `json:"largest_killing_spree"` LargestMultiKill int64 `json:"largest_multi_kill"` KillingSprees int64 `json:"killing_sprees"` } `json:"kill_combos"` Items struct { Inventory struct { Slot1 LolItem `json:"slot_1"` Slot2 LolItem `json:"slot_2"` Slot3 LolItem `json:"slot_3"` Slot4 LolItem `json:"slot_4"` Slot5 LolItem `json:"slot_5"` Slot6 LolItem `json:"slot_6"` Slot7 LolItem `json:"slot_7"` } `json:"inventory"` } `json:"items"` Damage struct { Total LolDmg `json:"total"` ToHeroes LolDmg `json:"to_heroes"` DamageTaken LolDmg `json:"damage_taken"` LargestCrit int64 `json:"largest_crit"` ToObjectives int64 `json:"to_objectives"` ToTurrets int64 `json:"to_turrets"` } `json:"damage"` Support struct { AmountHealed int64 `json:"amount_healed"` UnitsHealed int64 `json:"units_healed"` CrowdControlTime int64 `json:"crowd_control_time"` } `json:"support"` MinionKills struct { Total int64 `json:"total"` NeutralJungle int64 `json:"neutral_jungle"` NeutralEnemyJungle int64 `json:"neutral_enemy_jungle"` } `json:"minion_kills"` Wards []struct { Type string `json:"type"` Destroyed int64 `json:"destroyed"` Placed int64 `json:"placed"` } `json:"wards"` ChampionSpells map[string]struct { Name string `json:"name"` } `json:"champion_spells"` Masteries []struct { Name string `json:"name"` Rank int64 `json:"rank"` } `json:"masteries"` Runes []struct { Name string `json:"name"` Rank int64 `json:"rank"` } `json:"runes"` RunesReforged struct { PrimaryPath struct { Path struct { Name string `json:"name"` ExternalId int64 `json:"external_id"` } `json:"path"` Keystone struct { Name string `json:"name"` ExternalId int64 `json:"external_id"` } `json:"keystone"` Rune1 struct { Name string `json:"name"` ExternalId int64 `json:"external_id"` } `json:"rune_1"` Rune2 struct { Name string `json:"name"` ExternalId int64 `json:"external_id"` } `json:"rune_2"` Rune3 struct { Name string `json:"name"` ExternalId int64 `json:"external_id"` } `json:"rune_3"` } `json:"primary_path"` SecondaryPath struct { Path struct { Name string `json:"name"` ExternalId int64 `json:"external_id"` } `json:"path"` Rune1 struct { Name string `json:"name"` ExternalId int64 `json:"external_id"` } `json:"rune_1"` Rune2 struct { Name string `json:"name"` ExternalId int64 `json:"external_id"` } `json:"rune_2"` } `json:"secondary_path"` } `json:"runes_reforged"` Skillups []struct { Time int64 `json:"time"` AbilitySlot int64 `json:"ability_slot"` Type string `json:"type"` } `json:"skillups"` }
type LolPlayerAgainst ¶
type LolPlayerStats ¶
type LolPlayerStats struct { NrMatches int64 `json:"nr_matches"` NrWins int64 `json:"nr_wins"` AvgStats struct { Kills float64 `json:"kills"` Deaths float64 `json:"deaths"` Assists float64 `json:"assists"` Gpm float64 `json:"gpm"` Xpm float64 `json:"xpm"` MinionKills struct { Total float64 `json:"total"` NeutralMinions float64 `json:"neutral_minions"` NeutralJungle float64 `json:"neutral_jungle"` NeutralEnemyJungle float64 `json:"neutral_enemy_jungle"` } `json:"minion_kills"` Wards []struct { Placed float64 `json:"placed"` Destroyed float64 `json:"destroyed"` Type string `json:"type"` } `json:"wards"` } `json:"avg_stats"` LargestCombo struct { Double int64 `json:"double"` Triple int64 `json:"triple"` Quadra int64 `json:"quadra"` Penta int64 `json:"penta"` Unreal int64 `json:"unreal"` LargestKillingSpree int64 `json:"largest_killing_spree"` LargestMultiKill int64 `json:"largest_multi_kill"` KillingSprees int64 `json:"killing_sprees"` } `json:"largest_combos"` MostPlayedChampion []struct { Champion Champion `json:"champion"` NrMatches int64 `json:"nr_matches"` NrWins int64 `json:"nr_wins"` AvgKills float64 `json:"avg_kills"` AvgDeaths float64 `json:"avg_deaths"` AvgAssists float64 `json:"avg_assists"` AvgGpm float64 `json:"avg_gpm"` AvgXpm float64 `json:"avg_xpm"` } `json:"most_played_champions"` SideStats struct { Purple struct { NrMatches int64 `json:"nr_matches"` NrWins int64 `json:"nr_wins"` } `json:"purple"` Blue struct { NrMatches int64 `json:"nr_matches"` NrWins int64 `json:"nr_wins"` } `json:"blue"` } `json:"side_stats"` }
type LolSeriesSummary ¶
type LolSeriesSummary struct { Scoreboard map[string][]struct { PlayerID int64 `json:"player_id"` MatchesPlayed int64 `json:"matches_played"` Kills int64 `json:"kills"` Deaths int64 `json:"deaths"` Assists int64 `json:"assists"` GoldEarned int64 `json:"gold_earned"` GoldSpent int64 `json:"gold_spent"` TotalXp int64 `json:"total_xp"` Xpm float64 `json:"xpm"` Gpm float64 `json:"gpm"` KillCombos struct { Double int64 `json:"double"` Triple int64 `json:"triple"` Quadra int64 `json:"quadra"` Penta int64 `json:"penta"` Unreal int64 `json:"unreal"` LargestKillingSpree int64 `json:"largest_killing_spree"` LargestMultiKill int64 `json:"largest_multi_kill"` KillingSprees int64 `json:"killing_sprees"` } `json:"kill_combos"` MinionKills struct { Total int64 `json:"total"` NeutralJungle int64 `json:"neutral_jungle"` NeutralEnemyJungle int64 `json:"neutral_enemy_jungle"` } `json:"minion_kills"` Damage struct { Total struct { Magic int64 `json:"magic"` Physical int64 `json:"physical"` True int64 `json:"true"` } `json:"total"` ToHeroes struct { Magic int64 `json:"magic"` Physical int64 `json:"physical"` True int64 `json:"true"` } `json:"to_heroes"` DamageTaken struct { Magic int64 `json:"magic"` Physical int64 `json:"physical"` True int64 `json:"true"` } `json:"damage_taken"` LargestCrit int64 `json:"largest_crit"` ToObjectives int64 `json:"to_objectives"` ToTurrets int64 `json:"to_turrets"` } `json:"damage"` Support struct { AmountHealed int64 `json:"amount_healed"` UnitsHealed int64 `json:"units_healed"` CrowdControlTime int64 `json:"crowd_control_time"` } `json:"support"` } }
type LolTeamAgainst ¶
type LolTeamStats ¶
type LolTeamStats struct { NrMatches int64 `json:"nr_matches"` NrWins int64 `json:"nr_wins"` SideStats struct { Purple struct { NrMatches int64 `json:"nr_matches"` NrWins int64 `json:"nr_wins"` } `json:"purple"` Blue struct { NrMatches int64 `json:"nr_matches"` NrWins int64 `json:"nr_wins"` } `json:"blue"` } `json:"side_stats"` Average struct { Match struct { Kills *float64 `json:"kills"` Deaths *float64 `json:"deaths"` Assists *float64 `json:"assists"` Gpm *float64 `json:"gpm"` Length *float64 `json:"length"` Wards struct { Killed *float64 `json:"killed"` Placed *float64 `json:"placed"` } `json:"wards"` Structures struct { Turrets struct { Taken *float64 `json:"taken"` Lost *float64 `json:"lost"` } `json:"turrets"` Inhibitors struct { Taken *float64 `json:"taken"` Lost *float64 `json:"lost"` } `json:"inhibitors"` } `json:"structures"` Creeps struct { Lane struct { Kills *float64 `json:"kills"` } `json:"lane"` Neutral struct { Baron *float64 `json:"baron"` Dragon *float64 `json:"dragon"` Heralds *float64 `json:"heralds"` Total *float64 `json:"total"` } `json:"neutral"` } `json:"creeps"` FirstBlood struct { Rate *float64 `json:"rate"` TakenAt *float64 `json:"taken_at"` } `json:"first_blood"` } `json:"match"` } `json:"average"` Champions []struct { NrMatches int64 `json:"nr_matches"` NrWins int64 `json:"nr_wins"` Champion Champion `json:"champion"` } `json:"champions"` TopStats struct { Kills LolPlayerAgainst `json:"kills"` Gpm LolPlayerAgainst `json:"gpm"` Xpm LolPlayerAgainst `json:"xpm"` DoubleKills *LolPlayerAgainst `json:"double_kills"` TripleKills *LolPlayerAgainst `json:"triple_kills"` QuadraKills *LolPlayerAgainst `json:"quadra_kills"` PentaKills *LolPlayerAgainst `json:"Penta_kills"` UnrealKills *LolPlayerAgainst `json:"Unreal_kills"` LargestKillingSpree *LolPlayerAgainst `json:"largest_killing_spree"` LargestMultiKill *LolPlayerAgainst `json:"largest_multi_kill"` } `json:"top_stats"` TopMatches struct { Kpm struct { Avg float64 `json:"avg"` // Only lol Highest struct { LolTeamAgainst } `json:"highest"` Lowest struct { LolTeamAgainst } `json:"lowest"` } `json:"kpm"` Length struct { Avg float64 `json:"avg"` Longest struct { Won LolTeamAgainst `json:"won"` Lost LolTeamAgainst `json:"lost"` } `json:"longest"` Shortest struct { Won LolTeamAgainst `json:"won"` Lost LolTeamAgainst `json:"lost"` } `json:"shortest"` } `json:"length"` } `json:"top_matches"` }
type Map ¶
type Map struct { Id int64 `json:"id"` Name string `json:"name,omitempty"` Official bool `json:"official"` Game Game `json:"game,omitempty"` }
Map represents the map being played in a Match
type Match ¶
type Match struct { Id int64 `json:"id,omitempty"` SeriesId int64 `json:"series_id,omitempty"` Order int64 `json:"order,omitempty"` Winner *int64 `json:"winner"` Map *Map `json:"map,omitempty"` DeletedAt *string `json:"deleted_at"` Game Game `json:"game"` HasPbpStats bool `json:"has_pbpstats"` Scores *Scores `json:"scores"` Forfeit Forfeit `json:"forfeit,omitempty"` Seeding Seeding `json:"seeding,omitempty"` Rosters []Roster `json:"rosters"` Performance MatchPerformance `json:"performance,omitempty"` MatchSummary MatchSummary `json:"match_summary"` // Play by Play }
Match represents an actual map being played between two rosters.
func (*Match) UnmarshalJSON ¶
We need to unmarshal match_summary into the game-specific struct
type MatchPerformance ¶
type MatchPerformance struct {
Winrate MatchWinrate `json:"winrate,omitempty"`
}
MatchPerformance is associated with a Match and contains performance information about the Rosters with respect to the specific map.
type MatchSummary ¶
type MatchSummary interface{}
MatchSummary holds information about play by play statistics for a certain match.
type MatchWinrate ¶
type MatchWinrate struct { Overall *MatchWinrateOverall `json:"over_all"` PerMap []MatchWinratePerMap `json:"per_map"` }
MatchWinrate holds the top-level keys for winrate statistics.
type MatchWinrateOverall ¶
type MatchWinrateOverall struct { History int64 `json:"history,omitempty"` Rosters map[string]float64 `json:"-"` }
MatchWinrateOverall holds information about the summarized performance statistics.
func (*MatchWinrateOverall) UnmarshalJSON ¶
func (m *MatchWinrateOverall) UnmarshalJSON(b []byte) (err error)
type MatchWinratePerMap ¶
type MatchWinratePerMap struct { Map Map `json:"map,omitempty"` History int64 `json:"history,omitempty"` Rosters map[string]float64 `json:"-"` }
MatchWinratePerMap breaks down the winrate statistics per Map.
func (*MatchWinratePerMap) UnmarshalJSON ¶
func (m *MatchWinratePerMap) UnmarshalJSON(b []byte) (err error)
type Moneyline ¶
type Moneyline struct { Home float64 `json:"home"` HomeBetSlip *string `json:"home_bet_slip"` Away float64 `json:"away"` AwayBetSlip *string `json:"away_bet_slip"` Draw *float64 `json:"draw"` DrawBetSlip *string `json:"draw_bet_slip"` }
Moneyline holds information about the mouneyline for a particular sportsbook.
type Organisation ¶
type Organisation struct { Id int64 `json:"id,omitempty"` Name string `json:"name,omitempty"` Teams []Team `json:"teams"` }
Organisation represents a logical grouping of Teams across different Games
type PaginatedGames ¶
type PaginatedGames struct { LastPage int64 `json:"last_page,omitempty"` CurrentPage int64 `json:"current_page,omitempty"` Data []Game `json:"data,omitempty"` }
PaginatedGames holds a list of Game as well as information about pages.
type PaginatedIncidents ¶
type PaginatedIncidents struct { LastPage int64 `json:"last_page,omitempty"` CurrentPage int64 `json:"current_page,omitempty"` Data []Incident `json:"data"` }
PaginatedIncidents holds a list of Incident as well as information about pages
type PaginatedOrganisations ¶
type PaginatedOrganisations struct { LastPage int64 `json:"last_page,omitempty"` CurrentPage int64 `json:"current_page,omitempty"` Data []Organisation `json:"data,omitempty"` }
PaginatedOrganisations holds a list of Team as well as information about pages.
type PaginatedPlayers ¶
type PaginatedPlayers struct { LastPage int64 `json:"last_page,omitempty"` CurrentPage int64 `json:"current_page,omitempty"` Data []Player `json:"data,omitempty"` }
PaginatedPlayers holds a list of Player as well as information about pages.
type PaginatedSeries ¶
type PaginatedSeries struct { LastPage int64 `json:"last_page,omitempty"` CurrentPage int64 `json:"current_page,omitempty"` Data []Series `json:"data,omitempty"` }
PaginatedSeries holds a list of Series as well as information about pages.
type PaginatedTeams ¶
type PaginatedTeams struct { LastPage int64 `json:"last_page,omitempty"` CurrentPage int64 `json:"current_page,omitempty"` Data []Team `json:"data,omitempty"` }
PaginatedTeams holds a list of Team as well as information about pages.
type PaginatedTournaments ¶
type PaginatedTournaments struct { LastPage int64 `json:"last_page,omitempty"` CurrentPage int64 `json:"current_page,omitempty"` Data []Tournament `json:"data,omitempty"` }
PaginatedTournaments holds a list of Tournament as well as information about pages
type Platform ¶
type Platform struct { Id int64 `json:"id,omitempty"` Name string `json:"name,omitempty"` Color string `json:"color,omitempty"` Images PlatformImages `json:"images,omitempty"` }
Platform represents a third party streaming platform.
type PlatformImages ¶
type PlatformImages struct {
Default string `json:"default,omitempty"`
}
PlatformImages represents the different keys for images a Platform can contain
type Player ¶
type Player struct { Id int64 `json:"id,omitempty"` FirstName string `json:"first_name"` LastName string `json:"last_name"` Nickname string `json:"nick_name,omitempty"` DeletedAt *string `json:"deleted_at"` Images PlayerImages `json:"images,omitempty"` Country *Country `json:"country,omitempty"` Roles []Role `json:"roles"` Race *Race `json:"race,omitempty"` Team *Team `json:"team,omitempty"` PlayerStats PlayerStats `json:"player_stats,omitempty"` Rosters []DefaultRoster `json:"rosters,omitempty"` Game Game `json:"game,omitempty"` SocialMediaAccounts []SocialMediaAccount `json:"social_media_accounts,omitempty"` }
Player represents a player that competes in Series' and Matches.
type PlayerAgainst ¶
type PlayerAgainst struct { PlayerId int64 `json:"player_id"` Against *Team `json:"against"` // Declared as pointer to avoid invalid recursive type MatchId int64 `json:"match_id"` }
PlayerAgainst is a collection of common data when examining specific stats. It is grouped with the specific stat in another struct.
type PlayerImages ¶
type PlayerImages struct { Default string `json:"default,omitempty"` Thumbnail string `json:"thumbnail,omitempty"` Fallback bool `json:"fallback"` }
PlayerImages represents the different keys for images a Player can contain
type PlayerPlayByPlayStats ¶
type PlayerPlayByPlayStats interface{}
PlayByPlayStats holds information about play by play statistics for a certain player.
type PlayerStats ¶
type PlayerStats struct { SinglePlayer *SinglePlayerStats `json:"single_player,omitempty"` // Null when player does not play single player game. Otherwise format is equal to stats for a team PlayByPlay PlayerPlayByPlayStats `json:"play_by_play"` }
PlayerStats hold performance statistics about a particular Player.
func (*PlayerStats) UnmarshalJSON ¶
func (p *PlayerStats) UnmarshalJSON(data []byte) error
type Prizepool ¶
type Prizepool struct { Total string `json:"total,omitempty"` First string `json:"first,omitempty"` Second string `json:"second,omitempty"` Third string `json:"third,omitempty"` }
Prizepool holds information about a Tournament's prizepool.
type Race ¶
type Race struct { Id int64 `json:"id,omitempty"` GameId int64 `json:"game_id,omitempty"` Name string `json:"name,omitempty"` Images RaceImages `json:"images,omitempty"` }
Race represents a race, faction, class etc. in a Game.
type RaceImages ¶
type RaceImages struct { Default string `json:"default,omitempty"` Thumbnail string `json:"thumbnail,omitempty"` }
RaceImages represents the different keys for images a Race can contain
type RoshanEvent ¶ added in v3.1.0
type RoshanEvent struct { Type string `json:"type"` Killer int64 `json:"killer"` AtTime int64 `json:"at_time"` }
RoshanEvent is a summarization of data about Roshan event of Dota match.
type Roster ¶
type Roster struct { Id int64 `json:"id,omitempty"` Teams []Team `json:"teams,omitempty"` Players []Player `json:"players,omitempty"` RosterStats *RosterStats `json:"roster_stats"` Game Game `json:"game"` }
Roster represents a roster (or line-up) in a team game.
type RosterStats ¶
type RosterStats struct { Streak struct { Match struct { StreakScope // defined in stats.go } `json:"match,omitempty"` } `json:"streak,omitempty"` Winrate struct { Match struct { WinrateMatchScope // defined in stats.go } `json:"match,omitempty"` } `json:"winrate,omitempty"` Nemesis *struct { Match struct { Roster Roster `json:"roster"` Losses int64 `json:"losses"` } `json:"match,omitempty"` } `json:"nemesis"` Dominating *struct { Match struct { Roster Roster `json:"roster"` Wins int64 `json:"wins"` } `json:"match,omitempty"` } `json:"dominating"` }
RosterStats hold performance information about a particular Roster.
type Round ¶ added in v3.1.0
type Round struct { RoundNr int64 `json:"round_nr"` TSide int64 `json:"t_side"` CtSide int64 `json:"ct_side"` Winner int64 `json:"winner"` WinReason string `json:"win_reason"` BombEvents []BombEvent `json:"bomb_events"` Kills []Kill `json:"kills"` PlayerStats struct { TSide []RoundPlayerStats `json:"t_side"` CtSide []RoundPlayerStats `json:"ct_side"` } `json:"player_stats"` }
Round is summaryization of a CS:GO round.
type RoundPlayerStats ¶
type RoundPlayerStats struct { PlayerId int64 `json:"player_id"` DmgGiven float64 `json:"dmg_given"` DmgTaken float64 `json:"dmg_taken"` Kills int64 `json:"kills"` Assists int64 `json:"assists"` Died bool `json:"died"` Accuracy struct { General float64 `json:"general"` Headshot float64 `json:"head_shot"` } `json:"accuracy"` }
RoundPlayerStats reflects how well a player performed in a round.
type SearchResult ¶
type SearchResult struct { Id int64 `json:"id,omitempty"` Matched string `json:"matched,omitempty"` AltLabel string `json:"alt_label,omitempty"` Type string `json:"type,omitempty"` Logo string `json:"logo,omitempty"` GameId int64 `json:"game_id,omitempty"` GameLogo *string `json:"game_logo"` }
SearchResult represents a result from the /search endpoint.
type Series ¶
type Series struct { Id int64 `json:"id,omitempty"` Title string `json:"title,omitempty"` BestOf int64 `json:"bestOf,omitempty"` Tier *int64 `json:"tier"` Start *string `json:"start"` End *string `json:"end"` PostponedFrom *string `json:"postponed_from"` DeletedAt *string `json:"deleted_at"` Scores *Scores `json:"scores"` Forfeit Forfeit `json:"forfeit,omitempty"` Streamed bool `json:"streamed"` Seeding Seeding `json:"seeding,omitempty"` Rosters []Roster `json:"rosters,omitempty"` Game Game `json:"game,omitempty"` Matches []Match `json:"matches,omitempty"` Casters []Caster `json:"casters,omitempty"` TournamentId int64 `json:"tournament_id,omitempty"` SubstageId int64 `json:"substage_id,omitempty"` BracketPosition *BracketPosition `json:"bracket_pos"` Tournament Tournament `json:"tournament,omitempty"` Performance SeriesPerformance `json:"performance,omitempty"` SportsbookOdds []SportsbookOdds `json:"sportsbook_odds"` Chain *[]struct { RootId int64 `json:"root_id"` SeriesId int64 `json:"series_id"` Order int64 `json:"order"` } `json:"chain"` Summary SeriesSummary `json:"summary"` }
Series represents a Series of Matches.
func (*Series) UnmarshalJSON ¶
We need to unmarshal summary into the game-specific struct
type SeriesIncidents ¶
type SeriesIncidents struct { SeriesIncidents []Incident `json:"series_incidents"` MatchIncidents []Incident `json:"match_incidents"` }
SeriesIncidents holds information about all incidents associated with a Series and all it's Matches.
type SeriesPerformance ¶
type SeriesPerformance struct { PastEncounters []Series `json:"past_encounters,omitempty"` RecentPerformance map[string][]Series `json:"recent_performance,omitempty"` }
SeriesPerformance is associated with a Series and contains performance information about the Teams or Players participating in the Series.
type SeriesSummary ¶
type SeriesSummary interface{}
type SinglePlayerStats ¶
type SinglePlayerStats struct { Streak struct { Series struct { StreakScope // defined in stats.go } `json:"series,omitempty"` Match struct { StreakScope // defined in stats.go } `json:"match,omitempty"` } `json:"streak,omitempty"` Winrate struct { Series struct { WinrateSeriesScope // defined in stats.go } `json:"series,omitempty"` Match struct { WinrateMatchScope // defined in stats.go } `json:"match,omitempty"` } `json:"winrate,omitempty"` Nemesis *struct { Series struct { Competitor Player `json:"competitor,omitempty"` // defined in stats.go Losses int64 `json:"losses"` } `json:"series,omitempty"` Match struct { Competitor Player `json:"competitor,omitempty"` // defined in stats.go Losses int64 `json:"losses"` } `json:"match,omitempty"` } `json:"nemesis,omitempty"` Dominating *struct { Series struct { Competitor Player `json:"competitor,omitempty"` // defined in stats.go Wins int64 `json:"wins"` } `json:"series,omitempty"` Match struct { Competitor Player `json:"competitor,omitempty"` // defined in stats.go Wins int64 `json:"wins"` } `json:"match,omitempty"` } `json:"dominating,omitempty"` }
SinglePlayerStats hold information for players playing single-player games. For team games see the players corresponding Team and TeamStats.
type SocialMediaAccount ¶
type SocialMediaAccount struct { Name string `json:"name,omitempty"` Slug string `json:"slug,omitempty"` Url string `json:"url,omitempty"` }
SocialMediaAccount represents a social media account for a Player or Team
type SportsbookOdds ¶
type SportsbookOdds struct { Sportsbook string `json:"sportsbook"` Link string `json:"link"` Moneyline Moneyline `json:"moneyline"` }
SportsbookOdds is a top-level struct holding information about sportsbook odds.
type Stage ¶
type Stage struct { Id int64 `json:"id,omitempty"` Title string `json:"title,omitempty"` DeletedAt *string `json:"deleted_at"` Substages []Substage `json:"substages"` }
Stage represents a phase in a Tournament and a higher level grouping of Substages.
type Standings ¶
type Standings struct { RosterId int64 `json:"roster_id"` Points *int64 `json:"points"` Wins int64 `json:"wins"` Draws int64 `json:"draws"` Losses int64 `json:"losses"` }
Stands represents the current standings in a substage.
type StreakScope ¶
type StreakScope struct { Current int64 `json:"current"` Best int64 `json:"best"` Worst int64 `json:"worst"` }
StreakScope is the second-level object holding streak statistics.
type Stream ¶
type Stream struct { Id int64 `json:"id,omitempty"` Username string `json:"username,omitempty"` DisplayName string `json:"display_name,omitempty"` StatusText string `json:"status_text,omitempty"` ViewerCount int64 `json:"viewer_count"` Online int64 `json:"online"` LastOnline string `json:"last_online,omitempty"` Images StreamImages `json:"images,omitempty"` Url string `json:"url,omitempty"` Platform Platform `json:"platform,omitempty"` }
Stream represents a broadcast on a third party platform.
type StreamImages ¶
type StreamImages struct { UserLogo string `json:"user_logo,omitempty"` Preview string `json:"preview,omitempty"` }
StreamImages represents the different keys for images a Stream can contain
type Substage ¶
type Substage struct { TournamentId int64 `json:"tournament_id,omitempty"` StageId int64 `json:"stage_id,omitempty"` Id int64 `json:"id,omitempty"` Title string `json:"title,omitempty"` Tier int64 `json:"tier"` Type int64 `json:"type"` Order int64 `json:"order"` Rules SubstageRules `json:"rules"` Standing []Standings `json:"standings"` Series []Series `json:"series,omitempty"` Rosters []Roster `json:"rosters,omitempty"` DeletedAt *string `json:"deleted_at"` }
Substage is the lowest structure of a Tournament and is a grouping of Series.
type SubstageRules ¶
type SubstageRules struct { Advance struct { Number *int64 `json:"number"` SubstageId *int64 `json:"substage_id"` } `json:"advance"` Descend struct { Number *int64 `json:"number"` SubstageId *int64 `json:"substage_id"` } `json:"descend"` Points struct { Win *int64 `json:"win"` Draw *int64 `json:"draw"` Loss *int64 `json:"loss"` Scope string `json:"scope"` } }
SubstageRules hold information about the rules for a particular substage.
type Team ¶
type Team struct { Id int64 `json:"id,omitempty"` Name string `json:"name,omitempty"` ShortName string `json:"short_name,omitempty"` DeletedAt *string `json:"deleted_at"` Images TeamImages `json:"images,omitempty"` Country *Country `json:"country"` TeamStats TeamStats `json:"team_stats,omitempty"` Players *[]Player `json:"players,omitempty"` Rosters []DefaultRoster `json:"rosters,omitempty"` UpcomingSeries []Series `json:"upcoming_series"` RecentSeries []Series `json:"recent_series"` Game Game `json:"game,omitempty"` SocialMediaAccounts []SocialMediaAccount `json:"social_media_accounts,omitempty"` }
Team represents a team that competes in Series' and Matches.
type TeamAgainst ¶
type TeamAgainst struct { MatchId int64 `json:"match_id"` Against *Team `json:"against"` // Declared as pointer to avoid invalid recursive type }
TeamAgainst is a collection of common data when examining specific stats. It is grouped with the specific stat in another struct.
type TeamImages ¶
type TeamImages struct { Default string `json:"default,omitempty"` Thumbnail string `json:"thumbnail,omitempty"` Fallback bool `json:"fallback"` }
TeamImages represents the different keys for images a Team can contain
type TeamPlayByPlayStats ¶
type TeamPlayByPlayStats interface{}
type TeamStats ¶
type TeamStats struct { Streak struct { Series struct { StreakScope // defined in stats.go } `json:"series,omitempty"` Match struct { StreakScope // defined in stats.go } `json:"match,omitempty"` } `json:"streak,omitempty"` Winrate struct { Series struct { WinrateSeriesScope // defined in stats.go } `json:"series,omitempty"` Match struct { WinrateMatchScope // defined in stats.go } `json:"match,omitempty"` } `json:"winrate,omitempty"` Nemesis *struct { Series struct { Competitor Team `json:"competitor,omitempty"` // defined in stats.go Losses int64 `json:"losses"` } `json:"series,omitempty"` Match struct { Competitor Team `json:"competitor,omitempty"` // defined in stats.go Losses int64 `json:"losses"` } `json:"match,omitempty"` } `json:"nemesis,omitempty"` Dominating *struct { Series struct { Competitor Team `json:"competitor,omitempty"` // defined in stats.go Wins int64 `json:"wins"` } `json:"series,omitempty"` Match struct { Competitor Team `json:"competitor,omitempty"` // defined in stats.go Wins int64 `json:"wins"` } `json:"match,omitempty"` } `json:"dominating,omitempty"` PlayByPlay TeamPlayByPlayStats `json:"play_by_play"` }
TeamStats holds performance statistics about a particular Team.
func (*TeamStats) UnmarshalJSON ¶
type Tournament ¶
type Tournament struct { Id int64 `json:"id,omitempty"` Title string `json:"title,omitempty"` ShortTitle string `json:"short_title,omitempty"` Country Country `json:"country,omitempty"` City string `json:"city,omitempty"` Tier int64 `json:"tier"` Description string `json:"description,omitempty"` ShortDescription string `json:"short_description,omitempty"` Format string `json:"format,omitempty"` Start *string `json:"start"` // Datettime End *string `json:"end"` // Datettime DeletedAt *string `json:"deleted_at"` // Datettime Url string `json:"url,omitempty"` HasPbpStats bool `json:"has_pbpstats"` Images TournamentImages `json:"images,omitempty"` PrizepoolString Prizepool `json:"prizepool_string,omitempty"` Links Links `json:"links,omitempty"` NextSeries *Series `json:"next_series"` Series []Series `json:"series,omitempty"` // Optional Stages []Stage `json:"stages,omitempty"` // Optional Rosters []Roster `json:"rosters,omitempty"` // Optional Game Game `json:"game,omitempty"` Casters []Caster `json:"casters"` }
Tournament represents a tournament (i.e a structured group of Series').
type TournamentImages ¶
type TournamentImages struct { Default string `json:"default,omitempty"` Thumbnail string `json:"thumbnail,omitempty"` Banner string `json:"banner,omitempty"` Square string `json:"square,omitempty"` Fallback bool `json:"fallback"` }
TournamentImages represents the different keys for images a Tournament can contain
type Weapon ¶
type Weapon struct { Images struct { Small string `json:"small"` } `json:"images"` Name string `json:"name"` }
Weapon holds information about a CS:GO weapon.
type WinrateMatchScope ¶
type WinrateMatchScope struct { Rate float64 `json:"rate"` History int64 `json:"history"` PerMap []WinratePerMap `json:"per_map"` }
WinrateScope is a second-level object holding winrate statistics for matches.
type WinratePerFormat ¶
type WinratePerFormat struct { BestOf int64 `json:"best_of"` Rate float64 `json:"rate"` History int64 `json:"history"` }
WinratePerFormat holds the innermost JSON about winrates related to a specific format.
type WinratePerMap ¶
type WinratePerMap struct { Map Map `json:"map,omitempty"` Rate float64 `json:"rate"` History int64 `json:"history"` }
WinratePerMap holds the innermost JSON about winrates related to a single map.
type WinrateSeriesScope ¶
type WinrateSeriesScope struct { Rate float64 `json:"rate"` History int64 `json:"history"` PerFormat []WinratePerFormat `json:"per_format"` }
WinrateScope is a second-level object holding winrate statistics for series'.
Source Files ¶
- access_token.go
- bracket_position.go
- caster.go
- champion.go
- country.go
- cs_match_summary.go
- default_roster.go
- dota_match_summary.go
- error.go
- forfeit.go
- game.go
- hero.go
- images.go
- incident.go
- item.go
- map.go
- match.go
- match_performance.go
- match_summary.go
- organisation.go
- platform.go
- player.go
- player_stats.go
- race.go
- role.go
- roster.go
- roster_stats.go
- scores.go
- searchresult.go
- seeding.go
- series.go
- series_incident.go
- series_performance.go
- series_summary.go
- social_media_account.go
- sportsbook.go
- stage.go
- stats.go
- stream.go
- substage.go
- team.go
- team_stats.go
- tournament.go
- weapon.go