wowp

package
v1.4.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 18, 2022 License: MIT Imports: 0 Imported by: 0

Documentation

Overview

Package wowp contains types for the World of Warcraft Profile APIs

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConvertCharacterProfileSummaryPreRev24

func ConvertCharacterProfileSummaryPreRev24(activeTitle string,
	cpspr *CharacterProfileSummaryPreRev24, cps *CharacterProfileSummary)

Types

type AccountProfileSummary

type AccountProfileSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
		User struct {
			Href string `json:"href"`
		} `json:"user"`
		Profile struct {
			Href string `json:"href"`
		} `json:"profile"`
	} `json:"_links"`
	ID          int `json:"id"`
	WowAccounts []struct {
		ID         int `json:"id"`
		Characters []struct {
			Character struct {
				Href string `json:"href"`
			} `json:"character"`
			ProtectedCharacter struct {
				Href string `json:"href"`
			} `json:"protected_character"`
			Name  string `json:"name"`
			ID    int    `json:"id"`
			Realm struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
				Slug string `json:"slug"`
			} `json:"realm"`
			PlayableClass struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"playable_class"`
			PlayableRace struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"playable_race"`
			Gender struct {
				Type string `json:"type"`
				Name string `json:"name"`
			} `json:"gender"`
			Faction struct {
				Type string `json:"type"`
				Name string `json:"name"`
			} `json:"faction"`
			Level int `json:"level"`
		} `json:"characters"`
	} `json:"wow_accounts"`
	Collections struct {
		Href string `json:"href"`
	} `json:"collections"`
}

AccountProfileSummary structure

type ActiveTitle

type ActiveTitle struct {
	Key struct {
		Href string `json:"href"`
	} `json:"key"`
	Name          string `json:"name"`
	ID            int    `json:"id"`
	DisplayString string `json:"display_string"`
}

ActiveTitle structure

type ActiveTitlePreRev24

type ActiveTitlePreRev24 struct {
	ActiveTitle string `json:"active_title"`
}

ActiveTitlePreRev24 structure

type Bracket

type Bracket string

Bracket type

const (
	Bracket2v2 Bracket = "2v2"
	Bracket3v3 Bracket = "3v3"
	BracketRBG Bracket = "rbg"
)

Bracket field for PVP API calls

type CharacterAchievementsStatistics

type CharacterAchievementsStatistics struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	Categories []struct {
		ID            int    `json:"id"`
		Name          string `json:"name"`
		SubCategories []struct {
			ID         int        `json:"id"`
			Name       string     `json:"name"`
			Statistics Statistics `json:"statistics"`
		} `json:"sub_categories,omitempty"`
		Statistics Statistics `json:"statistics,omitempty"`
	} `json:"categories"`
}

CharacterAchievementsStatistics structure

type CharacterAchievementsSummary

type CharacterAchievementsSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	TotalQuantity int `json:"total_quantity"`
	TotalPoints   int `json:"total_points"`
	Achievements  []struct {
		ID          int `json:"id,omitempty"`
		Achievement struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"achievement"`
		Criteria struct {
			ID            int           `json:"id"`
			Amount        float64       `json:"amount"`
			IsCompleted   bool          `json:"is_completed"`
			ChildCriteria ChildCriteria `json:"child_criteria,omitempty"`
		} `json:"criteria,omitempty"`
		CompleteTimestamp int64 `json:"completed_timestamp"`
	} `json:"achievements"`
	CategoryProgress []struct {
		Category struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"category"`
		Quantity int `json:"quantity"`
		Points   int `json:"points"`
	} `json:"category_progress"`
	RecentEvents []struct {
		Achievement struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"achievement"`
		Timestamp int64 `json:"timestamp"`
	} `json:"recent_events"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
}

CharacterAchievementsSummary structure

type CharacterAppearanceSummary

type CharacterAppearanceSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	PlayableRace struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"playable_race"`
	PlayableClass struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"playable_class"`
	ActiveSpec struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"active_spec"`
	Gender struct {
		Type string `json:"type"`
		Name string `json:"name"`
	} `json:"gender"`
	Faction struct {
		Type string `json:"type"`
		Name string `json:"name"`
	} `json:"faction"`
	GuildCrest struct {
		Emblem struct {
			ID    int `json:"id"`
			Media struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
			} `json:"media"`
			Color struct {
				ID   int `json:"id"`
				Rgba struct {
					R int     `json:"r"`
					G int     `json:"g"`
					B int     `json:"b"`
					A float64 `json:"a"`
				} `json:"rgba"`
			} `json:"color"`
		} `json:"emblem"`
		Border struct {
			ID    int `json:"id"`
			Media struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
			} `json:"media"`
			Color struct {
				ID   int `json:"id"`
				Rgba struct {
					R int     `json:"r"`
					G int     `json:"g"`
					B int     `json:"b"`
					A float64 `json:"a"`
				} `json:"rgba"`
			} `json:"color"`
		} `json:"border"`
		Background struct {
			Color struct {
				ID   int `json:"id"`
				Rgba struct {
					R int     `json:"r"`
					G int     `json:"g"`
					B int     `json:"b"`
					A float64 `json:"a"`
				} `json:"rgba"`
			} `json:"color"`
		} `json:"background"`
	} `json:"guild_crest"`
	Appearance struct {
		FaceVariation        int   `json:"face_variation"`
		SkinColor            int   `json:"skin_color"`
		HairVariation        int   `json:"hair_variation"`
		HairColor            int   `json:"hair_color"`
		FeatureVariation     int   `json:"feature_variation"`
		CustomDisplayOptions []int `json:"custom_display_options"`
	} `json:"appearance"`
	Items []struct {
		ID   int `json:"id"`
		Slot struct {
			Type string `json:"type"`
			Name string `json:"name"`
		} `json:"slot"`
		Enchant                  int `json:"enchant"`
		ItemAppearanceModifierID int `json:"item_appearance_modifier_id"`
		InternalSlotID           int `json:"internal_slot_id"`
		Subclass                 int `json:"subclass"`
	} `json:"items"`
}

CharacterAppearanceSummary structure

type CharacterCollectionsIndex

type CharacterCollectionsIndex struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Pets struct {
		Href string `json:"href"`
	} `json:"pets"`
	Mounts struct {
		Href string `json:"href"`
	} `json:"mounts"`
}

CharacterCollectionsIndex structure

type CharacterCompletedQuests

type CharacterCompletedQuests struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	Quests []struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"quests"`
}

CharacterCompletedQuests structure

type CharacterDungeons

type CharacterDungeons struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Expansions []struct {
		Expansion struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"expansion"`
		Instances []struct {
			Instance struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"instance"`
			Modes []struct {
				Difficulty struct {
					Type string `json:"type"`
					Name string `json:"name"`
				} `json:"difficulty"`
				Status struct {
					Type string `json:"type"`
					Name string `json:"name"`
				} `json:"status"`
				Progress struct {
					CompletedCount int `json:"completed_count"`
					TotalCount     int `json:"total_count"`
					Encounters     []struct {
						Encounter struct {
							Key struct {
								Href string `json:"href"`
							} `json:"key"`
							Name string `json:"name"`
							ID   int    `json:"id"`
						} `json:"encounter"`
						CompletedCount    int   `json:"completed_count"`
						LastKillTimestamp int64 `json:"last_kill_timestamp"`
					} `json:"encounters"`
				} `json:"progress"`
			} `json:"modes"`
		} `json:"instances"`
	} `json:"expansions"`
}

CharacterDungeons structure

type CharacterEncountersSummary

type CharacterEncountersSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	Dungeons struct {
		Href string `json:"href"`
	} `json:"dungeons"`
	Raids struct {
		Href string `json:"href"`
	} `json:"raids"`
}

CharacterEncountersSummary structure

type CharacterEquipmentSummary

type CharacterEquipmentSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	EquippedItems []struct {
		Item struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			ID int `json:"id"`
		} `json:"item"`
		Slot struct {
			Type string `json:"type"`
			Name string `json:"name"`
		} `json:"slot"`
		Quantity  int   `json:"quantity"`
		Context   int   `json:"context"`
		BonusList []int `json:"bonus_list"`
		Quality   struct {
			Type string `json:"type"`
			Name string `json:"name"`
		} `json:"quality"`
		Name                 string `json:"name"`
		ModifiedAppearanceID int    `json:"modified_appearance_id,omitempty"`
		AzeriteDetails       struct {
			SelectedPowers []struct {
				ID           int `json:"id"`
				Tier         int `json:"tier"`
				SpellTooltip struct {
					Spell struct {
						Key struct {
							Href string `json:"href"`
						} `json:"key"`
						Name string `json:"name"`
						ID   int    `json:"id"`
					} `json:"spell"`
					Description string `json:"description"`
					CastTime    string `json:"cast_time"`
				} `json:"spell_tooltip"`
				IsDisplayHidden bool `json:"is_display_hidden,omitempty"`
			} `json:"selected_powers"`
			SelectedPowersString  string  `json:"selected_powers_string"`
			PercentageToNextLevel float64 `json:"percentage_to_next_level"`
			SelectedEssences      []struct {
				Slot             int `json:"slot"`
				Rank             int `json:"rank"`
				MainSpellTooltip struct {
					Spell struct {
						Key struct {
							Href string `json:"href"`
						} `json:"key"`
						Name string `json:"name"`
						ID   int    `json:"id"`
					} `json:"spell"`
					Description string `json:"description"`
					CastTime    string `json:"cast_time"`
					Range       string `json:"range"`
				} `json:"main_spell_tooltip,omitempty"`
				PassiveSpellTooltip struct {
					Spell struct {
						Key struct {
							Href string `json:"href"`
						} `json:"key"`
						Name string `json:"name"`
						ID   int    `json:"id"`
					} `json:"spell"`
					Description string `json:"description"`
					CastTime    string `json:"cast_time"`
				} `json:"passive_spell_tooltip"`
				Essence struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					Name string `json:"name"`
					ID   int    `json:"id"`
				} `json:"essence"`
				Media struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					ID int `json:"id"`
				} `json:"media"`
			} `json:"selected_essences"`
			Level struct {
				Value         int    `json:"value"`
				DisplayString string `json:"display_string"`
			} `json:"level"`
		} `json:"azerite_details,omitempty"`
		Media struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			ID int `json:"id"`
		} `json:"media"`
		ItemClass struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"item_class"`
		ItemSubclass struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"item_subclass"`
		InventoryType struct {
			Type string `json:"type"`
			Name string `json:"name"`
		} `json:"inventory_type"`
		Binding struct {
			Type string `json:"type"`
			Name string `json:"name"`
		} `json:"binding"`
		Armor struct {
			Value   int `json:"value"`
			Display struct {
				DisplayString string `json:"display_string"`
				Color         struct {
					R int     `json:"r"`
					G int     `json:"g"`
					B int     `json:"b"`
					A float64 `json:"a"`
				} `json:"color"`
			} `json:"display"`
		} `json:"armor,omitempty"`
		Stats []struct {
			Type struct {
				Type string `json:"type"`
				Name string `json:"name"`
			} `json:"type"`
			Value   int `json:"value"`
			Display struct {
				DisplayString string `json:"display_string"`
				Color         struct {
					R int     `json:"r"`
					G int     `json:"g"`
					B int     `json:"b"`
					A float64 `json:"a"`
				} `json:"color"`
			} `json:"display"`
			IsNegated bool `json:"is_negated,omitempty"`
		} `json:"stats"`
		Level struct {
			Value         int    `json:"value"`
			DisplayString string `json:"display_string"`
		} `json:"level"`
		Transmog struct {
			Item struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"item"`
			DisplayString            string `json:"display_string"`
			ItemModifiedAppearanceID int    `json:"item_modified_appearance_id"`
		} `json:"transmog,omitempty"`
		Durability struct {
			Value         int    `json:"value"`
			DisplayString string `json:"display_string"`
		} `json:"durability,omitempty"`
		NameDescription struct {
			DisplayString string `json:"display_string"`
			Color         struct {
				R int     `json:"r"`
				G int     `json:"g"`
				B int     `json:"b"`
				A float64 `json:"a"`
			} `json:"color"`
		} `json:"name_description,omitempty"`
		UniqueEquipped string `json:"unique_equipped,omitempty"`
		Spells         []struct {
			Spell struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"spell"`
			Description  string `json:"description"`
			DisplayColor struct {
				R int     `json:"r"`
				G int     `json:"g"`
				B int     `json:"b"`
				A float64 `json:"a"`
			} `json:"display_color"`
		} `json:"spells,omitempty"`
		Description      string `json:"description,omitempty"`
		IsSubclassHidden bool   `json:"is_subclass_hidden,omitempty"`
		Sockets          []struct {
			SocketType struct {
				Type string `json:"type"`
				Name string `json:"name"`
			} `json:"socket_type"`
			Item struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"item"`
			DisplayString string `json:"display_string"`
			Media         struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				ID int `json:"id"`
			} `json:"media"`
		} `json:"sockets,omitempty"`
		SellPrice struct {
			Value          int `json:"value"`
			DisplayStrings struct {
				Header string `json:"header"`
				Gold   string `json:"gold"`
				Silver string `json:"silver"`
				Copper string `json:"copper"`
			} `json:"display_strings"`
		} `json:"sell_price,omitempty"`
		IsCorrupted  bool `json:"is_corrupted,omitempty"`
		Enchantments []struct {
			DisplayString string `json:"display_string"`
			SourceItem    struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"source_item"`
			EnchantmentID   int `json:"enchantment_id"`
			EnchantmentSlot struct {
				ID   int    `json:"id"`
				Type string `json:"type"`
			} `json:"enchantment_slot"`
		} `json:"enchantments,omitempty"`
		LimitCategory string `json:"limit_category,omitempty"`
		Requirements  struct {
			Level struct {
				Value         int    `json:"value"`
				DisplayString string `json:"display_string"`
			} `json:"level"`
			Faction struct {
				Value struct {
					Type string `json:"type"`
					Name string `json:"name"`
				} `json:"value"`
				DisplayString string `json:"display_string"`
			} `json:"faction"`
			Skill struct {
				Profession struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					Name string `json:"name"`
					ID   int    `json:"id"`
				} `json:"profession"`
				Level         int    `json:"level"`
				DisplayString string `json:"display_string"`
			} `json:"skill"`
		} `json:"requirements,omitempty"`
		Weapon struct {
			Damage struct {
				MinValue      int    `json:"min_value"`
				MaxValue      int    `json:"max_value"`
				DisplayString string `json:"display_string"`
				DamageClass   struct {
					Type string `json:"type"`
					Name string `json:"name"`
				} `json:"damage_class"`
			} `json:"damage"`
			AttackSpeed struct {
				Value         int    `json:"value"`
				DisplayString string `json:"display_string"`
			} `json:"attack_speed"`
			Dps struct {
				Value         float64 `json:"value"`
				DisplayString string  `json:"display_string"`
			} `json:"dps"`
		} `json:"weapon,omitempty"`
	} `json:"equipped_items"`
}

CharacterEquipmentSummary structure

type CharacterHunterPetsSummary

type CharacterHunterPetsSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	HunterPets []struct {
		Name     string `json:"name"`
		Level    int    `json:"level"`
		Creature struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"creature"`
		Slot            int  `json:"slot"`
		IsActive        bool `json:"is_active"`
		CreatureDisplay struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
		} `json:"creature_display"`
	} `json:"hunter_pets"`
}

CharacterHunterPetsSummary structure

type CharacterMediaSummary

type CharacterMediaSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	Assets []struct {
		Key   string `json:"key"`
		Value string `json:"value"`
	} `json:"assets"`
}

CharacterMediaSummary structure

type CharacterMountsCollectionSummary

type CharacterMountsCollectionSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Mounts []struct {
		Mount struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"mount"`
		IsFavorite bool `json:"is_favorite,omitempty"`
	} `json:"mounts"`
}

CharacterMountsCollectionSummary structure

type CharacterMythicKeystoneProfile

type CharacterMythicKeystoneProfile struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Href string `json:"href"`
	} `json:"character"`
	CurrentPeriod struct {
		Period struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			ID int `json:"id"`
		} `json:"period"`
		BestRuns []struct {
			CompletedTimestamp int64 `json:"completed_timestamp"`
			Duration           int   `json:"duration"`
			KeystoneLevel      int   `json:"keystone_level"`
			KeystoneAffixes    []struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"keystone_affixes"`
			Members []struct {
				Character struct {
					Name  string `json:"name"`
					ID    int    `json:"id"`
					Realm struct {
						Key struct {
							Href string `json:"href"`
						} `json:"key"`
						ID   int    `json:"id"`
						Slug string `json:"slug"`
					} `json:"realm"`
				} `json:"character"`
				Specialization struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					Name string `json:"name"`
					ID   int    `json:"id"`
				} `json:"specialization"`
				Race struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					Name string `json:"name"`
					ID   int    `json:"id"`
				} `json:"race"`
				EquippedItemLevel int `json:"equipped_item_level"`
			} `json:"members"`
			Dungeon struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"dungeon"`
			IsCompletedWithinTime bool `json:"is_completed_within_time"`
		} `json:"best_runs"`
	} `json:"current_period"`
	Seasons []struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		ID int `json:"id"`
	} `json:"seasons"`
	CurrentMythicRating struct {
		Color struct {
			R float64 `json:"r"`
			G float64 `json:"g"`
			B float64 `json:"b"`
			A float64 `json:"a"`
		} `json:"color"`
		Rating float64 `json:"rating"`
	} `json:"current_mythic_rating"`
}

CharacterMythicKeystoneProfile structure

type CharacterMythicKeystoneProfileSeason

type CharacterMythicKeystoneProfileSeason struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Season struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		ID int `json:"id"`
	} `json:"season"`
	BestRuns []struct {
		CompletedTimestamp int64 `json:"completed_timestamp"`
		Duration           int   `json:"duration"`
		KeystoneLevel      int   `json:"keystone_level"`
		KeystoneAffixes    []struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"keystone_affixes"`
		Members []struct {
			Character struct {
				Name  string `json:"name"`
				ID    int    `json:"id"`
				Realm struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					ID   int    `json:"id"`
					Slug string `json:"slug"`
				} `json:"realm"`
			} `json:"character"`
			Specialization struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"specialization"`
			Race struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"race"`
			EquippedItemLevel int `json:"equipped_item_level"`
		} `json:"members"`
		Dungeon struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"dungeon"`
		IsCompletedWithinTime bool `json:"is_completed_within_time"`
	} `json:"best_runs"`
	Character struct {
		Href string `json:"href"`
	} `json:"character"`
}

CharacterMythicKeystoneProfileSeason structure

type CharacterPetsCollectionSummary

type CharacterPetsCollectionSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Pets []struct {
		Species struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"species"`
		Level   int `json:"level"`
		Quality struct {
			Type string `json:"type"`
			Name string `json:"name"`
		} `json:"quality"`
		Stats struct {
			BreedID int `json:"breed_id"`
			Health  int `json:"health"`
			Power   int `json:"power"`
			Speed   int `json:"speed"`
		} `json:"stats"`
		IsFavorite bool `json:"is_favorite,omitempty"`
	} `json:"pets"`
	UnlockedBattlePetSlots int `json:"unlocked_battle_pet_slots"`
}

CharacterPetsCollectionSummary structure

type CharacterProfessionsSummary

type CharacterProfessionsSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	Primaries []struct {
		Profession struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"profession"`
		Tiers []struct {
			SkillPoints    int `json:"skill_points"`
			MaxSkillPoints int `json:"max_skill_points"`
			Tier           struct {
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"tier"`
			KnownRecipes []struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"known_recipes"`
		} `json:"tiers"`
	} `json:"primaries"`
	Secondaries []struct {
		Profession struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"profession"`
		Tiers []struct {
			SkillPoints    int `json:"skill_points"`
			MaxSkillPoints int `json:"max_skill_points"`
			Tier           struct {
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"tier"`
			KnownRecipes []struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"known_recipes"`
		} `json:"tiers"`
	} `json:"secondaries"`
}

CharacterProfessionsSummary structure

type CharacterProfileStatus

type CharacterProfileStatus struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	ID      int  `json:"id"`
	IsValid bool `json:"is_valid"`
}

CharacterProfileStatus structure

type CharacterProfileSummary

type CharacterProfileSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	ID     int    `json:"id"`
	Name   string `json:"name"`
	Gender struct {
		Type string `json:"type"`
		Name string `json:"name"`
	} `json:"gender"`
	Faction struct {
		Type string `json:"type"`
		Name string `json:"name"`
	} `json:"faction"`
	Race struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"race"`
	CharacterClass struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"character_class"`
	ActiveSpec struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"active_spec"`
	Realm struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
		Slug string `json:"slug"`
	} `json:"realm"`
	Guild struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"guild"`
	Level             int `json:"level"`
	Experience        int `json:"experience"`
	AchievementPoints int `json:"achievement_points"`
	Achievements      struct {
		Href string `json:"href"`
	} `json:"achievements"`
	Titles struct {
		Href string `json:"href"`
	} `json:"titles"`
	PvpSummary struct {
		Href string `json:"href"`
	} `json:"pvp_summary"`
	RaidProgression struct {
		Href string `json:"href"`
	} `json:"raid_progression"`
	Media struct {
		Href string `json:"href"`
	} `json:"media"`
	LastLoginTimestamp int64 `json:"last_login_timestamp"`
	AverageItemLevel   int   `json:"average_item_level"`
	EquippedItemLevel  int   `json:"equipped_item_level"`
	Specializations    struct {
		Href string `json:"href"`
	} `json:"specializations"`
	Statistics struct {
		Href string `json:"href"`
	} `json:"statistics"`
	MythicKeystoneProfile struct {
		Href string `json:"href"`
	} `json:"mythic_keystone_profile"`
	Equipment struct {
		Href string `json:"href"`
	} `json:"equipment"`
	Appearance struct {
		Href string `json:"href"`
	} `json:"appearance"`
	Collections struct {
		Href string `json:"href"`
	} `json:"collections"`
	ActiveTitle ActiveTitle `json:"active_title"`
	Reputations struct {
		Href string `json:"href"`
	} `json:"reputations"`
}

CharacterProfileSummary structure

type CharacterProfileSummaryPreRev24

type CharacterProfileSummaryPreRev24 struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	ID     int    `json:"id"`
	Name   string `json:"name"`
	Gender struct {
		Type string `json:"type"`
		Name string `json:"name"`
	} `json:"gender"`
	Faction struct {
		Type string `json:"type"`
		Name string `json:"name"`
	} `json:"faction"`
	Race struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"race"`
	CharacterClass struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"character_class"`
	ActiveSpec struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"active_spec"`
	Realm struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
		Slug string `json:"slug"`
	} `json:"realm"`
	Guild struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"guild"`
	Level             int `json:"level"`
	Experience        int `json:"experience"`
	AchievementPoints int `json:"achievement_points"`
	Achievements      struct {
		Href string `json:"href"`
	} `json:"achievements"`
	Titles struct {
		Href string `json:"href"`
	} `json:"titles"`
	PvpSummary struct {
		Href string `json:"href"`
	} `json:"pvp_summary"`
	RaidProgression struct {
		Href string `json:"href"`
	} `json:"raid_progression"`
	Media struct {
		Href string `json:"href"`
	} `json:"media"`
	LastLoginTimestamp int64 `json:"last_login_timestamp"`
	AverageItemLevel   int   `json:"average_item_level"`
	EquippedItemLevel  int   `json:"equipped_item_level"`
	Specializations    struct {
		Href string `json:"href"`
	} `json:"specializations"`
	Statistics struct {
		Href string `json:"href"`
	} `json:"statistics"`
	MythicKeystoneProfile struct {
		Href string `json:"href"`
	} `json:"mythic_keystone_profile"`
	Equipment struct {
		Href string `json:"href"`
	} `json:"equipment"`
	Appearance struct {
		Href string `json:"href"`
	} `json:"appearance"`
	Collections struct {
		Href string `json:"href"`
	} `json:"collections"`
	Reputations struct {
		Href string `json:"href"`
	} `json:"reputations"`
}

CharacterProfileSummaryPreRev24 structure

type CharacterPvPBracketStatistics

type CharacterPvPBracketStatistics struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	Faction struct {
		Type string `json:"type"`
		Name string `json:"name"`
	} `json:"faction"`
	Bracket struct {
		ID   int    `json:"id"`
		Type string `json:"type"`
	} `json:"bracket"`
	Rating int `json:"rating"`
	Season struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		ID int `json:"id"`
	} `json:"season"`
	Tier struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		ID int `json:"id"`
	} `json:"tier"`
	SeasonMatchStatistics struct {
		Played int `json:"played"`
		Won    int `json:"won"`
		Lost   int `json:"lost"`
	} `json:"season_match_statistics"`
	WeeklyMatchStatistics struct {
		Played int `json:"played"`
		Won    int `json:"won"`
		Lost   int `json:"lost"`
	} `json:"weekly_match_statistics"`
}

CharacterPvPBracketStatistics structure

type CharacterPvPSummary

type CharacterPvPSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Brackets []struct {
		Href string `json:"href"`
	} `json:"brackets"`
	HonorLevel       int `json:"honor_level"`
	PvpMapStatistics []struct {
		WorldMap struct {
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"world_map"`
		MatchStatistics struct {
			Played int `json:"played"`
			Won    int `json:"won"`
			Lost   int `json:"lost"`
		} `json:"match_statistics"`
	} `json:"pvp_map_statistics"`
	HonorableKills int `json:"honorable_kills"`
	Character      struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
}

CharacterPvPSummary structure

type CharacterQuests

type CharacterQuests struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	InProgress []struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"in_progress"`
	Completed struct {
		Href string `json:"href"`
	} `json:"completed"`
}

CharacterQuests structure

type CharacterRaids

type CharacterRaids struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	Expansions []struct {
		Expansion struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"expansion"`
		Instances []struct {
			Instance struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"instance"`
			Modes []struct {
				Difficulty struct {
					Type string `json:"type"`
					Name string `json:"name"`
				} `json:"difficulty"`
				Status struct {
					Type string `json:"type"`
					Name string `json:"name"`
				} `json:"status"`
				Progress struct {
					CompletedCount int `json:"completed_count"`
					TotalCount     int `json:"total_count"`
					Encounters     []struct {
						Encounter struct {
							Key struct {
								Href string `json:"href"`
							} `json:"key"`
							Name string `json:"name"`
							ID   int    `json:"id"`
						} `json:"encounter"`
						CompletedCount    int   `json:"completed_count"`
						LastKillTimestamp int64 `json:"last_kill_timestamp"`
					} `json:"encounters"`
				} `json:"progress"`
			} `json:"modes"`
		} `json:"instances"`
	} `json:"expansions"`
}

CharacterRaids structure

type CharacterReputationsSummary

type CharacterReputationsSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	Reputations []struct {
		Faction struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"faction"`
		Standing struct {
			Raw   int    `json:"raw"`
			Value int    `json:"value"`
			Max   int    `json:"max"`
			Tier  int    `json:"tier"`
			Name  string `json:"name"`
		} `json:"standing"`
		Paragon struct {
			Raw   int `json:"raw"`
			Value int `json:"value"`
			Max   int `json:"max"`
		} `json:"paragon,omitempty"`
	} `json:"reputations"`
}

CharacterReputationsSummary structure

type CharacterSoulbinds

type CharacterSoulbinds struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	ChosenCovenant struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"chosen_covenant"`
	RenownLevel int `json:"renown_level"`
	Soulbinds   []struct {
		Soulbind struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"soulbind"`
		Traits []struct {
			Trait struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"trait,omitempty"`
			Tier          int `json:"tier"`
			DisplayOrder  int `json:"display_order"`
			ConduitSocket struct {
				Type struct {
					Type string `json:"type"`
					Name string `json:"name"`
				} `json:"type"`
				Socket struct {
					Conduit struct {
						Key struct {
							Href string `json:"href"`
						} `json:"key"`
						Name string `json:"name"`
						ID   int    `json:"id"`
					} `json:"conduit"`
					Rank int `json:"rank"`
				} `json:"socket"`
			} `json:"conduit_socket,omitempty"`
		} `json:"traits"`
		IsActive bool `json:"is_active,omitempty"`
	} `json:"soulbinds"`
}

CharacterSoulbinds structure

type CharacterSpecializationsSummary

type CharacterSpecializationsSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Specializations []struct {
		Specialization struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"specialization"`
		Talents []struct {
			Talent struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"talent"`
			SpellTooltip struct {
				Spell struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					Name string `json:"name"`
					ID   int    `json:"id"`
				} `json:"spell"`
				Description string      `json:"description"`
				CastTime    string      `json:"cast_time"`
				PowerCost   interface{} `json:"power_cost"`
				Range       string      `json:"range"`
				Cooldown    string      `json:"cooldown"`
			} `json:"spell_tooltip,omitempty"`
		} `json:"talents"`
		Glyphs []struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"glyphs,omitempty"`
		PvpTalentSlots []struct {
			Selected struct {
				Talent struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					Name string `json:"name"`
					ID   int    `json:"id"`
				} `json:"talent"`
				SpellTooltip struct {
					Spell struct {
						Key struct {
							Href string `json:"href"`
						} `json:"key"`
						Name string `json:"name"`
						ID   int    `json:"id"`
					} `json:"spell"`
					Description string `json:"description"`
					CastTime    string `json:"cast_time"`
					Cooldown    string `json:"cooldown"`
				} `json:"spell_tooltip"`
			} `json:"selected"`
			SlotNumber int `json:"slot_number"`
		} `json:"pvp_talent_slots,omitempty"`
	} `json:"specializations"`
	ActiveSpecialization struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"active_specialization"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
}

CharacterSpecializationsSummary structure

type CharacterStatisticsSummary

type CharacterStatisticsSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Health    int `json:"health"`
	Power     int `json:"power"`
	PowerType struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"power_type"`
	Speed struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
	} `json:"speed"`
	Strength struct {
		Base      int `json:"base"`
		Effective int `json:"effective"`
	} `json:"strength"`
	Agility struct {
		Base      int `json:"base"`
		Effective int `json:"effective"`
	} `json:"agility"`
	Intellect struct {
		Base      int `json:"base"`
		Effective int `json:"effective"`
	} `json:"intellect"`
	Stamina struct {
		Base      int `json:"base"`
		Effective int `json:"effective"`
	} `json:"stamina"`
	MeleeCrit struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"melee_crit"`
	MeleeHaste struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"melee_haste"`
	Mastery struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"mastery"`
	BonusArmor int `json:"bonus_armor"`
	Lifesteal  struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"lifesteal"`
	Versatility                 float64 `json:"versatility"`
	VersatilityDamageDoneBonus  float64 `json:"versatility_damage_done_bonus"`
	VersatilityHealingDoneBonus float64 `json:"versatility_healing_done_bonus"`
	VersatilityDamageTakenBonus float64 `json:"versatility_damage_taken_bonus"`
	Avoidance                   struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
	} `json:"avoidance"`
	AttackPower       int     `json:"attack_power"`
	MainHandDamageMin float64 `json:"main_hand_damage_min"`
	MainHandDamageMax float64 `json:"main_hand_damage_max"`
	MainHandSpeed     float64 `json:"main_hand_speed"`
	MainHandDps       float64 `json:"main_hand_dps"`
	OffHandDamageMin  float64 `json:"off_hand_damage_min"`
	OffHandDamageMax  float64 `json:"off_hand_damage_max"`
	OffHandSpeed      float64 `json:"off_hand_speed"`
	OffHandDps        float64 `json:"off_hand_dps"`
	SpellPower        int     `json:"spell_power"`
	SpellPenetration  int     `json:"spell_penetration"`
	SpellCrit         struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"spell_crit"`
	ManaRegen       float64 `json:"mana_regen"`
	ManaRegenCombat float64 `json:"mana_regen_combat"`
	Armor           struct {
		Base      int `json:"base"`
		Effective int `json:"effective"`
	} `json:"armor"`
	Dodge struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"dodge"`
	Parry struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"parry"`
	Block struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"block"`
	RangedCrit struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"ranged_crit"`
	RangedHaste struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"ranged_haste"`
	SpellHaste struct {
		Rating      int     `json:"rating"`
		RatingBonus float64 `json:"rating_bonus"`
		Value       float64 `json:"value"`
	} `json:"spell_haste"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
}

CharacterStatisticsSummary structure

type CharacterTitlesSummary

type CharacterTitlesSummary struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Character struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"character"`
	ActiveTitle struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name          string `json:"name"`
		ID            int    `json:"id"`
		DisplayString string `json:"display_string"`
	} `json:"active_title"`
	Titles []struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
	} `json:"titles"`
}

CharacterTitlesSummary structure

type ChildCriteria

type ChildCriteria []struct {
	ID            int           `json:"id"`
	Amount        float64       `json:"amount"`
	IsCompleted   bool          `json:"is_completed"`
	ChildCriteria ChildCriteria `json:"child_criteria,omitempty"`
}

ChildCriteria struct used for representing nested Achievement criteria

type Guild

type Guild struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	ID      int    `json:"id"`
	Name    string `json:"name"`
	Faction struct {
		Type string `json:"type"`
		Name string `json:"name"`
	} `json:"faction"`
	AchievementPoints int `json:"achievement_points"`
	MemberCount       int `json:"member_count"`
	Realm             struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name string `json:"name"`
		ID   int    `json:"id"`
		Slug string `json:"slug"`
	} `json:"realm"`
	Crest struct {
		Emblem struct {
			ID    int `json:"id"`
			Media struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
			} `json:"media"`
			Color struct {
				ID   int `json:"id"`
				Rgba struct {
					R int     `json:"r"`
					G int     `json:"g"`
					B int     `json:"b"`
					A float64 `json:"a"`
				} `json:"rgba"`
			} `json:"color"`
		} `json:"emblem"`
		Border struct {
			ID    int `json:"id"`
			Media struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
			} `json:"media"`
			Color struct {
				ID   int `json:"id"`
				Rgba struct {
					R int     `json:"r"`
					G int     `json:"g"`
					B int     `json:"b"`
					A float64 `json:"a"`
				} `json:"rgba"`
			} `json:"color"`
		} `json:"border"`
		Background struct {
			Color struct {
				ID   int `json:"id"`
				Rgba struct {
					R int     `json:"r"`
					G int     `json:"g"`
					B int     `json:"b"`
					A float64 `json:"a"`
				} `json:"rgba"`
			} `json:"color"`
		} `json:"background"`
	} `json:"crest"`
	Roster struct {
		Href string `json:"href"`
	} `json:"roster"`
	Achievements struct {
		Href string `json:"href"`
	} `json:"achievements"`
	CreatedTimestamp int64 `json:"created_timestamp"`
}

Guild structure

type GuildAchievements

type GuildAchievements struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Guild struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"guild"`
	TotalQuantity int `json:"total_quantity"`
	TotalPoints   int `json:"total_points"`
	Achievements  []struct {
		ID          int `json:"id"`
		Achievement struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"achievement"`
		Criteria struct {
			ID            int     `json:"id"`
			Amount        float64 `json:"amount"`
			IsCompleted   bool    `json:"is_completed"`
			ChildCriteria []struct {
				ID          int     `json:"id"`
				Amount      float64 `json:"amount"`
				IsCompleted bool    `json:"is_completed"`
			} `json:"child_criteria"`
		} `json:"criteria,omitempty"`
		CompletedTimestamp int64 `json:"completed_timestamp,omitempty"`
	} `json:"achievements"`
	CategoryProgress []struct {
		Category struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"category"`
		Quantity int `json:"quantity"`
		Points   int `json:"points"`
	} `json:"category_progress"`
	RecentEvents []struct {
		Achievement struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
		} `json:"achievement"`
		Timestamp int64 `json:"timestamp"`
	} `json:"recent_events"`
}

GuildAchievements structure

type GuildActivity

type GuildActivity struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Guild struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
		Faction struct {
			Type string `json:"type"`
			Name string `json:"name"`
		} `json:"faction"`
	} `json:"guild"`
	Activities []struct {
		CharacterAchievement struct {
			Character struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name  string `json:"name"`
				ID    int    `json:"id"`
				Realm struct {
					Key struct {
						Href string `json:"href"`
					} `json:"key"`
					Name string `json:"name"`
					ID   int    `json:"id"`
					Slug string `json:"slug"`
				} `json:"realm"`
			} `json:"character"`
			Achievement struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"achievement"`
		} `json:"character_achievement,omitempty"`
		Activity struct {
			Type string `json:"type"`
		} `json:"activity"`
		Timestamp          int64 `json:"timestamp"`
		EncounterCompleted struct {
			Encounter struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				Name string `json:"name"`
				ID   int    `json:"id"`
			} `json:"encounter"`
			Mode struct {
				Type string `json:"type"`
				Name string `json:"name"`
			} `json:"mode"`
		} `json:"encounter_completed,omitempty"`
	} `json:"activities"`
}

GuildActivity structure

type GuildRoster

type GuildRoster struct {
	Links struct {
		Self struct {
			Href string `json:"href"`
		} `json:"self"`
	} `json:"_links"`
	Guild struct {
		Key struct {
			Href string `json:"href"`
		} `json:"key"`
		Name  string `json:"name"`
		ID    int    `json:"id"`
		Realm struct {
			Key struct {
				Href string `json:"href"`
			} `json:"key"`
			Name string `json:"name"`
			ID   int    `json:"id"`
			Slug string `json:"slug"`
		} `json:"realm"`
	} `json:"guild"`
	Members []struct {
		Character struct {
			Name  string `json:"name"`
			ID    int    `json:"id"`
			Realm struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				ID   int    `json:"id"`
				Slug string `json:"slug"`
			} `json:"realm"`
			Level         int `json:"level"`
			PlayableClass struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				ID int `json:"id"`
			} `json:"playable_class"`
			PlayableRace struct {
				Key struct {
					Href string `json:"href"`
				} `json:"key"`
				ID int `json:"id"`
			} `json:"playable_race"`
		} `json:"character"`
		Rank int `json:"rank"`
	} `json:"members"`
}

GuildRoster structure

type Statistics

type Statistics []struct {
	ID                   int     `json:"id"`
	Name                 string  `json:"name"`
	LastUpdatedTimestamp int64   `json:"last_updated_timestamp"`
	Quantity             float64 `json:"quantity"`
	Description          string  `json:"description,omitempty"`
}

Statistics struct used for representing nested Statistics

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL