{"openapi":"3.1.0","info":{"title":"Game reference API","version":"1.0.0","description":"Read-only game data, free for anyone to use. Values are calculated from game files and may differ in-game. Limited to 120 requests a minute from one address; going over returns 429 with a Retry-After header. Answers are cached until the next game update, so there's no need to fetch the same thing twice. NPC, quest, and location data that comes from QuestieDB is GPL-3.0 and needs to be credited to it."},"servers":[{"url":"https://www.wowhelm.com/api/v1"}],"paths":{"/games":{"get":{"summary":"List available games","parameters":[],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/feed":{"get":{"summary":"List news and blue posts","parameters":[{"name":"kind","in":"query","required":false,"description":"news or blue.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/status":{"get":{"summary":"Ruleset status in each region, checked every minute from Blizzard's server status page","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/blue-posts":{"get":{"summary":"List official Blizzard forum posts for a game, with previews and links","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"kind","in":"query","required":false,"description":"blue or news.","schema":{"type":"string"}},{"name":"author","in":"query","required":false,"description":"Author name.","schema":{"type":"string"}},{"name":"type","in":"query","required":false,"description":"topics for new threads, or replies.","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"Page number, starting at 1.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page, from 1 to 100. Defaults to 50.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/blue-posts/{id}":{"get":{"summary":"Get one official Blizzard forum post with its full text as cleaned HTML","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}":{"get":{"summary":"Get a game's current build and upcoming events","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/items":{"get":{"summary":"Browse and filter items","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"class","in":"query","required":false,"description":"Item class ID.","schema":{"type":"string"}},{"name":"sub","in":"query","required":false,"description":"Item subclass ID.","schema":{"type":"string"}},{"name":"slot","in":"query","required":false,"description":"Equipment slot name.","schema":{"type":"string"}},{"name":"q","in":"query","required":false,"description":"Comma-separated quality numbers, such as 3,4.","schema":{"type":"string"}},{"name":"min","in":"query","required":false,"description":"Minimum item level.","schema":{"type":"string"}},{"name":"max","in":"query","required":false,"description":"Maximum item level.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"n, il, rl, slot, or s.","schema":{"type":"string"}},{"name":"dir","in":"query","required":false,"description":"asc or desc.","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"Page number, starting at 1.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page, from 1 to 100. Defaults to 50.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/items/{id}":{"get":{"summary":"Get an item with its tooltip, effects, similar items, and change history","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/spells":{"get":{"summary":"Browse and filter spells","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"source","in":"query","required":false,"description":"Class ability, Talent, Profession, Mount or companion, Item effect, or Other.","schema":{"type":"string"}},{"name":"class","in":"query","required":false,"description":"Class name.","schema":{"type":"string"}},{"name":"school","in":"query","required":false,"description":"School bit: 1, 2, 4, 8, 16, 32, or 64.","schema":{"type":"string"}},{"name":"type","in":"query","required":false,"description":"Instant, Cast time, or Passive.","schema":{"type":"string"}},{"name":"cd","in":"query","required":false,"description":"1 for spells with a cooldown.","schema":{"type":"string"}},{"name":"min","in":"query","required":false,"description":"Minimum level.","schema":{"type":"string"}},{"name":"max","in":"query","required":false,"description":"Maximum level.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"n, school, cast, cd, lvl, or src.","schema":{"type":"string"}},{"name":"dir","in":"query","required":false,"description":"asc or desc.","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"Page number, starting at 1.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page, from 1 to 100. Defaults to 50.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/spells/{id}":{"get":{"summary":"Get a spell with its tooltip, effects, uses, and change history","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/npcs":{"get":{"summary":"Browse and filter NPCs","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"zone","in":"query","required":false,"description":"Zone name.","schema":{"type":"string"}},{"name":"side","in":"query","required":false,"description":"Alliance, Horde, Friendly to both, or Hostile.","schema":{"type":"string"}},{"name":"rank","in":"query","required":false,"description":"Elite, Rare, Rare Elite, or Boss.","schema":{"type":"string"}},{"name":"role","in":"query","required":false,"description":"vendor or trainer.","schema":{"type":"string"}},{"name":"min","in":"query","required":false,"description":"Minimum level.","schema":{"type":"string"}},{"name":"max","in":"query","required":false,"description":"Maximum level.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"n, lvl, zone, rank, or side.","schema":{"type":"string"}},{"name":"dir","in":"query","required":false,"description":"asc or desc.","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"Page number, starting at 1.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page, from 1 to 100. Defaults to 50.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/npcs/{id}":{"get":{"summary":"Get an NPC with locations, drops, vendor items, quests, and change history","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/quests":{"get":{"summary":"Browse and filter quests","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"zone","in":"query","required":false,"description":"Zone or category name.","schema":{"type":"string"}},{"name":"side","in":"query","required":false,"description":"Alliance, Horde, or Both.","schema":{"type":"string"}},{"name":"class","in":"query","required":false,"description":"Class name.","schema":{"type":"string"}},{"name":"min","in":"query","required":false,"description":"Minimum quest level.","schema":{"type":"string"}},{"name":"max","in":"query","required":false,"description":"Maximum quest level.","schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"description":"n, lvl, req, zone, or side.","schema":{"type":"string"}},{"name":"dir","in":"query","required":false,"description":"asc or desc.","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"Page number, starting at 1.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page, from 1 to 100. Defaults to 50.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/quests/{id}":{"get":{"summary":"Get a quest with objectives, a step-by-step guide, givers, rewards, chain, and change history","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/objects/{id}":{"get":{"summary":"Get an object (chest, plant, poster, and so on) with locations, contents, and quests","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/maps":{"get":{"summary":"List maps with their images and positions on parent maps","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/maps/{id}":{"get":{"summary":"Get a map","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/addon-api":{"get":{"summary":"Search and browse the addon API","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"q","in":"query","required":false,"description":"Text in a name or signature.","schema":{"type":"string"}},{"name":"kind","in":"query","required":false,"description":"function, event, table, or ui.","schema":{"type":"string"}},{"name":"source","in":"query","required":false,"description":"documented or ui.","schema":{"type":"string"}},{"name":"system","in":"query","required":false,"description":"API system name.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"current or removed.","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"Page number, starting at 1.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page, from 1 to 100. Defaults to 50.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/addon-api/builds":{"get":{"summary":"List tracked builds with addon API change counts","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/addon-api/changes":{"get":{"summary":"List addon API changes by build, with before and after values","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"build","in":"query","required":false,"description":"A build number, or all. Defaults to the newest build with changes.","schema":{"type":"string"}},{"name":"kind","in":"query","required":false,"description":"function, event, table, or ui.","schema":{"type":"string"}},{"name":"source","in":"query","required":false,"description":"documented or ui.","schema":{"type":"string"}},{"name":"sign","in":"query","required":false,"description":"added, changed, or removed.","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"Page number, starting at 1.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page, from 1 to 100. Defaults to 50.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/addon-api/source":{"get":{"summary":"List UI source files changed in a build","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"build","in":"query","required":false,"description":"A build number. Defaults to the newest build with file changes.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/addon-api/source/{build}/{path}":{"get":{"summary":"Get one changed file's diff. URL-encode the path.","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"build","in":"path","required":true,"schema":{"type":"string"}},{"name":"path","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/addon-api/{kind}/{name}":{"get":{"summary":"Get an addon API entry (kind: function, event, table, or ui) with its definition and version history","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"kind","in":"path","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/search/suggest":{"get":{"summary":"Get search suggestions by category, best match first, with typos corrected","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"q","in":"query","required":false,"description":"What has been typed so far. At least 2 letters.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/search":{"get":{"summary":"Search items, spells, NPCs, quests, objects, and talents","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"q","in":"query","required":false,"description":"Search text. Each word matches the start of a word in the name.","schema":{"type":"string"}},{"name":"kind","in":"query","required":false,"description":"item, spell, npc, quest, object, or talent.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Up to 100.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/tooltip/{kind}/{id}":{"get":{"summary":"Get an item, spell, NPC, quest, or object tooltip","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"kind","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/tooltip/{kind}/{id}/compare":{"get":{"summary":"Compare a record's tooltip before and after its latest change","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"kind","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/talents":{"get":{"summary":"List talent trees","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/talents/{tree}":{"get":{"summary":"Get a talent tree with its layout, rules, and text","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"tree","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/talents/{tree}/build":{"get":{"summary":"Resolve a talent build code","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"tree","in":"path","required":true,"schema":{"type":"string"}},{"name":"code","in":"query","required":false,"description":"Build code from a talent link.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/builds":{"get":{"summary":"List tracked game builds","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/changes":{"get":{"summary":"List changes between builds","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"build","in":"query","required":false,"description":"A build number, or all. Defaults to the newest.","schema":{"type":"string"}},{"name":"kind","in":"query","required":false,"description":"item, spell, talent, npc, or quest.","schema":{"type":"string"}},{"name":"sign","in":"query","required":false,"description":"added, changed, or removed.","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"Page number, starting at 1.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page, from 1 to 100. Defaults to 50.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}},"/{game}/changes/recent":{"get":{"summary":"Get notable changes from the latest builds, by category, newest first","parameters":[{"name":"game","in":"path","required":true,"schema":{"type":"string"}},{"name":"recent","in":"query","required":false,"description":"all, item, ability, talent, spell (spells with no class), quest, npc, or api. Defaults to all.","schema":{"type":"string"}},{"name":"class","in":"query","required":false,"description":"Class name, for ability and talent.","schema":{"type":"string"}},{"name":"show","in":"query","required":false,"description":"Comma-separated item groups to include, which are hidden by default: quest, white, grey.","schema":{"type":"string"}},{"name":"builds","in":"query","required":false,"description":"How many of the latest builds with changes to include, up to 20. Defaults to 5.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Up to 100. Defaults to 15.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success"},"400":{"description":"Invalid input"},"404":{"description":"Not found"}}}}}}