We have moved to Warcraft Wiki. Click here for information and the new URL.



This is the talk page for discussing improvements to the World of Warcraft API article.

Archived talk[]

Getting Started[]

How do I get started with mod development? In particular, there are some simple mods I'd just like to maintain - do bug fixes to keep them running in future patches. I've tried at least a couple tutorials over the last few years I've been in WoW, and either they didn't work because they were too difficult for a beginner, or maybe because they were outdated. I noticed that UI beginner's guide seems to have suffered the same fate. Does anyone have suggestions for me? Much appreciated. -Howbizr (talk) 20:46, 9 February 2009 (UTC)

Getting started with writing addons is a possible alternative. -- foxlit (talk) 16:58, 2 March 2009 (UTC)
WoW Programming is a great resource. However, even though it will be very challenging at first, trial and error (along with the book and other addons as reference) is the most effective way to learn. Start by writing small addons from scratch and work your way up. --Demeth (talk) 00:52, 5 March 2009 (UTC)

On keeping the list current[]

I've recently removed a few (larger) groups of functions from the list -- GetPlayerBuff* family and Crafting functions. The intention behind that is to keep this list relatively limited to things that are useful to (current) addon authors.

Granted, people may actually want information about older API functions. The removal process gets the articles tagged with {{removedapi}}, and places them in Category:World of Warcraft API/Removed Functions -- so they're still around in case people actually need them. I draw the "useful to current authors" line at the previous major patch: so API removed in 3.1 stays on this page at least until 3.2 is released, and so on.

It's my intention (unless someone objects) to remove other older removed API functions from this page as well. -- foxlit (talk) 13:48, 28 May 2009 (UTC)

In retrospect, major patches are a bit infrequent; perhaps something like a month since the release of the patch removing a function would be more appropriate.
I guess this is the best current practice for handling removed functions (aka: prefix them with "REMOVED" for around a month and afterwards remove them from the list here). I took the liberty to note this for the REMOVED-keyword on the page. --Luke1410 (talk) 22:50, 2 September 2012 (UTC)
I also dislike the presence of things like CameraOrSelectOrMoveStart here -- while those are technically part of the API, they are close to useless as far as addon authors are concerned. It would perhaps be better to split the entire "always protected" category of functions to a different page. Maintenance nightmare, though. -- foxlit (talk) 02:26, March 14, 2010 (UTC)
Protected functions should not be removed from the list as authors may want to post-hook them using hooksecurefunc and would need to know what gets passed to them and when. Posted by: EGingell (T|C|F) on 04:37, March 14, 2010 (UTC)

Verb in description[]

What person must be used in the verb with which the description start? Some verbs end in -s (3rd person singular) and some verb don't. What choice will be made? Hans Kamp (talk) 22:44, October 7, 2009 (UTC)

Those that are not 3rd person singular (IT DOES a thing) should be 2nd person singular (YOU use it to DO a thing). I prefer third person but either seems fine; if you can't decide, go with whatever other functions in that section use. - Jerodast (talk) 08:55, 1 January 2014 (UTC)

Minor Edits[]

Edited PickupBagFromSlot(slotID) and removed "If an item is already picked up, this places the item into the specified slot, swapping the items if needed." Upon testing this doesn't swap bags, use EquipCursorItem(slotID) to swap bags. BrknSoul (talk) 01:44, October 30, 2009 (UTC)


Would anybody object to me taking all the subsections out and putting them into their own articles? Posted by: EGingell (T|C|F) on 10:06, March 4, 2010 (UTC)

Yes. There would appear to be no reason to do so. -- foxlit (talk) 20:11, March 5, 2010 (UTC)
I was thinking a good reason would be to make the main article smaller, but if nobody else has a problem with the load time, I won't worry about it. Posted by: EGingell (T|C|F) on 22:02, March 5, 2010 (UTC)
As an all-text web page, load time should hopefully not be a problem. In any case it is extremely useful for programmers to have this page open with all functions at once so they can Ctrl-F-search different functions from various sections as necessary. Having to go through the site search functionality - THAT is load time I don't want to deal with :) - Jerodast (talk) 08:59, 1 January 2014 (UTC)

Adding API Functions[]

I have seen a number of API Functions that are currently missing from this page. How do I go about adding these? Can I simply edit the page, or are these pulled in from some other page? EWOlson (talk) 23:15, 28 November 2010 (UTC)

Yes, just edit it. The content here is completely put together by users. The same applies for CVars and Macro API by the way. Silverwind (talk) 23:20, 28 November 2010 (UTC)
What about adding an entire new section? Like Archaeology. Do I just add it in alphabetical order and move the others down?EWOlson (talk) 00:04, 29 November 2010 (UTC)
I don't know the answer...but don't hesitate to add a new section wherever you feel it is most appropriate. Be bold. If someone else feels there is a better spot for it, they will help out and move it for you. D.D. Corkum (T / C) 00:30, 29 November 2010 (UTC)
OK, thank you. If I get in trouble I'm blaming you. lol EWOlson (talk) 00:37, 29 November 2010 (UTC)

Use of {{api}} template[]

foxlit clued me into the benefits of using {{api}} on function pages, but I don't see it in use here at all. Is there any reason for that? If not I plan to replace the clunky [[API functionNameIsSoLooong|functionNameIsSoLooong]] with the sleek template throughout the entire listing.

- Jerodast (talk) 10:11, 1 January 2014 (UTC)

This page is somewhat intentionally avoiding that template -- there's a lot of API links here; replacing them all with template calls would significantly increase the amount of time the wiki requires to produce the HTML output for this article. For the time being, it's probably better to let the current syntax stay as it is. Perhaps we could eventually get a bot to automatically generate the content of this page (which would make the inconvenient syntax irrelevant), or drop the API prefix from API articles (which would make the duplication unnecessary). — foxlit (talk) 21:41, 3 January 2014 (UTC)
Aha, well you've put the lie to my claim above that "being an all text article" makes load time insignificant :) Thanks for explanation - jerodast (talk) 16:24, 9 January 2014 (UTC)


Index Error

Everything between "Group" and "Pet Battle" has been deleted. That can't be good.Mltco78dhs (talk) 07:29, 26 March 2019 (UTC)

Horrible horrible mistake, it was. Ketho (talk) 10:24, 26 March 2019 (UTC)
Whew! Grateful I am (since we're apparently using Yoda-speak now -grin-). Thanks for fixing it. Mltco78dhs (talk) 12:39, 26 March 2019 (UTC)
Thanks for your vigilance :D Xporc (talk) 13:57, 27 March 2019 (UTC)

Buffs/Debuffs as a Subset of Spells Category[]

Whilst I am in favor of organizing this necessary but somewhat unwieldy dump of api functions, I'm concerned that the Buff/Debuff section got moved down under spells when Buffs and Debuffs aren't tightly linked to spells exclusively. - For example, flight adds a buff. Racial abilities add buffs. Participation in certain in-game puzzles adds a buff. Trinket and equipment and azerite passives add buffs.

Yes, in some cases (not all) the underlying aura mechanic either mimics or is accomplished through a spell of sorts (even when triggered by use of an item), but those triggering effects, when not actual spells, are not spells in the sense that one can find them in the player's spellbook.

That seems prone to confusion to me. I'd rather these were either placed in their own category, Auras (the proper term for them) or placed beneath the Units major category (all auras are tightly linked with units).Mltco78dhs (talk) 01:38, 16 May 2019 (UTC)

I agree Auras more suitable in its own category or beneath the Units category. Do go ahead and move them. Ketho (talk) 03:12, 16 May 2019 (UTC)
To be honest, I don't know how and I'm afraid I'd foul it up. This is more of a bug report sort of thing that an attempt to provide an actual solution, as unhelpful as that might be.Mltco78dhs (talk) 17:13, 16 May 2019 (UTC)

Page Navigation Changes[]

Six months or so ago, when one clicked on, say, the Units category and then on a specific unit-related api function and then clicked the 'back' button on the page for that specific unit-related api function when you were done looking at it (but needed to look at other unit-related api functions), one was taken to the section of the page where the Units category begins. Now (and I'm not precisely sure when this happened but it was more than a month ago) one is returned to the top of the page. That's mildly annoying and inconvenient if one is must drill into details of an api function in order to see how it might related to a different, but related function in the same category. For each api function in that category, it necessitates having to scroll down to the Units table of contents entry and click it or scroll manually down to the section. I'm not sure what changed this behavior but it would be helpful if the earlier functionality.Mltco78dhs (talk) 01:55, 16 May 2019 (UTC)

For me it works fine at the moment in Chrome when I press the "back" button, after having clicked on the Units category and then on a api function. I'm not sure if this could be a Wowpedia or browser specific problem. Ketho (talk) 03:18, 16 May 2019 (UTC)

Bind Functions Placed Under Action Bars Heading[]

As with the Buffs/Debuffs under Spells issue, not all binds are related to action bars or action buttons. Action Button binding is only a small subset of what can be done with binds and it's somewhat confusing to tuck this up under there. While I appreciate the need to organize this page somewhat, but this probably needs its own major category.Mltco78dhs (talk) 01:55, 16 May 2019 (UTC)

Yeah, binds are not specifically related to action bars, I just felt they were more related to the action bars/buttons than the other functions groups. I'm in favor of putting them under its own category. Ketho (talk) 03:22, 16 May 2019 (UTC)

Modifiers likely Belong with Binds but Not Under Action Bars[]

Related to the earlier post - modifiers are not tightly linked to Action Bars but are tightly linked to Bindings. Bindings aren't tightly linked to Action Bars either and (as mentioned before) probably belong in their own major category. I'm not certain about the mechanism for altering the indents on the table of contents section of the page - I was hoping someone else might actually do the edit. Mltco78dhs (talk) 17:13, 16 May 2019 (UTC)

Breaking Up[]

This page is getting unwieldy, and gets worse with every expansion. Could we break it up into two pages:

Functions used throughout the game ever since their introduction (ie, Achievements)
Functions used only during the expansion when they were introduced (ie, Azerite Power)

This would constrain the rapid growth by keeping things like artifacts, azerite, covenants, etc. on a separate page where it can logically be sorted by expansion. DDC (talk) 21:22, 7 May 2020 (UTC)

I'd rather not break out the API into two pages, it's convenient to have them all in one place to easily find them with Ctrl+F. I do agree the expansion specific API should probably be sorted or categorized by their patch or expansion Ketho (talk) 21:39, 7 May 2020 (UTC)