Skip to content

Instantly share code, notes, and snippets.

@delihiros
Created June 3, 2021 11:52
Show Gist options
  • Save delihiros/ddb2d7fa2b48ee24051a9816df83b0ff to your computer and use it in GitHub Desktop.
Save delihiros/ddb2d7fa2b48ee24051a9816df83b0ff to your computer and use it in GitHub Desktop.
package main
type User struct {
AccessToken string `json:"access_token"`
ClientPlatform struct {
PlatformChipset string `json:"platformChipset"`
PlatformOS string `json:"platformOS"`
PlatformOSVersion string `json:"platformOSVersion"`
PlatformType string `json:"platformType"`
} `json:"client_platform"`
ClientVersion string `json:"client_version"`
EntitlementsToken string `json:"entitlements_token"`
Region string `json:"region"`
UserID string `json:"user_id"`
Username string `json:"username"`
}
type CompetitiveHistory struct {
Matches []struct {
AFKPenalty int64 `json:"AFKPenalty"`
CompetitiveMovement string `json:"CompetitiveMovement"`
MapID string `json:"MapID"`
MatchID string `json:"MatchID"`
MatchStartTime int64 `json:"MatchStartTime"`
RankedRatingAfterUpdate int64 `json:"RankedRatingAfterUpdate"`
RankedRatingBeforeUpdate int64 `json:"RankedRatingBeforeUpdate"`
RankedRatingEarned int64 `json:"RankedRatingEarned"`
RankedRatingPerformanceBonus int64 `json:"RankedRatingPerformanceBonus"`
SeasonID string `json:"SeasonID"`
TierAfterUpdate int64 `json:"TierAfterUpdate"`
TierBeforeUpdate int64 `json:"TierBeforeUpdate"`
} `json:"Matches"`
Subject string `json:"Subject"`
Version int64 `json:"Version"`
}
type Match struct {
Bots []interface{} `json:"bots"`
Coaches []interface{} `json:"coaches"`
Kills []struct {
Assistants []string `json:"assistants"`
FinishingDamage struct {
DamageItem string `json:"damageItem"`
DamageType string `json:"damageType"`
IsSecondaryFireMode bool `json:"isSecondaryFireMode"`
} `json:"finishingDamage"`
GameTime int64 `json:"gameTime"`
Killer string `json:"killer"`
PlayerLocations []struct {
Location struct {
X int64 `json:"x"`
Y int64 `json:"y"`
} `json:"location"`
Subject string `json:"subject"`
ViewRadians float64 `json:"viewRadians"`
} `json:"playerLocations"`
Round int64 `json:"round"`
RoundTime int64 `json:"roundTime"`
Victim string `json:"victim"`
VictimLocation struct {
X int64 `json:"x"`
Y int64 `json:"y"`
} `json:"victimLocation"`
} `json:"kills"`
MatchInfo struct {
CanProgressContracts bool `json:"canProgressContracts"`
CompletionState string `json:"completionState"`
CustomGameName string `json:"customGameName"`
ForcePostProcessing bool `json:"forcePostProcessing"`
GameLengthMillis int64 `json:"gameLengthMillis"`
GameLoopZone string `json:"gameLoopZone"`
GameMode string `json:"gameMode"`
GamePodID string `json:"gamePodId"`
GameServerAddress string `json:"gameServerAddress"`
GameStartMillis int64 `json:"gameStartMillis"`
GameVersion string `json:"gameVersion"`
IsCompleted bool `json:"isCompleted"`
IsMatchSampled bool `json:"isMatchSampled"`
IsRanked bool `json:"isRanked"`
MapID string `json:"mapId"`
MatchID string `json:"matchId"`
PlatformType string `json:"platformType"`
ProvisioningFlowID string `json:"provisioningFlowID"`
QueueID string `json:"queueID"`
SeasonID string `json:"seasonId"`
} `json:"matchInfo"`
Players []struct {
BehaviorFactors struct {
AfkRounds int64 `json:"afkRounds"`
} `json:"behaviorFactors"`
CharacterID string `json:"characterId"`
CompetitiveTier int64 `json:"competitiveTier"`
GameName string `json:"gameName"`
NewPlayerExperienceDetails struct {
Ability struct {
IdleTimeMillis int64 `json:"idleTimeMillis"`
ObjectiveCompleteTimeMillis int64 `json:"objectiveCompleteTimeMillis"`
} `json:"ability"`
AdaptiveBots struct {
AdaptiveBotAverageDurationMillisAllAttempts int64 `json:"adaptiveBotAverageDurationMillisAllAttempt
s"`
AdaptiveBotAverageDurationMillisFirstAttempt int64 `json:"adaptiveBotAverageDurationMillisFirstAttem
pt"`
IdleTimeMillis int64 `json:"idleTimeMillis"`
KillDetailsFirstAttempt interface{} `json:"killDetailsFirstAttempt"`
ObjectiveCompleteTimeMillis int64 `json:"objectiveCompleteTimeMillis"`
} `json:"adaptiveBots"`
BasicGunSkill struct {
IdleTimeMillis int64 `json:"idleTimeMillis"`
ObjectiveCompleteTimeMillis int64 `json:"objectiveCompleteTimeMillis"`
} `json:"basicGunSkill"`
BasicMovement struct {
IdleTimeMillis int64 `json:"idleTimeMillis"`
ObjectiveCompleteTimeMillis int64 `json:"objectiveCompleteTimeMillis"`
} `json:"basicMovement"`
BombPlant struct {
IdleTimeMillis int64 `json:"idleTimeMillis"`
ObjectiveCompleteTimeMillis int64 `json:"objectiveCompleteTimeMillis"`
} `json:"bombPlant"`
DefendBombSite struct {
IdleTimeMillis int64 `json:"idleTimeMillis"`
ObjectiveCompleteTimeMillis int64 `json:"objectiveCompleteTimeMillis"`
Success bool `json:"success"`
} `json:"defendBombSite"`
SettingStatus struct {
IsCrosshairDefault bool `json:"isCrosshairDefault"`
IsMouseSensitivityDefault bool `json:"isMouseSensitivityDefault"`
} `json:"settingStatus"`
} `json:"newPlayerExperienceDetails"`
PartyID string `json:"partyId"`
PlatformInfo struct {
PlatformChipset string `json:"platformChipset"`
PlatformOS string `json:"platformOS"`
PlatformOSVersion string `json:"platformOSVersion"`
PlatformType string `json:"platformType"`
} `json:"platformInfo"`
PlayerCard string `json:"playerCard"`
PlayerTitle string `json:"playerTitle"`
RoundDamage []struct {
Damage int64 `json:"damage"`
Receiver string `json:"receiver"`
Round int64 `json:"round"`
} `json:"roundDamage"`
SessionPlaytimeMinutes int64 `json:"sessionPlaytimeMinutes"`
Stats struct {
AbilityCasts struct {
Ability1Casts int64 `json:"ability1Casts"`
Ability2Casts int64 `json:"ability2Casts"`
GrenadeCasts int64 `json:"grenadeCasts"`
UltimateCasts int64 `json:"ultimateCasts"`
} `json:"abilityCasts"`
Assists int64 `json:"assists"`
Deaths int64 `json:"deaths"`
Kills int64 `json:"kills"`
PlaytimeMillis int64 `json:"playtimeMillis"`
RoundsPlayed int64 `json:"roundsPlayed"`
Score int64 `json:"score"`
} `json:"stats"`
Subject string `json:"subject"`
TagLine string `json:"tagLine"`
TeamID string `json:"teamId"`
} `json:"players"`
RoundResults []struct {
BombDefuser string `json:"bombDefuser"`
BombPlanter string `json:"bombPlanter"`
DefuseLocation struct {
X int64 `json:"x"`
Y int64 `json:"y"`
} `json:"defuseLocation"`
DefusePlayerLocations []struct {
Location struct {
X int64 `json:"x"`
Y int64 `json:"y"`
} `json:"location"`
Subject string `json:"subject"`
ViewRadians float64 `json:"viewRadians"`
} `json:"defusePlayerLocations"`
DefuseRoundTime int64 `json:"defuseRoundTime"`
PlantLocation struct {
X int64 `json:"x"`
Y int64 `json:"y"`
} `json:"plantLocation"`
PlantPlayerLocations []struct {
Location struct {
X int64 `json:"x"`
Y int64 `json:"y"`
} `json:"location"`
Subject string `json:"subject"`
ViewRadians float64 `json:"viewRadians"`
} `json:"plantPlayerLocations"`
PlantRoundTime int64 `json:"plantRoundTime"`
PlantSite string `json:"plantSite"`
PlayerEconomies []struct {
Armor string `json:"armor"`
LoadoutValue int64 `json:"loadoutValue"`
Remaining int64 `json:"remaining"`
Spent int64 `json:"spent"`
Subject string `json:"subject"`
Weapon string `json:"weapon"`
} `json:"playerEconomies"`
PlayerScores []struct {
Score int64 `json:"score"`
Subject string `json:"subject"`
} `json:"playerScores"`
PlayerStats []struct {
Ability struct {
Ability1Effects interface{} `json:"ability1Effects"`
Ability2Effects interface{} `json:"ability2Effects"`
GrenadeEffects interface{} `json:"grenadeEffects"`
UltimateEffects interface{} `json:"ultimateEffects"`
} `json:"ability"`
Damage []struct {
Bodyshots int64 `json:"bodyshots"`
Damage int64 `json:"damage"`
Headshots int64 `json:"headshots"`
Legshots int64 `json:"legshots"`
Receiver string `json:"receiver"`
} `json:"damage"`
Economy struct {
Armor string `json:"armor"`
LoadoutValue int64 `json:"loadoutValue"`
Remaining int64 `json:"remaining"`
Spent int64 `json:"spent"`
Weapon string `json:"weapon"`
} `json:"economy"`
Kills []struct {
Assistants []string `json:"assistants"`
FinishingDamage struct {
DamageItem string `json:"damageItem"`
DamageType string `json:"damageType"`
IsSecondaryFireMode bool `json:"isSecondaryFireMode"`
} `json:"finishingDamage"`
GameTime int64 `json:"gameTime"`
Killer string `json:"killer"`
PlayerLocations []struct {
Location struct {
X int64 `json:"x"`
Y int64 `json:"y"`
} `json:"location"`
Subject string `json:"subject"`
ViewRadians float64 `json:"viewRadians"`
} `json:"playerLocations"`
RoundTime int64 `json:"roundTime"`
Victim string `json:"victim"`
VictimLocation struct {
X int64 `json:"x"`
Y int64 `json:"y"`
} `json:"victimLocation"`
} `json:"kills"`
Score int64 `json:"score"`
StayedInSpawn bool `json:"stayedInSpawn"`
Subject string `json:"subject"`
WasAfk bool `json:"wasAfk"`
WasPenalized bool `json:"wasPenalized"`
} `json:"playerStats"`
RoundCeremony string `json:"roundCeremony"`
RoundNum int64 `json:"roundNum"`
RoundResult string `json:"roundResult"`
RoundResultCode string `json:"roundResultCode"`
WinningTeam string `json:"winningTeam"`
} `json:"roundResults"`
Teams []struct {
NumPoints int64 `json:"numPoints"`
RoundsPlayed int64 `json:"roundsPlayed"`
RoundsWon int64 `json:"roundsWon"`
TeamID string `json:"teamId"`
Won bool `json:"won"`
} `json:"teams"`
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment