WoW API
The game's API as wowlua knows it: every function, event and widget method of the client, with what it does, its parameters and results, and how far wowlua's emulated client implements it for your tests and debug sessions.
The reference covers the camelot flavor, the client of WoW Forever, today.
standard (retail) and vanilla (Classic Era) are coming.
10,783 results
AbbreviateLargeNumbersfunctionimplementedglobalReturns the number as short text, with large values written in thousands (K) or millions (M). · description by wowluaAbbreviateNumbersfunctionimplementedglobalReturns the number as short text, with values from 1000 on abbreviated (1.2K, 12K, 1.2M). A secret number gives secret text. · description by wowluaAcceptAreaSpiritHealfunctionguessedglobalSigns up for the Spirit Healer's resurrection timer in battlegrounds when in range.AcceptBattlefieldPortfunctionguessedglobalEnters the Battleground if the queue is ready.AcceptDuelfunctionguessedglobalAccepts a duel challenge.AcceptGroupfunctionguessedglobalAccepts the invitation from a group.AcceptGuildfunctionguessedglobalAccepts a guild invite.AcceptProposalfunctionguessedglobalEnters the Dungeon if the LFG queue is ready.AcceptQuestfunctionimplementedglobalAccepts the currently offered quest.AcceptResurrectfunctionimplementedglobalAccepts a resurrection offer.AcceptSpellConfirmationPromptfunctionguessedglobalConfirms a spell confirmation prompt (e.g. bonus loot roll).AcceptTradefunctionguessedglobalAccepts the current trade offer.AcknowledgeAutoAcceptQuestfunctionguessedglobalAcknowledges that the currently-offered auto-accept quest has been accepted by the player.AcknowledgeSurveyfunctionguessedglobalMarks the web survey offered for a closed support ticket as seen. Blizzard's ticket status frame calls it with the ticket's case index once the player has clicked the survey link. · description by wowluaAddAutoQuestPopUpfunctionguessedglobalAdds a notification to the ObjectiveTrackerFrame that a quest is available or completed.
The search covers all 7,178 functions, 1,819 events, 1,477 widget methods and 308 namespaces.
How much of the API wowlua implements
wowlua test and wowlua debug run your addon in an emulated camelot client.
The functions answer there, but the answers don't all come from the same
place, so each function and widget method has a status that says how far your
tests can rely on it:
| Status | What it means for your tests |
|---|---|
| implemented | wowlua models the system behind it: the units in the world, auras, bags, money, quests, the clock and so on. Tests set that state, with mock.spawnUnit or mock.setBag for example, and the function and its events follow, as in the game. |
| recorded | The answer was recorded from the real client and is played back for the same call. Exact for the calls that were recorded; a call that never was gets no answer. |
| guessed | The answer is worked out from Blizzard's documentation, its UI code and the function's name, and not checked against the client. Good enough for code that only needs a sensible value; check it in the game if your addon depends on the result. |
| not implemented | Only the stand-in generated from the documentation. Your addon's call fails with "<name> is not mocked", so you notice at once. |
For an event, not implemented means the emulated client never fires it by
itself. Fire it from a test with mock.fireEvent, or mock.fireUnitEvent for
a unit event. The event must be one the flavor documents, and its payload is
checked against the documentation. See
Testing your addon.
How the emulator's answers compare with the real client, and what is still missing, is in Emulator coverage.
The emulator gives 98.1% of the client's 33,727 probed answers exactly as the client gave them. All 1,477 widget methods have behaviour.
Namespaces
The functions are grouped as the game groups them: the global functions, and
namespaces such as C_Container, C_Spell or C_Timer. A namespace lists
the functions Blizzard's documentation describes and also those the client
has that the documentation leaves out.
- global functions2,102 functions769 implemented · 100 recorded · 1,233 guessed
- C_Garrison227 functions2 implemented · 0 recorded · 225 guessed
- C_TradeSkillUI146 functions70 implemented · 0 recorded · 76 guessed
- C_Commentator144 functions63 implemented · 1 recorded · 80 guessed
- C_Item121 functions31 implemented · 1 recorded · 89 guessed
- C_PvP113 functions3 implemented · 8 recorded · 102 guessed
- C_QuestLog93 functions25 implemented · 5 recorded · 63 guessed
- C_Calendar90 functions6 implemented · 1 recorded · 83 guessed
- C_LFGList88 functions31 implemented · 2 recorded · 55 guessed
- C_AuctionHouse86 functions49 implemented · 4 recorded · 33 guessed
- C_Club84 functions9 implemented · 2 recorded · 73 guessed
- C_TransmogCollection84 functions7 implemented · 10 recorded · 67 guessed
- C_TooltipInfo82 functions13 implemented · 0 recorded · 69 guessed
- C_VoiceChat82 functions1 implemented · 9 recorded · 72 guessed
- C_PetJournal80 functions2 implemented · 3 recorded · 75 guessed
- C_ActionBar72 functions22 implemented · 11 recorded · 39 guessed
Where the descriptions come from
- Signatures, structures and events come from Blizzard's API documentation for the client, typed for wowlua.
- Descriptions, parameter notes and links come from warcraft.wiki.gg, by the wiki's contributors, under CC BY-SA 4.0. The wiki's pages also give the signatures of functions Blizzard's documentation lacks.
- Descriptions by wowlua: where neither says what a function does, wowlua wrote a description from the function's name, its signature and how the emulator answers it. These are marked "Description by wowlua".
The declarations also use information from Ketho's vscode-wow-api, under the MIT license.