Wikia

WoWWiki

Changes: World of Warcraft API

Edit

Back to page

(Account Functions)
(Account)
 
(80 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{wowapi}}
+
__NOGALLERY__ __NONEWSECTIONLINK__ __NOWYSIWYG__ {{wowapi}}
   
This is the main reference page for the WoW API documention.
+
This is the main reference page for the WoW UI Lua API available to user Macros and AddOns. This is the API available during normal game play. See also [[World of Warcraft API/Glue|WoW Glue API]].
   
 
== Introduction ==
 
== Introduction ==
  +
The '''World of Warcraft API''', or '''WoW API''', is a set of Lua functions and facilities provided by the Blizzard WoW Client, to allow interaction with the ''World of Warcraft'' and its user interface. The list below is incomplete, and kept up to date through user contributions. See also the [[Global functions|an automatically-generated exhaustive list]] of all API functions present in the latest live client.
   
The [[World of Warcraft API]], or '''WoW API''', is a set of Lua functions and facilities provided by the Blizzard WoW Client, to interact with the ''World of Warcraft'' user interface. The list of functions below is incomplete and kept up to date through user contributions. You may also be interested in [[Global functions|an automatically-generated exhaustive list]] of all API functions present in the latest live client.
+
For beginners, [[WoW AddOn]] contains a number of very informative sources to help get you started. You can also [[HOWTO: View Blizzard's Interface Code|examine the existing UI code]] to find examples of how the various functions are used by the default UI. Discuss any large-scale changes on the [[Talk:World of Warcraft API|{{discussiontab}} page]].
   
For beginners, [[AddOn programming tutorial]] contains a number of very informative sources to help get you started.
+
== Reference ==
  +
Global API functions for WoW in Lua.
  +
* [[API types]] - variable value types, used here as parameters and return values.
   
If you're contributing documentation, please read '''[[WoWWiki:How to edit API pages|How to edit API pages]]'''. Update this page (and the linked pages) as needed, discuss any large-scale changes on the [[Talk:World of Warcraft API|{{discussiontab}} page]], and do not create ''empty'' stub pages.
+
'''If you're contributing documentation, please read [[WoWWiki:How to edit API pages|How to edit API pages]].'''
   
If you need help see [[WoWWiki:API notation and conventions|API notation and conventions]]. You can also [[HOWTO: View Blizzard's Interface Code|examine the existing UI code]] to find examples of how the various functions are used by the default UI. Function names could be prefixed with the following tags:
+
Function names can be prefixed with the following tags, see [[WoWWiki:API notation and conventions|API notation and conventions]]:
* '''PROTECTED''' - This function can only be called from [[secure code]]. See the [[:Category:World of Warcraft API/Protected Functions|Protected Functions]] category.
+
* PROTECTED - can only be called from [[secure code]]. See [[:Category:World of Warcraft API/Protected Functions|Protected Functions]].
* '''NOCOMBAT''' - This function can only be called from [[secure code]] while out of combat.
+
* NOCOMBAT - can only be called from [[secure code]] while out of combat.
* '''HW''' - This function may only be called in response to a hardware event (from OnClick handlers).
+
* HW - may only be called in response to a hardware event, like from OnClick handlers.
* '''UI''' - This function is implemented in Lua (in [[:Category:FrameXML documentation|FrameXML]]) but was considered important enough to appear here.
+
* UI - is implemented in Lua in [[:Category:FrameXML documentation|FrameXML]], but was important enough to appear here.
* '''REMOVED''' - This function has been removed from the World of Warcraft API (and should also be removed from this list).
+
* DEPRECATED - is planned to no longer be used, and more than likely removed in future version.
: For historical purposes, see the [[:Category:World of Warcraft API/Removed Functions|Removed Functions]] category.
+
* REMOVED - was removed from the API. should be moved from here to [[:Category:World of Warcraft API/Removed Functions|Removed Functions]].
   
=== Testing Functions ===
+
Calling functions via macro or command line:
Functions that perform actions can be run via macro or command line:
+
/run BNSetMatureLanguageFilter(true)
/run BNSetMatureLanguageFilter(true);
+
/run local x=GetAccountExpansionLevel(); SendChatMessage(x)
   
Function that return values can also be run via macro or command line, but require more to see the value:
+
=== Account ===
/run x=GetAccountExpansionLevel(); SendChatMessage(x)
+
:{{id|API|GetAccountExpansionLevel}}() - Returns registered expansion. (0=WoW, 1=BC, 2=WotLK, 3=Cata, 4=MoP 5=WoD)
 
== Global Function Groups ==
 
 
=== Account Functions ===
 
: [[API GetAccountExpansionLevel|GetAccountExpansionLevel]]() - Returns index of registered expansion. (0=WoW, 1=BC, 2=WotLK, 3=Cataclysm, 4=MoP)
 
 
These functions only return meaningful values on Asian realms; all three relate to the play time limitation system.
 
These functions only return meaningful values on Asian realms; all three relate to the play time limitation system.
: [[API GetBillingTimeRested|GetBillingTimeRested]]() - returns the time spent logged in in current billing unit.
+
:{{id|API|GetBillingTimeRested}}() - returns the time spent logged in current billing unit.
: [[API PartialPlayTime|PartialPlayTime]]() - returns 1 if the player is currently "tired": reduced XP, loot.
+
:{{id|API|PartialPlayTime}}() - returns 1 if the player is currently "tired": reduced XP, loot.
: [[API NoPlayTime|NoPlayTime]]() - returns 1 if the player is currently "unhealthy": no XP, loot.
+
:{{id|API|NoPlayTime}}() - returns 1 if the player is currently "unhealthy": no XP, loot.
   
=== Achievement Functions ===
+
=== Achievement ===
These functions are only available in [[Patch 3.0]].
+
These functions are only available in [[Patch 3.0]]
  +
:{{id|API|AddTrackedAchievement}}(achievementId) - Add an achievement to tracking.
  +
:{{id|API|CanShowAchievementUI}}() - Returns if the AchievementUI can be displayed
  +
:{{id|API|ClearAchievementComparisonUnit}}() - Remove the unit being compared.
  +
:{{id|API|GetAchievementCategory}}(achievementID) - Return the category number of the requested achievement.
  +
:{{id|API|GetAchievementComparisonInfo}}(achievementID, comparisonNum) - Returns status of achievement for comparison player.
  +
:{{id|API|GetAchievementCriteriaInfo}}(achievementID, criteriaIndex) - Returns information about the requested criteria.
  +
:{{id|API|GetAchievementCriteriaInfoByID}}(achievementID, criteriaID) - Returns information about the requested criteria. (added 5.0.4)
  +
:{{id|API|GetAchievementInfo}}(achievementID) or (category, offset) - Returns information about the requested Achievement.
  +
:{{id|API|GetAchievementInfoFromCriteria}}(id) - Returns information about the requested Achievement.
  +
:{{id|API|GetAchievementLink}}(achievementID) - Returns a [[achievementLink]] for the specified Achievement.
  +
:{{id|API|GetAchievementNumCriteria}}(achievementID) - Return the number of criteria the requested Achievement has.
  +
:{{id|API|GetAchievementNumRewards}}(achievementID) - Return the number of rewards the requested Achievement has.
  +
:{{id|API|GetCategoryInfo}}(category) - Return information about the requested category
  +
:{{id|API|GetCategoryList}}() - Returns the list of Achievement categories.
  +
:{{id|API|GetCategoryNumAchievements}}(category) - Return the total Achievements and number completed for the specific category.
  +
:{{id|API|GetComparisonAchievementPoints}}() - Return the total number of achievement points the comparison unit has earned.
  +
:{{id|API|GetComparisonCategoryNumAchievements}}(achievementID)
  +
:{{id|API|GetComparisonStatistic}}(achievementID) - Return the value of the requested statistic for the comparison player.
  +
:{{id|API|GetLatestCompletedAchievements}}() - Return the ID's of the last 5 completed Achievements.
  +
:{{id|API|GetLatestCompletedComparisonAchievements}}()
  +
:{{id|API|GetLatestUpdatedComparisonStats}}()
  +
:{{id|API|GetLatestUpdatedStats}}() - Return the ID's of the last 5 updated Statistics.
  +
:{{id|API|GetNextAchievement}}(achievementID)
  +
:{{id|API|GetNumComparisonCompletedAchievements}}()
  +
:{{id|API|GetNumCompletedAchievements}}([guildOnly]) - Returns total and completed number of achievements, or only guild.
  +
:{{id|API|GetPreviousAchievement}}(achievementID) - Return previous related achievements.
  +
:{{id|API|GetStatistic}}(achievementID) - Return the value of the requested statistic.
  +
:{{id|API|GetStatisticsCategoryList}}() - Returns the list of Statistic categories.
  +
:{{id|API|GetTotalAchievementPoints}}([guildOnly]) - Return the total, or only guild, achievement points earned.
  +
:{{id|API|GetTrackedAchievements}}() - Return the AchievementID of the currently tracked achievements
  +
:{{id|API|GetNumTrackedAchievements}}() - Return the total number of the currently tracked achievements
  +
:{{id|API|RemoveTrackedAchievement}}(achievementID) - Stops an achievement from being tracked
  +
:{{id|API|SetAchievementComparisonUnit}}(unitId) - Set the unit to be compared to.
   
: [[API AddTrackedAchievement|AddTrackedAchievement]](achievementId) - Add an achievement to tracking.
+
=== Action ===
: [[API CanShowAchievementUI|CanShowAchievementUI]]() - Returns if the AchievementUI can be displayed
+
These functions are those which operate with the action buttons. See [[#Activity]] section for general player actions.
: [[API ClearAchievementComparisonUnit|ClearAchievementComparisonUnit]]() - Remove the unit being compared.
+
:PROTECTED UI {{id|API|ActionButtonDown}}(id) - Press the specified action button. (protected 2.0)
: [[API GetAchievementCategory|GetAchievementCategory]](achievementID) - Return the category number the requested achievement belongs to.
+
:PROTECTED UI {{id|API|ActionButtonUp}}(id) - Release the specified action button. (protected 2.0)
: [[API GetAchievementComparisonInfo|GetAchievementComparisonInfo]](achievementID, comparisonNum) - Return the status of the achievement for the comparison player.
+
:{{id|API|ActionHasRange}}(slot) - Determine if the specified action is a range restriction [1 if yes, nil if no]
: [[API GetAchievementCriteriaInfo|GetAchievementCriteriaInfo]](achievementID, criteriaIndex) - Return information about the requested criteria.
+
:UI {{id|API|BonusActionButtonDown}} - Trigger the specified bonus(pet or minion) action button.
: [[API GetAchievementCriteriaInfoByID|GetAchievementCriteriaInfoByID]](achievementID, criteriaID) - Return information about the requested criteria. added 5.0.4
+
:UI {{id|API|BonusActionButtonUp}} - Release the specified bonus(pet or minion) action button.
: [[API GetAchievementInfo|GetAchievementInfo]]((achievementID) or (category, offset) - Return information about the requested Achievement.
+
:PROTECTED {{id|API|CameraOrSelectOrMoveStart}}() - Begin "Left click" in the 3D world. (protected 1.10)
: [[API GetAchievementInfoFromCriteria|GetAchievementInfoFromCriteria]](id) - Return information about the requested Achievement.
+
:PROTECTED {{id|API|CameraOrSelectOrMoveStop}}([stickyFlag]) - End "Left click" in the 3D world. (protected 1.10)
: [[API GetAchievementLink|GetAchievementLink]](achievementID) - Returns a [[achievementLink]] for the specified Achievement.
+
:NOCOMBAT {{id|API|ChangeActionBarPage}}(page) - Changes the current action bar page.
: [[API GetAchievementNumCriteria|GetAchievementNumCriteria]](achievementID) - Return the number of criteria the requested Achievement has.
+
:{{id|API|GetActionBarPage}}() - Return the current action bar page. CURRENT_ACTIONBAR_PAGE is obsolete.
: [[API GetAchievementNumRewards|GetAchievementNumRewards]](achievementID) - Return the number of rewards the requested Achievement has.
+
:{{id|API|GetActionBarToggles}}() - Return the toggles for each action bar.
: [[API GetCategoryInfo|GetCategoryInfo]](category) - Return information about the requested category
+
:{{id|API|GetActionCooldown}}(slot) - This returns the cooldown values of the specified action..
: [[API GetCategoryList|GetCategoryList]]() - Returns the list of Achievement categories.
+
:{{id|API|GetActionCount}}(slot) - Get the count (bandage/potion/etc) for an action, returns 0 if none or not applicable.
: [[API GetCategoryNumAchievements|GetCategoryNumAchievements]](category) - Return the number of Achievements, and number completed for the specific category.
+
:{{id|API|GetActionInfo}}(slot) - Returns type, id, subtype.
: [[API GetComparisonAchievementPoints|GetComparisonAchievementPoints]]() - Return the total number of achievement points the comparison unit has earned.
+
:{{id|API|GetActionText}}(slot) - Get the text label (macros, etc) for an action, returns nil if none.
: [[API GetComparisonCategoryNumAchievements|GetComparisonCategoryNumAchievements]](achievementID)
+
:{{id|API|GetActionTexture}}(slot) - Gets the texture path for the specified action.
: [[API GetComparisonStatistic|GetComparisonStatistic]](achievementID) - Return the value of the requested statistic for the comparison player.
+
:{{id|API|GetBonusBarOffset}}() - Determine which page of bonus actions to show.
: [[API GetLatestCompletedAchievements|GetLatestCompletedAchievements]]() - Return the ID's of the last 5 completed Achievements.
+
:{{id|API|GetMouseButtonClicked}}() - Returns the name of the button that triggered a mouse down/up/click/doubleclick event. (added 2.0.3)
: [[API GetLatestCompletedComparisonAchievements|GetLatestCompletedComparisonAchievements]]()
+
:{{id|API|GetMultiCastBarOffset}}() - Returns the page offset of the multicast action IDs (added 3.2)
: [[API GetLatestUpdatedComparisonStats|GetLatestUpdatedComparisonStats]]()
+
:{{id|API|GetPossessInfo}}(index) - Returns texture, name, enabled.
: [[API GetLatestUpdatedStats|GetLatestUpdatedStats]]() - Return the ID's of the last 5 updated Statistics.
+
:{{id|API|HasAction}}(slot) - Returns 1 if the player has an action in the specified slot, nil otherwise.
: [[API GetNextAchievement|GetNextAchievement]](achievementID)
+
:{{id|API|IsActionInRange}}(slot,[unit]) - Test if an action is in range (1=yes, 0=no, nil=not applicable).
: [[API GetNumComparisonCompletedAchievements|GetNumComparisonCompletedAchievements]]()
+
:{{id|API|IsAttackAction}}(slot) - Return 1 if an action is an 'attack' action (flashes during combat), nil otherwise.
: [[API GetNumCompletedAchievements|GetNumCompletedAchievements]]([guildOnly]) - Return the total number of Achievements, and number completed or only achievement guild.
+
:{{id|API|IsAutoRepeatAction}}(slot) - Return 1 if an action is auto-repeating, nil otherwise.
: [[API GetPreviousAchievement|GetPreviousAchievement]](achievementID) - Return previous related achievements.
+
:{{id|API|IsCurrentAction}}(slot) - Return 1 if an action is the one currently underway, nil otherwise.
: [[API GetStatistic|GetStatistic]](achievementID) - Return the value of the requested statistic.
+
:{{id|API|IsConsumableAction}}(slot) - Return 1 if an action is consumable (i.e. has a count), nil otherwise.
: [[API GetStatisticsCategoryList|GetStatisticsCategoryList]]() - Returns the list of Statistic categories.
+
:{{id|API|IsEquippedAction}}(slot) - Return 1 if an action is equipped (i.e. connected to an item that must be equipped), nil otherwise.
: [[API GetTotalAchievementPoints|GetTotalAchievementPoints]]([guildOnly]) - Return the total number of achievement points or the total guild achievement points earned.
+
:{{id|API|IsUsableAction}}(slot) - Return 1 if an action can be used at present, nil otherwise.
: [[API GetTrackedAchievements|GetTrackedAchievements]]() - Return the AchievementID of the currently tracked achievements
+
:{{id|API|PetHasActionBar}}() - Determine if player has a pet with an action bar.
: [[API GetNumTrackedAchievements|GetNumTrackedAchievements]]() - Return the total number of the currently tracked achievements
+
:NOCOMBAT {{id|API|PickupAction}}(slot) - Drags an action out of the specified quickbar slot and holds it on the cursor.
: [[API RemoveTrackedAchievement|RemoveTrackedAchievement]](achievementID) - Stops an achievement from being tracked
+
:NOCOMBAT {{id|API|PickupPetAction}}(slot) - Drags an action from the specified pet action bar slot into the cursor.
: [[API SetAchievementComparisonUnit|SetAchievementComparisonUnit]](unitId) - Set the unit to be compared to.
+
:{{id|API|PlaceAction}}(slot) - Drops an action from the cursor into the specified quickbar slot.
  +
:{{id|API|SetActionBarToggles}}(show1,show2,show3,show4[, alwaysShow]) - Set show toggle for each action bar - 'alwaysShow' (added 1.12)
  +
:{{id|API|StopAttack}}() - Turns off auto-attack, if currently active. Has no effect is the player does not currently have auto-attack active.
  +
:PROTECTED {{id|API|TurnOrActionStart}}() - Begin "Right Click" in the 3D world. (protected 1.10)
  +
:PROTECTED {{id|API|TurnOrActionStop}}() - End "Right Click" in the 3D world. (protected 1.10)
  +
:PROTECTED {{id|API|UseAction}}(slot[, checkCursor[, onSelf]]) - This instructs the interface to use the action associated with the specified ID, optionally on the player, regardless of target. (protected 2.0)
   
=== Action Functions ===
+
=== Activity ===
These functions are those which operate with the action buttons (General player actions are likely in the [[#Activity Functions|Activity Functions]] section below).
+
These functions make the player do something, and which aren't covered elsewhere and aren't simply confirmation steps.
  +
:{{id|API|AcceptDuel}}() - The player accepts the challenge to duel.
  +
:PROTECTED {{id|API|AttackTarget}}() - Attacks the targetted unit.
  +
:{{id|API|CancelDuel}}() - Refuse the invitation to fight a duel.
  +
:{{id|API|CancelLogout}}() - Cancels the logout timer, from camping or quitting.
  +
:{{id|API|ClearTutorials}}()
  +
:{{id|API|CancelSummon}}() - Rejects a summon request.
  +
:{{id|API|ConfirmSummon}}() - Accepts a summon request.
  +
:PROTECTED {{id|API|DescendStop}}() - The player stops descending, while swimming or flying. (added 2.1)
  +
:{{id|API|Dismount}}() - The player dismounts the current mount. (added 2.0.3)
  +
:{{id|API|FlagTutorial}}("tutorial")
  +
:{{id|API|ForceQuit}}() - Instantly quits the game, bypassing the timer.
  +
:{{id|API|GetPVPTimer}}() - Returns the amount of time until your PvP flag fades.
  +
:{{id|API|GetSummonConfirmAreaName}}() - Returns the name of the area you're being summoned to.
  +
:{{id|API|GetSummonConfirmSummoner}}() - Returns the name of the player summoning you.
  +
:{{id|API|GetSummonConfirmTimeLeft}}() - Returns the amount of time left before the pending summon expires.
  +
:{{id|API|Logout}} - Logs the user out of the game.
  +
:{{id|API|Quit}} - Quits the game, '''not''' the Lua script.
  +
:{{id|API|RandomRoll}}(low, high) - Does a random roll between the two values.
  +
:{{id|API|SetPVP}}(arg1) - Sets the players PVP mode (1 to enable, nil to toggle off eventually)
  +
:PROTECTED {{id|API|SitStandOrDescendStart}}() - The player sits, stands, or descends (added 2.1)
  +
:PROTECTED {{id|API|StartDuel}}("name") - Challenge someone to a duel, by name. (protected 2.0)
  +
:{{id|API|TogglePVP}}() - Toggles PVP status
  +
:{{id|API|ToggleSheath}}() - Toggles sheathed or unsheathed weapons.
  +
:{{id|API|UseSoulstone}}() - Use an active soulstone to resurrect yourself after death. Also works for Shamans with Reincarnation available.
   
: PROTECTED UI [[API ActionButtonDown|ActionButtonDown]](id) - Press the specified action button. (2.0 Protected)
+
=== AddOn ===
: PROTECTED UI [[API ActionButtonUp|ActionButtonUp]](id) - Release the specified action button. (2.0 Protected)
+
:{{id|API|DisableAddOn}}(index or "AddOnName") - Disable the specified AddOn for subsequent sessions.
: [[API ActionHasRange|ActionHasRange]](slot) - Determine if the specified action is a range restriction (1 if yes, nil if no)
+
:{{id|API|DisableAllAddOns}}() - Disable all AddOns for subsequent sessions.
: UI [[API BonusActionButtonDown|BonusActionButtonDown]] - Trigger the specified bonus(pet or minion) action button.
+
:{{id|API|EnableAddOn}}(index or "AddOnName") - Enable the specified AddOn for subsequent sessions.
: UI [[API BonusActionButtonUp|BonusActionButtonUp]] - Release the specified bonus(pet or minion) action button.
+
:{{id|API|EnableAllAddOns}}() - Enable all AddOns for subsequent sessions.
: PROTECTED [[API CameraOrSelectOrMoveStart|CameraOrSelectOrMoveStart]]() - Begin "Left click" in the 3D world. (1.10 - Protected)
+
:{{id|API|GetAddOnDependencies}}(index or "AddOnName") - Get dependency list for an AddOn.
: PROTECTED [[API CameraOrSelectOrMoveStop|CameraOrSelectOrMoveStop]]([stickyFlag]) - End "Left click" in the 3D world. (1.10 - Protected)
+
:{{id|API|GetAddOnInfo}}(index or "AddOnName") - Get information about an AddOn.
: NOCOMBAT [[API ChangeActionBarPage|ChangeActionBarPage]](page) - Changes the current action bar page.
+
:{{id|API|GetAddOnMetadata}}(index or "name", "variable") - Retrieve metadata from addon's TOC file.
: [[API GetActionBarPage|GetActionBarPage]]() - Return the current action bar page. CURRENT_ACTIONBAR_PAGE is obsolete.
+
:{{id|API|GetNumAddOns}}() - Get the number of user supplied AddOns.
: [[API GetActionBarToggles|GetActionBarToggles]]() - Return the toggles for each action bar.
+
:{{id|API|IsAddOnLoaded}}(index or "AddOnName") - Returns true if the specified AddOn is loaded.
: [[API GetActionCooldown|GetActionCooldown]](slot) - This returns the cooldown values of the specified action..
+
:{{id|API|IsAddOnLoadOnDemand}}(index or "AddOnName") - Test whether an AddOn is load-on-demand.
: [[API GetActionCount|GetActionCount]](slot) - Get the count (bandage/potion/etc) for an action, returns 0 if none or not applicable.
+
:{{id|API|LoadAddOn}}(index or "AddOnName") - Request loading of a Load-On-Demand AddOn.
: [[API GetActionInfo|GetActionInfo]](slot) - Returns type, id, subtype.
+
:{{id|API|ResetDisabledAddOns}}()
: [[API GetActionText|GetActionText]](slot) - Get the text label (macros, etc) for an action, returns nil if none.
 
: [[API GetActionTexture|GetActionTexture]](slot) - Gets the texture path for the specified action.
 
: [[API GetBonusBarOffset|GetBonusBarOffset]]() - Determine which page of bonus actions to show.
 
: [[API GetMouseButtonClicked|GetMouseButtonClicked]]() -Returns the name of the button that triggered a mouse down/up/click/doubleclick event. (NEW 2.0.3)
 
: [[API GetMultiCastBarOffset|GetMultiCastBarOffset]]() - Returns the page offset of the multicast action IDs (NEW in 3.2)
 
: [[API GetPossessInfo|GetPossessInfo]](index) - Returns texture, name, enabled.
 
: [[API HasAction|HasAction]](slot) - Returns 1 if the player has an action in the specified slot, nil otherwise.
 
: [[API IsActionInRange|IsActionInRange]](slot,[unit]) - Test if an action is in range (1=yes, 0=no, nil=not applicable).
 
: [[API IsAttackAction|IsAttackAction]](slot) - Return 1 if an action is an 'attack' action (flashes during combat), nil otherwise.
 
: [[API IsAutoRepeatAction|IsAutoRepeatAction]](slot) - Return 1 if an action is auto-repeating, nil otherwise.
 
: [[API IsCurrentAction|IsCurrentAction]](slot) - Return 1 if an action is the one currently underway, nil otherwise.
 
: [[API IsConsumableAction|IsConsumableAction]](slot) - Return 1 if an action is consumable (i.e. has a count), nil otherwise.
 
: [[API IsEquippedAction|IsEquippedAction]](slot) - Return 1 if an action is equipped (i.e. connected to an item that must be equipped), nil otherwise.
 
: [[API IsUsableAction|IsUsableAction]](slot) - Return 1 if an action can be used at present, nil otherwise.
 
: [[API PetHasActionBar|PetHasActionBar]]() - Determine if player has a pet with an action bar.
 
: NOCOMBAT [[API PickupAction|PickupAction]](slot) - Drags an action out of the specified quickbar slot and holds it on the cursor.
 
: NOCOMBAT [[API PickupPetAction|PickupPetAction]](slot) - Drags an action from the specified pet action bar slot into the cursor.
 
: [[API PlaceAction|PlaceAction]](slot) - Drops an action from the cursor into the specified quickbar slot.
 
: [[API SetActionBarToggles|SetActionBarToggles]](show1,show2,show3,show4[, alwaysShow]) - Set show toggle for each action bar - 'alwaysShow' added in 1.12
 
: [[API StopAttack|StopAttack]]() - Turns off auto-attack, if currently active. Has no effect is the player does not currently have auto-attack active.
 
: PROTECTED [[API TurnOrActionStart|TurnOrActionStart]]() - Begin "Right Click" in the 3D world. (1.10 - Protected)
 
: PROTECTED [[API TurnOrActionStop|TurnOrActionStop]]() - End "Right Click" in the 3D world. (1.10 - Protected)
 
: PROTECTED [[API UseAction|UseAction]](slot[, checkCursor[, onSelf]]) - This instructs the interface to use the action associated with the specified ID, optionally on the player (regardless of target)(2.0 - Protected).
 
   
=== Activity Functions ===
+
=== Archaeology ===
This section is for functions which make the player do something (and which aren't covered elsewhere, and which aren't simply confirmation steps)
+
Functions for the Archaeology Profession. Added in 4.0.1 [[Cataclysm]].
  +
:{{id|API|CanSolveArtifact}}()
  +
:{{id|API|GetArtifactInfoByRace}}(raceIndex, projectIndex)
  +
:{{id|API|GetArtifactProgress}}()
  +
:{{id|API|GetNumArtifactsByRace}}(index)
  +
:{{id|API|GetSelectedArtifactInfo}}()
  +
:{{id|API|IsArtifactCompletionHistoryAvailable}}() - Returns 1 if the player has completed at least one artifact, otherwise nil;
  +
:{{id|API|ItemAddedToArtifact}}(index) - Returns true if an item is in the indicated artifact slot, otherwise false.
  +
:{{id|API|RemoveItemFromArtifact}}(SlotID)
  +
:{{id|API|RequestArtifactCompletionHistory}}()
  +
:{{id|API|SocketItemToArtifact}}(SlotID)
   
: [[API AcceptDuel|AcceptDuel]]() - The player accepts the challenge to duel.
+
=== Arena ===
: PROTECTED [[API AttackTarget|AttackTarget]]() - Attacks the targetted unit.
+
:{{id|API|AcceptArenaTeam}}() - Accepts a pending Arena team invitation.
: [[API CancelDuel|CancelDuel]]() - Refuse the invitation to fight a duel.
+
:{{id|API|ArenaTeamInviteByName}}(teamIndex, playerName) - Invites the specified player to the specified arena team.
: [[API CancelLogout|CancelLogout]]() - Cancels the logout timer (from camping or quitting).
+
:{{id|API|ArenaTeamSetLeaderByName}}(teamIndex, playerName) - Sets new Team Leader to the specified arena team.
: [[API ClearTutorials|ClearTutorials]]()
+
:{{id|API|ArenaTeamLeave}}(teamIndex) - Leaves the specified arena team.
: [[API CancelSummon|CancelSummon]]() - Rejects a summon request.
+
:{{id|API|ArenaTeamRoster}}(teamIndex) - Sends a request to the server to request the most recent information on a specific Arena Team that you are in.
: [[API ConfirmSummon|ConfirmSummon]]() - Accepts a summon request.
+
:{{id|API|ArenaTeamUninviteByName}}(teamIndex, playerName) - Removes the specified played from the specified arena team.
: PROTECTED [[API DescendStop|DescendStop]]() - The player stops descending (while swimming or flying) ''-- added in 2.1''
+
:{{id|API|ArenaTeamDisband}}(teamIndex) - Disbands the arena team without any warning! Requires you to be the leader of the team. (added 2.1.3)
: [[API Dismount|Dismount]]() - The player dismounts the current mount. ''-- added in 2.0.3''
+
:{{id|API|DeclineArenaTeam}}() - Declines a pending Arena team invitation.
: [[API FlagTutorial|FlagTutorial]]("tutorial")
+
:{{id|API|GetArenaTeam}}(teamIndex) - Returns information regarding the players arena team, nil if the player is not in the passed team
: [[API ForceQuit|ForceQuit]]() - Instantly quits the game, bypassing the timer.
+
:{{id|API|GetArenaTeamGdfInfo}}() - (added 3.0.8)
: [[API GetPVPTimer|GetPVPTimer]]() - Returns the amount of time until your PvP flag fades.
+
:{{id|API|GetArenaTeamRosterInfo}}(teamIndex, playerIndex) - Returns information regarding a player from the specified team. This requires a call to [[#ArenaTeamRoster]] you only need to do this when the player logins in, UI reloads will not effect the return.
: [[API GetSummonConfirmAreaName|GetSummonConfirmAreaName]]() - Returns the name of the area you're being summoned to.
+
:{{id|API|GetBattlefieldTeamInfo}}(index) - Gets info about a registered Arena Team at the end of an arena match.
: [[API GetSummonConfirmSummoner|GetSummonConfirmSummoner]]() - Returns the name of the player summoning you.
+
:{{id|API|GetCurrentArenaSeason}}() - Gets the current Arena season.
: [[API GetSummonConfirmTimeLeft|GetSummonConfirmTimeLeft]]() - Returns the amount of time left before the pending summon expires.
+
:{{id|API|GetInspectArenaTeamData}}(index) - Retrieves all the data associated with the inspected player's arena team located at index.
: [[API Logout|Logout]] - Logs the user out of the game.
+
:{{id|API|GetNumArenaTeamMembers}}(teamIndex[, showOffline]) - Gets the number of arena team members. This requires a call to [[#ArenaTeamRoster]] you only need to do this when the player logins in, UI reloads will not effect the return.
: [[API Quit|Quit]] - Quits the game, '''not''' the Lua script.
+
:{{id|API|GetPreviousArenaSeason}}() - Gets the previous Arena season.
: [[API RandomRoll|RandomRoll]](low, high) - Does a random roll between the two values.
+
:{{id|API|IsActiveBattlefieldArena}}() - Returns true if in an Arena Match, also Returns true for the second argument if it's a registered match.
: [[API SetPVP|SetPVP]](arg1) - Sets the players PVP mode (1 to enable, nil to toggle off eventually)
+
:{{id|API|IsArenaTeamCaptain}}(teamIndex) - Returns a value based on whether the player is the arena team captain.
: PROTECTED [[API SitStandOrDescendStart|SitStandOrDescendStart]]() - The player sits, stands, or descends ''-- added in 2.1''
+
:{{id|API|IsInArenaTeam}}() - Returns true if you are a member of an arena team.
: PROTECTED [[API StartDuel|StartDuel]]("name") - Challenge someone to a duel (by name) ''-- protected in 2.0''
 
: [[API TogglePVP|TogglePVP]]() - Toggles PVP status
 
: [[API ToggleSheath|ToggleSheath]]() - Toggles sheathed or unsheathed weapons.
 
: [[API UseSoulstone|UseSoulstone]]() - Use an active soulstone to resurrect yourself after death. Also works for Shamans with Reincarnation available.
 
   
=== AddOn Functions ===
+
=== Auction ===
: [[API DisableAddOn|DisableAddOn]](index or "AddOnName") - Disable the specified AddOn for subsequent sessions.
+
:{{id|API|CalculateAuctionDeposit}}(runTime, stackSize, numStacks) - Returns the required deposit for the current selling item given the specified duration (1=12h, 2=24h, 3=48h).
: [[API DisableAllAddOns|DisableAllAddOns]]() - Disable all AddOns for subsequent sessions.
+
:{{id|API|CanCancelAuction}}(index) - Returns 1 if auction can be canceled.
: [[API EnableAddOn|EnableAddOn]](index or "AddOnName") - Enable the specified AddOn for subsequent sessions.
+
:{{id|API|CancelSell}}() - Clears the auction house listing queue, not creating any additional auctions. (added 3.3.3)
: [[API EnableAllAddOns|EnableAllAddOns]]() - Enable all AddOns for subsequent sessions.
+
:{{id|API|CanSendAuctionQuery}}() - Return 1 if auction search button would be active, nil otherwise.
: [[API GetAddOnDependencies|GetAddOnDependencies]](index or "AddOnName") - Get dependency list for an AddOn.
+
:{{id|API|CancelAuction}}(index) - Cancel the specified auction (on the "owner" list).
: [[API GetAddOnInfo|GetAddOnInfo]](index or "AddOnName") - Get information about an AddOn.
+
:{{id|API|ClickAuctionSellItemButton}}() - Puts the currently 'picked up' item into the 'create auction' slot.
: [[API GetAddOnMetadata|GetAddOnMetadata]](index or "name", "variable") - Retrieve metadata from addon's TOC file.
+
:{{id|API|CloseAuctionHouse}}() - Will close the AuctionFrame if opened.
: [[API GetNumAddOns|GetNumAddOns]]() - Get the number of user supplied AddOns.
+
:DEPRECATED {{id|API|GetAuctionHouseDepositRate}}() - Returns the deposit rate (percentage) for the currently open auction house. (obsolete by '[[#CalculateAuctionDeposit]]')
: [[API IsAddOnLoaded|IsAddOnLoaded]](index or "AddOnName") - Returns true if the specified AddOn is loaded.
+
:{{id|API|GetAuctionInvTypes}}(classIndex, subclassIndex) - Returns types of subcategories items.
: [[API IsAddOnLoadOnDemand|IsAddOnLoadOnDemand]](index or "AddOnName") - Test whether an AddOn is load-on-demand.
+
:{{id|API|GetAuctionItemClasses}}() - Returns major auction item categories.
: [[API LoadAddOn|LoadAddOn]](index or "AddOnName") - Request loading of a Load-On-Demand AddOn.
+
:{{id|API|GetAuctionItemInfo}}("type", index) - Returns details about the specified auction item.
: [[API ResetDisabledAddOns|ResetDisabledAddOns]]() -
+
:{{id|API|GetAuctionItemLink}}("type", index) - Returns an [[itemLink]] for the specified auction item.
  +
:{{id|API|GetAuctionItemSubClasses}}(classIndex) - Returns subcategories in the nth auction category.
  +
:{{id|API|GetAuctionItemTimeLeft}}("type", index) - Returns the time left status of the specified auction item.
  +
:{{id|API|GetAuctionSellItemInfo}}() - Returns information about the current selling item (or nil if none selected).
  +
:DEPRECATED {{id|API|GetBidderAuctionItems}}([page]) - Returns details about an auction item on which the user is bidding (obsolete by '[[#CalculateAuctionDeposit]]("bidder", item)')
  +
:{{id|API|GetNumAuctionItems}}("type") - Returns the size of the specified auction item list.
  +
:DEPRECATED {{id|API|GetOwnerAuctionItems}}([page]) - Returns details about an auction item of which the user is the owner (obsolete by '[[#GetAuctionItemInfo]]("owner", item)')
  +
:{{id|API|GetSelectedAuctionItem}}("type") - Returns the index (1-50) of the selected auction item or 0 if none is selected.
  +
:{{id|API|IsAuctionSortReversed}}("type", "sort") - Returns 1 if the specified auction list and sort is reversed, nil otherwise.
  +
:{{id|API|PlaceAuctionBid}}("type", index, bid) - Place a bid on the selected auction item.
  +
:{{id|API|QueryAuctionItems}}("name", minLevel, maxLevel, invTypeIndex, classIndex, subclassIndex, page, isUsable, qualityIndex) - Performs a search of the auction house with the specified characteristics.
  +
:{{id|API|SetAuctionsTabShowing}}(showing) - Sets whether auction-related events should be delivered to the client. (added 3.3.3)
  +
:{{id|API|SetSelectedAuctionItem}}("type", index) - Selects a specific item in the auction house.
  +
:{{id|API|SortAuctionItems}}("type", "sort") - Request that the specified auction list be sorted by a specific column.
  +
:{{id|API|StartAuction}}(minBid, buyoutPrice, runTime, stackSize, numStacks) - Starts the auction you have created in the Create Auction panel.
  +
:UI {{id|API|AuctionFrameAuctions|duration|t=member}} - Set the amount of time the auction will run for in minutes.
   
=== Archaeology Functions ===
+
=== Bank ===
Functions for the Archaeology Profession, added in [[Cataclysm]].
+
:{{id|API|BankButtonIDToInvSlotID}}(buttonID, isBag) - Returns the ID number of a bank button or bag in terms of inventory slot ID.
  +
:{{id|API|CloseBankFrame}}() - Close the bank frame if it's open.
  +
:{{id|API|GetBankSlotCost}}(numSlots) - Returns the cost of the next bank slot.
  +
:{{id|API|GetNumBankSlots}}() - Returns total purchased bank bag slots, and a flag indicating if it's full.
  +
:{{id|API|PurchaseSlot}}() - Buys another bank slot if available.
   
: [[API CanSolveArtifact|CanSolveArtifact]]()
+
=== Barber Shop ===
: [[API GetArtifactInfoByRace|GetArtifactInfoByRace]](raceIndex, projectIndex)
+
These functions were introduced in 3.0.2.
: [[API GetArtifactProgress|GetArtifactProgress]]()
+
:{{id|API|ApplyBarberShopStyle}}() - Purchase and apply the cosmetic changes.
: [[API GetNumArtifactsByRace|GetNumArtifactsByRace]](index)
+
:{{id|API|BarberShopReset}}() - Reset any changes made in the Barber Shop.
: [[API GetSelectedArtifactInfo|GetSelectedArtifactInfo]]()
+
:{{id|API|CancelBarberShop}}() - Exit the Barber Shop chair.
: [[API IsArtifactCompletionHistoryAvailable|IsArtifactCompletionHistoryAvailable]]() - Returns 1 if the player has completed at least one artifact, otherwise nil;
+
:{{id|API|GetBarberShopStyleInfo}}(id) - Returns information about the currently selected style.
: [[API ItemAddedToArtifact|ItemAddedToArtifact]](index) - Returns true if an item is in the indicated artifact slot, otherwise false.
+
:{{id|API|GetBarberShopTotalCost}}() - Returns the total costs of the cosmetic changes.
: [[API RemoveItemFromArtifact|RemoveItemFromArtifact]](SlotID)
+
:{{id|API|GetFacialHairCustomization}}() - Returns the type of facial hair customization available to the character.
: [[API RequestArtifactCompletionHistory|RequestArtifactCompletionHistory]]()
+
:{{id|API|GetHairCustomization}}() - Returns the type of haircut customization available to the character.
: [[API SocketItemToArtifact|SocketItemToArtifact]](SlotID)
+
:{{id|API|SetNextBarberShopStyle}}(id[, reverse]) - Alters style selection in a particular category.
   
=== Arena Functions ===
+
=== Battlefield ===
: [[API AcceptArenaTeam|AcceptArenaTeam]]() - Accepts a pending Arena team invitation.
+
:{{id|API|AcceptAreaSpiritHeal}}() - Accept a spirit heal.
: [[API ArenaTeamInviteByName|ArenaTeamInviteByName]](teamIndex, playerName) - Invites the specified player to the specified arena team.
+
:{{id|API|AcceptBattlefieldPort}}(index[, acceptFlag]) - Accept or reject an offered battlefield port.
: [[API ArenaTeamSetLeaderByName|ArenaTeamSetLeaderByName]](teamIndex, playerName) - Sets new Team Leader to the specified arena team.
+
:{{id|API|CancelAreaSpiritHeal}}() - Cancel a spirit heal.
: [[API ArenaTeamLeave|ArenaTeamLeave]](teamIndex) - Leaves the specified arena team.
+
:{{id|API|CanJoinBattlefieldAsGroup}}() - returns nil if the player can not do a group join for a battlefield.
: [[API ArenaTeamRoster|ArenaTeamRoster]](teamIndex) - Sends a request to the server to request the most recent information on a specific Arena Team that you are in.
+
:{{id|API|CheckSpiritHealerDist}}() - Return true if you are in range with spirit healer while dead.
: [[API ArenaTeamUninviteByName|ArenaTeamUninviteByName]](teamIndex, playerName) - Removes the specified played from the specified arena team.
+
:{{id|API|GetAreaSpiritHealerTime}}() - Returns the time left until the next resurrection by the Sprit Guide.
: [[API ArenaTeamDisband|ArenaTeamDisband]](teamIndex) - Disbands the arena team without any warning! Requires you to be the leader of the team. (Known to be implemented as of 2.1.3, but may have existed before).
+
:{{id|API|GetBattlefieldEstimatedWaitTime}}(index) - Get the estimated wait for entry into the battlefield.
: [[API DeclineArenaTeam|DeclineArenaTeam]]() - Declines a pending Arena team invitation.
+
:{{id|API|GetBattlefieldFlagPosition}}(index) - Get the map position and texture of the flag.
: [[API GetArenaTeam|GetArenaTeam]](teamIndex) - Returns information regarding the players arena team, nil if the player is not in the passed team
+
:{{id|API|GetBattlefieldInstanceExpiration}}() - Get shutdown timer for the battlefield instance.
: [[API GetArenaTeamGdfInfo|GetArenaTeamGdfInfo]]() - ? New in 3.0.8
+
:{{id|API|GetBattlefieldInstanceRunTime}}() - In milliseconds, the time since battleground started (seems to be queried from server because it is not in sync with time()).
: [[API GetArenaTeamRosterInfo|GetArenaTeamRosterInfo]](teamIndex, playerIndex) - Returns information regarding a player from the specified team. This requires a call to [[API ArenaTeamRoster|ArenaTeamRoster]] you only need to do this when the player logins in, UI reloads will not effect the return.
+
:{{id|API|GetBattlefieldMapIconScale}}() - Scale of the landmark icons on the battlefield minimap.
: [[API GetBattlefieldTeamInfo|GetBattlefieldTeamInfo]](index) - Gets info about a registered Arena Team at the end of an arena match.
+
:{{id|API|GetBattlefieldPortExpiration}}(index) - Get the remaining seconds before the battlefield port expires.
: [[API GetCurrentArenaSeason|GetCurrentArenaSeason]]() - Gets the current Arena season.
+
:{{id|API|GetBattlefieldPosition}}(index) - Get the map position and name of a player in the battleground not in your raid.
: [[API GetInspectArenaTeamData|GetInspectArenaTeamData]](index) - Retrieves all the data associated with the inspected player's arena team located at index.
+
:{{id|API|GetBattlefieldScore}}(index) - Get score information about a player.
: [[API GetNumArenaTeamMembers|GetNumArenaTeamMembers]](teamIndex[, showOffline]) - Gets the number of arena team members. This requires a call to [[API ArenaTeamRoster|ArenaTeamRoster]] you only need to do this when the player logins in, UI reloads will not effect the return.
+
:{{id|API|GetBattlefieldStatData}}(playerIndex, slotIndex) - Get information for a player from a column thats specific to a battleground (like Warsong Gulch flag captures).
: [[API GetPreviousArenaSeason|GetPreviousArenaSeason]]() - Gets the previous Arena season.
+
:{{id|API|GetBattlefieldStatInfo}}(index) - Get the battleground specific column for the score board.
: [[API IsActiveBattlefieldArena|IsActiveBattlefieldArena]]() - Returns true if in an Arena Match, also Returns true for the second argument if it's a registered match.
+
:{{id|API|GetBattlefieldStatus}}(index) - Get the battlefield's current status.
: [[API IsArenaTeamCaptain|IsArenaTeamCaptain]](teamIndex) - Returns a value based on whether the player is the arena team captain.
+
:{{id|API|GetBattlefieldTimeWaited}}(index) - Get time waited in queue in milliseconds.
: [[API IsInArenaTeam|IsInArenaTeam]]() - Returns true if you are a member of an arena team.
+
:{{id|API|GetBattlefieldWinner}}() - Get the battlefields winner.
  +
:{{id|API|GetBattlegroundInfo}}() - Returns information about a battleground type.
  +
:{{id|API|GetNumBattlefieldFlagPositions}}() - Get the number of flag positions available from GetBattlefieldFlagPosition().
  +
:{{id|API|GetNumBattlefieldPositions}}() - Get the number of positions available from GetBattlefieldPosition().
  +
:{{id|API|GetNumBattlefieldScores}}() - Returns the number of scores(players) listed in the battlefield scoreboard.
  +
:{{id|API|GetNumBattlefieldStats}}() - Get the number of battleground specific columns.
  +
:{{id|API|GetNumWorldStateUI}}() - Get the number of WorldState UI's.
  +
:{{id|API|GetWintergraspWaitTime}}() - Get the number of seconds until the next Wintergrasp battle. Returns nil if battle is in progress.
  +
:{{id|API|GetWorldStateUIInfo}}(i) - Get score and flag status within a battlefield.
  +
:{{id|API|IsPVPTimerRunning}}()
  +
:{{id|API|JoinBattlefield}}(index[, joinAs]) - Queue for a battleground either solo or as a group.
  +
:{{id|API|LeaveBattlefield}}() - Leave the current battlefield
  +
:{{id|API|ReportPlayerIsPVPAFK}}("[[unitId|unit]]") - Reports the specified player as AFK in a battleground.
  +
:{{id|API|RequestBattlefieldPositions}}() - Request new data for GetBattlefieldPosition().
  +
:{{id|API|RequestBattlefieldScoreData}}() - Request new data for GetBattlefieldScore().
  +
:{{id|API|RequestBattlegroundInstanceInfo}}(index) - Requests data about the available instances of a battleground.
  +
:{{id|API|SetBattlefieldScoreFaction}}([faction]) - Set the faction to show on the battlefield scoreboard.
   
=== Auction Functions ===
+
=== Binding ===
: [[API CalculateAuctionDeposit|CalculateAuctionDeposit]](runTime, stackSize, numStacks) - Returns the required deposit for the current selling item given the specified duration (1=12h, 2=24h, 3=48h).
+
:{{id|API|GetBinding}}(index) - Get action and key bindings for that index.
: [[API CanCancelAuction|CanCancelAuction]](index) - Returns 1 if auction can be canceled.
+
:{{id|API|GetBindingAction}}("KEY" [,checkOverride]) - Get the action bound to that key.
: [[API CancelSell|CancelSell]]() - Clears the auction house listing queue, not creating any additional auctions. (3.3.3)
+
:{{id|API|GetBindingKey}}("command") - Get the key(s) bound to that action.
: [[API CanSendAuctionQuery|CanSendAuctionQuery]]() - Return 1 if auction search button would be active, nil otherwise.
+
:UI {{id|API|GetBindingText}}("key", "prefix", returnAbbr) - Gets the string value for the key.
: [[API CancelAuction|CancelAuction]](index) - Cancel the specified auction (on the "owner" list).
+
:{{id|API|GetCurrentBindingSet}}() - Queries if current set of key bindings is character or account specific
: [[API ClickAuctionSellItemButton|ClickAuctionSellItemButton]]() - Puts the currently 'picked up' item into the 'create auction' slot.
+
:{{id|API|GetNumBindings}}() - Get total number key bindings and headers.
: [[API CloseAuctionHouse|CloseAuctionHouse]]() - Will close the AuctionFrame if opened.
+
:{{id|API|LoadBindings}}(which) - Loads default, account or character specific key binding set into memory from disk.
: [[API GetAuctionHouseDepositRate|GetAuctionHouseDepositRate]]() - Returns the deposit rate (percentage) for the currently open auction house (Possibly out-dated by [[API CalculateAuctionDeposit|CalculateAuctionDeposit]]).
+
:{{id|API|RunBinding}}("command"[, "up"]) - Executes the key binding named "command"
: [[API GetAuctionInvTypes|GetAuctionInvTypes]](classIndex, subclassIndex) - Returns types of subcategories items.
+
:{{id|API|SaveBindings}}(which) - Saves account or character specific key bindings from memory to disk.
: [[API GetAuctionItemClasses|GetAuctionItemClasses]]() - Returns major auction item categories.
+
:NOCOMBAT {{id|API|SetBinding}}("key"[, "command"[, mode]]) - Sets or unsets key bindings. (2.0 - Can not be used in combat.)
: [[API GetAuctionItemInfo|GetAuctionItemInfo]]("type", index) - Returns details about the specified auction item.
+
:NOCOMBAT {{id|API|SetBindingSpell}}("KEY", "Spell Name") - Set a key binding directly to a spell, uses the same spell name syntax as /cast.
: [[API GetAuctionItemLink|GetAuctionItemLink]]("type", index) - Returns an [[itemLink]] for the specified auction item.
+
:NOCOMBAT {{id|API|SetBindingClick}}("KEY", "ButtonName" [,"mouseButton"]) - Set a key binding directly to a Button object. The click sends a mouse down when the key is pressed, and a mouse up when it is released.
: [[API GetAuctionItemSubClasses|GetAuctionItemSubClasses]](classIndex) - Returns subcategories in the nth auction category.
+
:NOCOMBAT {{id|API|SetBindingItem}}("KEY", "itemname")
: [[API GetAuctionItemTimeLeft|GetAuctionItemTimeLeft]]("type", index) - Returns the time left status of the specified auction item.
+
:NOCOMBAT {{id|API|SetBindingMacro}}("KEY", "macroname"|macroid)
: [[API GetAuctionSellItemInfo|GetAuctionSellItemInfo]]() - Returns information about the current selling item (or nil if none selected).
+
:{{id|API|SetConsoleKey}}("key") - Sets the console key (normally ~ ).
: [[API GetBidderAuctionItems|GetBidderAuctionItems]]([page]) - Returns details about an auction item on which the user is bidding (possibly out-dated by [[API GetAuctionItemInfo|GetAuctionItemInfo]]("bidder", item))
+
:NOCOMBAT {{id|API|SetOverrideBinding}}(owner, isPriority, "KEY" [,"COMMAND"]) - Set (or clear) an override key binding.
: [[API GetNumAuctionItems|GetNumAuctionItems]]("type") - Returns the size of the specified auction item list.
+
:NOCOMBAT {{id|API|SetOverrideBindingSpell}}(owner, isPriority, "KEY", "spellname")
: [[API GetOwnerAuctionItems|GetOwnerAuctionItems]]([page]) - Returns details about an auction item of which the user is the owner (possibly out-dated by [[API GetAuctionItemInfo|GetAuctionItemInfo]]("owner", item))
+
:NOCOMBAT {{id|API|SetOverrideBindingClick}}(owner, isPriority, "key", "buttonName" [, "mouseClick"]) - Sets an override binding that acts like a mouse click on a button.
: [[API GetSelectedAuctionItem|GetSelectedAuctionItem]]("type") - Returns the index (1-50) of the selected auction item or 0 if none is selected.
+
:NOCOMBAT {{id|API|SetOverrideBindingItem}}(owner, isPriority, "KEY", "itemname")
: [[API IsAuctionSortReversed|IsAuctionSortReversed]]("type", "sort") - Returns 1 if the specified auction list and sort is reversed, nil otherwise.
+
:NOCOMBAT {{id|API|SetOverrideBindingMacro}}(owner, isPriority, "KEY", "macroname"|macroid)
: [[API PlaceAuctionBid|PlaceAuctionBid]]("type", index, bid) - Place a bid on the selected auction item.
+
:NOCOMBAT {{id|API|ClearOverrideBindings}}(owner) - Reset all overrides belonging to an owner.
: [[API QueryAuctionItems|QueryAuctionItems]]("name", minLevel, maxLevel, invTypeIndex, classIndex, subclassIndex, page, isUsable, qualityIndex) - Performs a search of the auction house with the specified characteristics.
+
:{{id|API|SetMouselookOverrideBinding}}("KEY" [,"COMMAND"])
: [[API SetAuctionsTabShowing|SetAuctionsTabShowing]](showing) - Sets whether auction-related events should be delivered to the client. (3.3.3)
+
:{{id|API|IsModifierKeyDown}}() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown()).
: [[API SetSelectedAuctionItem|SetSelectedAuctionItem]]("type", index) - Selects a specific item in the auction house.
+
:{{id|API|IsModifiedClick}}("action") - Returns 1 if the keys for the specified action are down, nil otherwise.
: [[API SortAuctionItems|SortAuctionItems]]("type", "sort") - Request that the specified auction list be sorted by a specific column.
+
:{{id|API|IsMouseButtonDown}}([button or "button"])
: [[API StartAuction|StartAuction]](minBid, buyoutPrice, runTime, stackSize, numStacks) - Starts the auction you have created in the Create Auction panel.
 
: UI [[API AuctionFrameAuctions.duration|AuctionFrameAuctions.duration]] - Set the amount of time the auction will run for in minutes.
 
   
=== Bank Functions ===
+
=== Buff / Debuff ===
: [[API BankButtonIDToInvSlotID|BankButtonIDToInvSlotID]](buttonID, isBag) - Returns the ID number of a bank button or bag in terms of inventory slot ID.
+
:PROTECTED {{id|API|CancelUnitBuff}}("unit", index or "spell" [,"filter" or "rank"]) - Removes a specific buff from the player.
: [[API CloseBankFrame|CloseBankFrame]]() - Close the bank frame if it's open.
+
:PROTECTED {{id|API|CancelShapeshiftForm}}() - Cancels a druid's shapeshift form buff.
: [[API GetBankSlotCost|GetBankSlotCost]](numSlots) - Returns the cost of the next bank slot.
+
:PROTECTED {{id|API|CancelItemTempEnchantment}}(weaponHand) - Cancels a temporary weapon enchant on ''weaponHand'' (1 for Main hand, 2 for Off hand).
: [[API GetNumBankSlots|GetNumBankSlots]]() - Returns total purchased bank bag slots, and a flag indicating if it's full.
+
:{{id|API|GetWeaponEnchantInfo}}() - Return information about main and offhand weapon enchantments.
: [[API PurchaseSlot|PurchaseSlot]]() - Buys another bank slot if available.
+
:{{id|API|UnitAura}}("[[unitId|unit]]", index or "buffName" [,filter]) - Returns information about a buff/debuff of a certain unit.
  +
:{{id|API|UnitBuff}}("[[unitId|unit]]", index or "buffName" [,castable]) - Retrieves info about a buff of a certain unit.
  +
:{{id|API|UnitDebuff}}("[[unitId|unit]]", index or "buffName" [,removable]) - Retrieves info about a debuff of a certain unit.
   
=== Barber Shop Functions ===
+
=== Calendar ===
These functions were introduced in [[Patch 3.0.2]].
+
:HW {{id|API|CalendarAddEvent}}() - Saves the selected event (new events only, requires hardware input to call)
: [[API ApplyBarberShopStyle|ApplyBarberShopStyle]]() - Purchase and apply the cosmetic changes.
+
:{{id|API|CalendarCanAddEvent}}() - Returns true if player can add an event
: [[API BarberShopReset|BarberShopReset]]() - Reset any changes made in the Barber Shop.
+
:{{id|API|CalendarCanSendInvite}}() - Returns true if player can send invites
: [[API CancelBarberShop|CancelBarberShop]]() - Exit the Barber Shop chair.
+
:{{id|API|CalendarCloseEvent}}() - Closes the selected event without saving it
: [[API GetBarberShopStyleInfo|GetBarberShopStyleInfo]](id) - Returns information about the currently selected style.
+
:{{id|API|CalendarContextDeselectEvent}}() - (added 3.0.8)
: [[API GetBarberShopTotalCost|GetBarberShopTotalCost]]() - Returns the total costs of the cosmetic changes.
+
:{{id|API|CalendarContextEventCanComplain}}(monthOffset, day, eventIndex) - Returns true if player can report the event as spam
: [[API GetFacialHairCustomization|GetFacialHairCustomization]]() - Returns the type of facial hair customization available to the character.
+
:{{id|API|CalendarContextEventCanEdit}}(monthOffset, day, eventIndex) - Returns true if player can edit the event
: [[API GetHairCustomization|GetHairCustomization]]() - Returns the type of haircut customization available to the character.
+
:{{id|API|CalendarContextEventClipboard}}()
: [[API SetNextBarberShopStyle|SetNextBarberShopStyle]](id[, reverse]) - Alters style selection in a particular category.
+
:{{id|API|CalendarContextEventComplain}}(monthOffset, day, eventIndex) - Reports the event as spam
  +
:{{id|API|CalendarContextEventCopy}}(monthOffset, day, eventIndex) - Copies the event to the clipboard
  +
:{{id|API|CalendarContextEventGetCalendarType}}()
  +
:{{id|API|CalendarContextEventPaste}}(monthOffset, day) - Pastes the clipboard event to the date
  +
:{{id|API|CalendarContextEventRemove}}(monthOffset, day, eventIndex) - Deletes the event
  +
:{{id|API|CalendarContextEventSignUp}}()
  +
:{{id|API|CalendarContextGetEventIndex}}() - (added 3.0.8)
  +
:{{id|API|CalendarContextInviteAvailable}}(monthOffset, day, eventIndex) - Accepts the invitation to the event
  +
:{{id|API|CalendarContextInviteDecline}}(monthOffset, day, eventIndex) - Declines the invitation to the event
  +
:{{id|API|CalendarContextInviteIsPending}}(monthOffset, day, eventIndex) - Returns true if the player hasn't responded to the event invite
  +
:{{id|API|CalendarContextInviteTentative}}()
  +
:{{id|API|CalendarContextInviteType}}
  +
:{{id|API|CalendarContextInviteModeratorStatus}}(monthOffset, day, eventIndex)
  +
:{{id|API|CalendarContextInviteRemove}}(monthOffset, day, eventIndex) - Removes the event from the calendar
  +
:{{id|API|CalendarContextInviteStatus}}(monthOffset, day, eventIndex) - returns inviteStatus
  +
:{{id|API|CalendarContextSelectEvent}}(monthOffset, day, eventIndex) - (added 3.0.8)
  +
:{{id|API|CalendarDefaultGuildFilter}}() - returns minLevel, maxLevel
  +
:{{id|API|CalendarEventAvailable}}() - Accepts the inviation to the currently open event
  +
:{{id|API|CalendarEventCanEdit}}() - Returns true if the event can be edited
  +
:{{id|API|CalendarEventCanModerate}}
  +
:{{id|API|CalendarEventClearAutoApprove}}() - Turns off automatic confirmations
  +
:{{id|API|CalendarEventClearLocked}}() - Unlocks the event
  +
:{{id|API|CalendarEventClearModerator}}()
  +
:{{id|API|CalendarEventDecline}}() - Declines the invitation to the currently open event
  +
:{{id|API|CalendarEventGetCalendarType}}()
  +
:{{id|API|CalendarEventGetInvite}}(inviteeIndex) - Returns status information for an invitee for the currently opened event
  +
:{{id|API|CalendarEventGetInviteResponseTime}}(inviteIndex)
  +
:{{id|API|CalendarEventGetInviteSortCriterion}}() - returns criterion, reverse
  +
:{{id|API|CalendarEventGetNumInvites}}() - Returns the number of invitees for the currently opened event
  +
:{{id|API|CalendarEventGetRepeatOptions}}() - Returns opt1, opt2
  +
:{{id|API|CalendarEventGetSelectedInvite}}() - returns inviteIndex
  +
:{{id|API|CalendarEventGetStatusOptions}}() - Returns ?
  +
:{{id|API|CalendarEventGetTextures}}(eventType) - Returns title1, tex1, expLvl1, title2, tex2, expLvl2, ...
  +
:{{id|API|CalendarEventGetTypes}}() - Returns name1, name2, ...
  +
:{{id|API|CalendarEventHasPendingInvite}}() - Returns true if the player has an unanswered invitation to the currently selected event
  +
:{{id|API|CalendarEventHaveSettingsChanged}}() - Returns true if the currently open event has been modified
  +
:{{id|API|CalendarEventInvite}}("Player") - Invite player to currently selected event
  +
:{{id|API|CalendarEventIsModerator}}()
  +
:{{id|API|CalendarEventRemoveInvite}}(inviteIndex)
  +
:{{id|API|CalendarEventSelectInvite}}(inviteIndex)
  +
:{{id|API|CalendarEventSetAutoApprove}}()
  +
:{{id|API|CalendarEventSetDate}}(month, day, year)
  +
:{{id|API|CalendarEventSetDescription}}(description)
  +
:{{id|API|CalendarEventSetLocked}}()
  +
:{{id|API|CalendarEventSetLockoutDate}}(lockoutDate)
  +
:{{id|API|CalendarEventSetLockoutTime}}(lockoutTime)
  +
:{{id|API|CalendarEventSetModerator}}(index)
  +
:{{id|API|CalendarEventSetRepeatOption}}(repeatoption)
  +
:{{id|API|CalendarEventSetSize}}
  +
:{{id|API|CalendarEventSetStatus}}(index, status) - Sets the invitation status of a player to the current event
  +
:{{id|API|CalendarEventSetTextureID}}(textureIndex)
  +
:{{id|API|CalendarEventSetTime}}(hour, minute)
  +
:{{id|API|CalendarEventSetTitle}}(title)
  +
:{{id|API|CalendarEventSetType}}(type)
  +
:{{id|API|CalendarEventSignUp}}()
  +
:{{id|API|CalendarEventSortInvites}}(criterion)
  +
:{{id|API|CalendarEventTentative}}()
  +
:{{id|API|CalendarGetAbsMonth}}() - returns month, year
  +
:{{id|API|CalendarGetDate}}() - Call this only after PLAYER_ENTERING_WORLD event
  +
:{{id|API|CalendarGetDayEvent}}(monthOffset, day, eventIndex)
  +
:{{id|API|CalendarGetDayEventSequenceInfo}} - Retrieve information about the specified event.
  +
:{{id|API|CalendarGetEventIndex}}() - returns monthOffset, day, index
  +
:{{id|API|CalendarGetEventInfo}}() - Returns detailed information about an event selected with CalendarOpenEvent()
  +
:{{id|API|CalendarGetFirstPendingInvite}}(monthOffset, day) - returns eventIndex
  +
:{{id|API|CalendarGetHolidayInfo}}(monthOffset, day, eventIndex) - Returns Holiday Name, Holiday Description, Calendar Icon
  +
:{{id|API|CalendarGetMaxCreateDate}}() - returns maxWeekday, maxMonth, maxDay, maxYear
  +
:{{id|API|CalendarGetMaxDate}}() - returns maxWeekday, maxMonth, maxDay, maxYear
  +
:{{id|API|CalendarGetMinDate}}() - returns minWeekday, minMonth, minDay, minYear
  +
:{{id|API|CalendarGetMinHistoryDate}}() - returns minWeekday, minMonth, minDay, minYear
  +
:{{id|API|CalendarGetMonth}}([monthOffset]) - returns month, year
  +
:{{id|API|CalendarGetMonthNames}}() - returns a list of the month names
  +
:{{id|API|CalendarGetNumDayEvents}}(monthOffset[, day])
  +
:{{id|API|CalendarGetNumPendingInvites}}() - returns count
  +
:{{id|API|CalendarGetRaidInfo}} (monthOffset, day, eventIndex) - returns name, calendarType, raidID, hour, minute, difficulty
  +
:{{id|API|CalendarGetWeekdayNames}}() - returns a list of the weekday names
  +
:{{id|API|CalendarIsActionPending}}() - returns isPending
  +
:{{id|API|CalendarMassInviteArenaTeam}}(teamType)
  +
:{{id|API|CalendarMassInviteGuild}}(minLevel, maxLevel, rank)
  +
:{{id|API|CalendarNewEvent}}() - Creates and selected a new event
  +
:{{id|API|CalendarNewGuildAnnouncement}}()
  +
:{{id|API|CalendarNewGuildEvent}}(minLevel, maxLevel, minRank) - Replaces the invite list of the selected new event with the specified guild members
  +
:{{id|API|CalendarOpenEvent}}(monthOffset, day, eventIndex) - Selects an existing event
  +
:{{id|API|CalendarRemoveEvent}}() - Removes the selected event from the calendar (invitees only)
  +
:{{id|API|CalendarSetAbsMonth}}(month, year) - Sets the reference month and year for functions which use a month offset
  +
:{{id|API|CalendarSetMonth}}(monthOffset)
  +
:{{id|API|CalendarUpdateEvent}}() - Saves the selected event (existing events only, requires hardware input to call)
  +
:{{id|API|OpenCalendar}}() - Requests calendar information from the server. Does not open the calendar frame. (added 3.0.8)
   
=== Battlefield Functions ===
+
=== Camera ===
: [[API AcceptAreaSpiritHeal|AcceptAreaSpiritHeal]]() - Accept a spirit heal.
+
'Mouse Look' refers to holding down the right mouse button and controlling the movement direction. Shifting the view by holding down the 'left' mouse button is not covered by these APIs.
: [[API AcceptBattlefieldPort|AcceptBattlefieldPort]](index[, acceptFlag]) - Accept or reject an offered battlefield port.
 
: [[API CancelAreaSpiritHeal|CancelAreaSpiritHeal]]() - Cancel a spirit heal.
 
: [[API CanJoinBattlefieldAsGroup|CanJoinBattlefieldAsGroup]]() - returns nil if the player can not do a group join for a battlefield.
 
: [[API CheckSpiritHealerDist|CheckSpiritHealerDist]]() - Return true if you are in range with spirit healer while dead.
 
: [[API GetAreaSpiritHealerTime|GetAreaSpiritHealerTime]]() - Returns the time left until the next resurrection by the Sprit Guide.
 
: [[API GetBattlefieldEstimatedWaitTime|GetBattlefieldEstimatedWaitTime]](index) - Get the estimated wait for entry into the battlefield.
 
: [[API GetBattlefieldFlagPosition|GetBattlefieldFlagPosition]](index) - Get the map position and texture of the flag.
 
: [[API GetBattlefieldInstanceExpiration|GetBattlefieldInstanceExpiration]]() - Get shutdown timer for the battlefield instance.
 
: [[API GetBattlefieldInstanceRunTime|GetBattlefieldInstanceRunTime]]() - In milliseconds, the time since battleground started (seems to be queried from server because it is not in sync with time()).
 
: [[API GetBattlefieldMapIconScale|GetBattlefieldMapIconScale]]() - Scale of the landmark icons on the battlefield minimap.
 
: [[API GetBattlefieldPortExpiration|GetBattlefieldPortExpiration]](index) - Get the remaining seconds before the battlefield port expires.
 
: [[API GetBattlefieldPosition|GetBattlefieldPosition]](index) - Get the map position and name of a player in the battleground not in your raid.
 
: [[API GetBattlefieldScore|GetBattlefieldScore]](index) - Get score information about a player.
 
: [[API GetBattlefieldStatData|GetBattlefieldStatData]](playerIndex, slotIndex) - Get information for a player from a column thats specific to a battleground (like Warsong Gulch flag captures).
 
: [[API GetBattlefieldStatInfo|GetBattlefieldStatInfo]](index) - Get the battleground specific column for the score board.
 
: [[API GetBattlefieldStatus|GetBattlefieldStatus]](index) - Get the battlefield's current status.
 
: [[API GetBattlefieldTimeWaited|GetBattlefieldTimeWaited]](index) - Get time waited in queue in milliseconds.
 
: [[API GetBattlefieldWinner|GetBattlefieldWinner]]() - Get the battlefields winner.
 
: [[API GetBattlegroundInfo|GetBattlegroundInfo]]() - Returns information about a battleground type.
 
: [[API GetNumBattlefieldFlagPositions|GetNumBattlefieldFlagPositions]]() - Get the number of flag positions available from GetBattlefieldFlagPosition().
 
: [[API GetNumBattlefieldPositions|GetNumBattlefieldPositions]]() - Get the number of positions available from GetBattlefieldPosition().
 
: [[API GetNumBattlefieldScores|GetNumBattlefieldScores]]() - Returns the number of scores(players) listed in the battlefield scoreboard.
 
: [[API GetNumBattlefieldStats|GetNumBattlefieldStats]]() - Get the number of battleground specific columns.
 
: [[API GetNumWorldStateUI|GetNumWorldStateUI]]() - Get the number of WorldState UI's.
 
: [[API GetWintergraspWaitTime|GetWintergraspWaitTime]]() - Get the number of seconds until the next Wintergrasp battle. Returns nil if battle is in progress.
 
: [[API GetWorldStateUIInfo|GetWorldStateUIInfo]](i) - Get score and flag status within a battlefield.
 
: [[API IsPVPTimerRunning|IsPVPTimerRunning]]()
 
: [[API JoinBattlefield|JoinBattlefield]](index[, joinAs]) - Queue for a battleground either solo or as a group.
 
: [[API LeaveBattlefield|LeaveBattlefield]]() - Leave the current battlefield
 
: [[API ReportPlayerIsPVPAFK|ReportPlayerIsPVPAFK]]("[[unitId|unit]]") - Reports the specified player as AFK in a battleground.
 
: [[API RequestBattlefieldPositions|RequestBattlefieldPositions]]() - Request new data for GetBattlefieldPosition().
 
: [[API RequestBattlefieldScoreData|RequestBattlefieldScoreData]]() - Request new data for GetBattlefieldScore().
 
: [[API RequestBattlegroundInstanceInfo|RequestBattlegroundInstanceInfo]](index) - Requests data about the available instances of a battleground.
 
: [[API SetBattlefieldScoreFaction|SetBattlefieldScoreFaction]]([faction]) - Set the faction to show on the battlefield scoreboard.
 
   
=== Binding Functions ===
+
:PROTECTED {{id|API|CameraOrSelectOrMoveStart}}() - Begin "Left click" in the 3D world. (protected 1.10)
: [[API GetBinding|GetBinding]](index) - Get action and key bindings for that index.
+
:PROTECTED {{id|API|CameraOrSelectOrMoveStop}}([stickyFlag]) - End "Left click" in the 3D world. (protected 1.10)
: [[API GetBindingAction|GetBindingAction]]("KEY" [,checkOverride]) - Get the action bound to that key.
+
:{{id|API|CameraZoomIn}}(increment) - Zooms the camera into the viewplane by increment.
: [[API GetBindingKey|GetBindingKey]]("command") - Get the key(s) bound to that action.
+
:{{id|API|CameraZoomOut}}(increment) - Zooms the camera out of the viewplane by increment.
: UI [[API GetBindingText|GetBindingText]]("key", "prefix", returnAbbr) - Gets the string value for the key.
+
:{{id|API|FlipCameraYaw}}(degrees) - Rotates the camera about the Z-axis by the angle amount specified in degrees.
: [[API GetCurrentBindingSet|GetCurrentBindingSet]]() - Queries if current set of key bindings is character or account specific
+
:{{id|API|IsMouselooking}}() - Returns 1 if mouselook is currently active, nil otherwise.
: [[API GetNumBindings|GetNumBindings]]() - Get total number key bindings and headers.
+
:{{id|API|MouselookStart}}() - Enters mouse look mode; mouse movement is used to adjust movement/facing direction.
: [[API LoadBindings|LoadBindings]](which) - Loads default, account or character specific key binding set into memory from disk.
+
:{{id|API|MouselookStop}}() - Exits mouse look mode; mouse movement is used to move the mouse cursor.
: [[API RunBinding|RunBinding]]("command"[, "up"]) - Executes the key binding named "command"
+
:{{id|API|MoveViewDownStart}}() - Begins rotating the camera downward.
: [[API SaveBindings|SaveBindings]](which) - Saves account or character specific key bindings from memory to disk.
+
:{{id|API|MoveViewDownStop}}() - Stops rotating the camera after [[#MoveViewDownStart]]() is called.
: NOCOMBAT [[API SetBinding|SetBinding]]("key"[, "command"[, mode]]) - Sets or unsets key bindings. (2.0 - Can not be used in combat.)
+
:{{id|API|MoveViewInStart}}() - Begins zooming the camera in.
: NOCOMBAT [[API SetBindingSpell|SetBindingSpell]]("KEY", "Spell Name") - Set a key binding directly to a spell, uses the same spell name syntax as /cast.
+
:{{id|API|MoveViewInStop}}() - Stops zooming the camera in after [[#MoveViewInStart]]() is called.
: NOCOMBAT [[API SetBindingClick|SetBindingClick]]("KEY", "ButtonName" [,"mouseButton"]) - Set a key binding directly to a Button object. The click sends a mouse down when the key is pressed, and a mouse up when it is released.
+
:{{id|API|MoveViewLeftStart}}() - Begins rotating the camera to the Left.
: NOCOMBAT [[API SetBindingItem|SetBindingItem]]("KEY", "itemname") -
+
:{{id|API|MoveViewLeftStop}}() - Stops rotating the camera after [[#MoveViewLeftStart]]() is called.
: NOCOMBAT [[API SetBindingMacro|SetBindingMacro]]("KEY", "macroname"|macroid) -
+
:{{id|API|MoveViewOutStart}}() - Begins zooming the camera out.
: [[API SetConsoleKey|SetConsoleKey]]("key") - Sets the console key (normally ~ ).
+
:{{id|API|MoveViewOutStop}}() - Stops zooming the camera out after [[#MoveViewOutStart]]() is called.
: NOCOMBAT [[API SetOverrideBinding|SetOverrideBinding]](owner, isPriority, "KEY" [,"COMMAND"]) - Set (or clear) an override key binding.
+
:{{id|API|MoveViewRightStart}}() - Begins rotating the camera to the Right.
: NOCOMBAT [[API SetOverrideBindingSpell|SetOverrideBindingSpell]](owner, isPriority, "KEY", "spellname") -
+
:{{id|API|MoveViewRightStop}}() - Stops rotating the camera after [[#MoveViewRightStart]]() is called.
: NOCOMBAT [[API SetOverrideBindingClick|SetOverrideBindingClick]](owner, isPriority, "key", "buttonName" [, "mouseClick"]) - Sets an override binding that acts like a mouse click on a button.
+
:{{id|API|MoveViewUpStart}}() - Begins rotating the camera upward.
: NOCOMBAT [[API SetOverrideBindingItem|SetOverrideBindingItem]](owner, isPriority, "KEY", "itemname") -
+
:{{id|API|MoveViewUpStop}}() - Stops rotating the camera after [[#MoveViewUpStart]]() is called.
: NOCOMBAT [[API SetOverrideBindingMacro|SetOverrideBindingMacro]](owner, isPriority, "KEY", "macroname"|macroid) -
+
:PROTECTED {{id|API|PitchDownStart}}() - Begins pitching the camera Downward.
: NOCOMBAT [[API ClearOverrideBindings|ClearOverrideBindings]](owner) - Reset all overrides belonging to an owner.
+
:PROTECTED {{id|API|PitchDownStop}}() - Stops pitching the camera after [[#PitchDownStart]]() is called.
: [[API SetMouselookOverrideBinding|SetMouselookOverrideBinding]]("KEY" [,"COMMAND"]) -
+
:PROTECTED {{id|API|PitchUpStart}}() - Begins pitching the camera Upward.
: [[API IsModifierKeyDown|IsModifierKeyDown]]() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown()).
+
:PROTECTED {{id|API|PitchUpStop}}() - Stops pitching the camera after [[#PitchUpStart]]() is called.
: [[API IsModifiedClick|IsModifiedClick]]("action") - Returns 1 if the keys for the specified action are down, nil otherwise.
+
:{{id|API|NextView}}() - Cycles forward through the five predefined camera positions.
: [[API IsMouseButtonDown|IsMouseButtonDown]]([button or "button"]) -
+
:{{id|API|PrevView}}() - Cycles backward through the five predefined camera positions.
  +
:{{id|API|ResetView}}(index) - Resets the specified (1-5) predefined camera position to its default if it was changed using [[#SaveView]](index).
  +
:{{id|API|SaveView}}(index) - Replaces the specified (1-5) predefined camera positions with the current camera position.
  +
:{{id|API|SetView}}(index) - Sets camera position to a specified (1-5) predefined camera position.
   
=== Buff/Debuff Functions ===
+
=== Channel ===
: PROTECTED [[API CancelUnitBuff|CancelUnitBuff]]("unit", index or "spell" [,"filter" or "rank"]) - Removes a specific buff from the player.
+
These are chat functions which are specific to channels. Also see the [[#Chat Window]] and [[#Communication]] sections.
: PROTECTED [[API CancelShapeshiftForm|CancelShapeshiftForm]]() - Cancels a druid's shapeshift form buff.
+
:{{id|API|AddChatWindowChannel}}(chatFrameIndex, "channel") - Make a chat channel visible in a specific ChatFrame.
: PROTECTED [[API CancelItemTempEnchantment|CancelItemTempEnchantment]](weaponHand) - Cancels a temporary weapon enchant on ''weaponHand'' (1 for Main hand, 2 for Off hand).
+
:{{id|API|ChannelBan}}("channel", "name") - Bans a player from the specified channel.
: [[API GetWeaponEnchantInfo|GetWeaponEnchantInfo]]() - Return information about main and offhand weapon enchantments.
+
:{{id|API|ChannelInvite}}("channel", "name") - Invites the specified user to the channel.
: [[API UnitAura|UnitAura]]("[[unitId|unit]]", index or "buffName" [,filter]) - Returns information about a buff/debuff of a certain unit.
+
:{{id|API|ChannelKick}}("channel", "name") - Kicks the specified user from the channel.
: [[API UnitBuff|UnitBuff]]("[[unitId|unit]]", index or "buffName" [,castable]) - Retrieves info about a buff of a certain unit.
+
:{{id|API|ChannelModerator}}("channel", "name") - Sets the specified player as the channel moderator.
: [[API UnitDebuff|UnitDebuff]]("[[unitId|unit]]", index or "buffName" [,removable]) - Retrieves info about a debuff of a certain unit.
+
:{{id|API|ChannelMute}}("channel", "name") - Turns off the specified player's ability to speak in a channel.
  +
:{{id|API|ChannelToggleAnnouncements}}("channel") - Toggles the channel to display announcements either on or off.
  +
:{{id|API|ChannelUnban}}("channel", "name") - Unbans a player from a channel.
  +
:{{id|API|ChannelUnmoderator}}("channel", "name") - Takes the specified user away from the moderator status.
  +
:{{id|API|ChannelUnmute}}("channel", "name") - Unmutes the specified user from the channel.
  +
:{{id|API|DisplayChannelOwner}}("channel") - Displays the owner of the specified channel in the default chat.
  +
:{{id|API|DeclineInvite}}("channel") - Declines an invitation to join a chat channel.
  +
:{{id|API|EnumerateServerChannels}}() - Retrieves all available server channels (zone dependent).
  +
:{{id|API|GetChannelList}}() - Retrieves joined channels.
  +
:{{id|API|GetChannelName}}("channel" or index) - Retrieves the name from a specific channel.
  +
:{{id|API|GetChatWindowChannels}}(index) - Get the chat channels received by a chat window.
  +
:{{id|API|JoinChannelByName}}("channel"[, "password"[, frameId]]) - Join the specified chat channel, with optional password, and register for specified frame. (updated 1.9)
  +
:{{id|API|LeaveChannelByName}}("channel") - Leaves the channel with the specified name.
  +
:{{id|API|ListChannelByName}}(channelMatch) - Lists members in the given channel to the chat window.
  +
:{{id|API|ListChannels}}() - Lists all of the channels into the chat window.
  +
:{{id|API|RemoveChatWindowChannel}}(chatFrameIndex, "channel") - Make a chat channel invisible (hidden) in a specific ChatFrame.
  +
:{{id|API|SendChatMessage}}("msg",[ "chatType",[ "language",[ "channel"]]]) - Sends a chat message.
  +
:{{id|API|SetChannelOwner}}("channel", "name") - Sets the channel owner.
  +
:{{id|API|SetChannelPassword}}("channel", "password") - Changes the password of the current channel.
   
=== Calendar Functions ===
+
=== Character ===
: HW [[API CalendarAddEvent|CalendarAddEvent]]() - Saves the selected event (new events only, requires hardware input to call)
+
:{{id|API|AcceptResurrect}}() - The player accepts the request from another player to resurrect him/herself.
: [[API CalendarCanAddEvent|CalendarCanAddEvent]]() - Returns true if player can add an event
+
:{{id|API|AcceptXPLoss}}() - Accept the durability loss to be reborn by a spirit healer. The name is a remnant from when spirit res was an XP loss instead.
: [[API CalendarCanSendInvite|CalendarCanSendInvite]]() - Returns true if player can send invites
+
:{{id|API|CheckBinderDist}}() - Check whether the player is close enough to interact with the Hearthstone binder.
: [[API CalendarCloseEvent|CalendarCloseEvent]]() - Closes the selected event without saving it
+
:{{id|API|ConfirmBinder}}() - Confirm the request to set the binding of the player's Hearthstone.
: [[API CalendarContextDeselectEvent|CalendarContextDeselectEvent]]() - New in 3.0.8
+
:{{id|API|DeclineResurrect}}() - Decline the request from another player to resurrect him/herself.
: [[API CalendarContextEventCanComplain|CalendarContextEventCanComplain]](monthOffset, day, eventIndex) - Returns true if player can report the event as spam
+
:{{id|API|DestroyTotem}}(slot)
: [[API CalendarContextEventCanEdit|CalendarContextEventCanEdit]](monthOffset, day, eventIndex) - Returns true if player can edit the event
+
:{{id|API|GetBindLocation}}() - Get the name of the location for your Hearthstone.
: [[API CalendarContextEventClipboard|CalendarContextEventClipboard]]()
+
:{{id|API|GetComboPoints}}() - Get the current number of combo points.
: [[API CalendarContextEventComplain|CalendarContextEventComplain]](monthOffset, day, eventIndex) - Reports the event as spam
+
:{{id|API|GetCorpseRecoveryDelay}}() - Time left before a player can accept a resurrection
: [[API CalendarContextEventCopy|CalendarContextEventCopy]](monthOffset, day, eventIndex) - Copies the event to the clipboard
+
:{{id|API|GetCurrentTitle}}() - Returns the player's current [[titleId]].
: [[API CalendarContextEventGetCalendarType|CalendarContextEventGetCalendarType]]() - ?
+
:{{id|API|GetMirrorTimerInfo}}(id) - returns information about a mirror timer (exhaustion, breath and feign death timers)
: [[API CalendarContextEventPaste|CalendarContextEventPaste]](monthOffset, day) - Pastes the clipboard event to the date
+
:{{id|API|GetMirrorTimerProgress}}(id) - returns the current value of a mirror timer (exhaustion, breath and feign death timers)
: [[API CalendarContextEventRemove|CalendarContextEventRemove]](monthOffset, day, eventIndex) - Deletes the event
+
:{{id|API|GetMoney}}() - Returns an integer value of your held money in copper.
: [[API CalendarContextEventSignUp|CalendarContextEventSignUp]]() - ?
+
:{{id|API|GetNumTitles}}() - Returns the maximum [[titleId]]
: [[API CalendarContextGetEventIndex|CalendarContextGetEventIndex]]() - New in 3.0.8
+
:{{id|API|GetPlayerFacing}}() - Returns the direction the player is facing in radians ([-R, R] range, 0 is north, R/2 is east). (added 3.1)
: [[API CalendarContextInviteAvailable|CalendarContextInviteAvailable]](monthOffset, day, eventIndex) - Accepts the invitation to the event
+
:{{id|API|GetPVPDesired}}() - Returns whether the player has permanently turned on their PvP flag.
: [[API CalendarContextInviteDecline|CalendarContextInviteDecline]](monthOffset, day, eventIndex) - Declines the invitation to the event
+
:{{id|API|GetReleaseTimeRemaining}}() - Returns the amount of time left before your ghost is pulled from your body.
: [[API CalendarContextInviteIsPending|CalendarContextInviteIsPending]](monthOffset, day, eventIndex) - Returns true if the player hasn't responded to the event invite
+
:{{id|API|GetResSicknessDuration}}()
: [[API CalendarContextInviteTentative|CalendarContextInviteTentative]]() - ?
+
:{{id|API|GetRestState}}() - Returns information about a player's rest state (saved up experience bonus)
: [[API CalendarContextInviteType|CalendarContextInviteType]] - ?
+
:{{id|API|GetRuneCooldown}}(id) - Returns cooldown information about a given rune.
: [[API CalendarContextInviteModeratorStatus|CalendarContextInviteModeratorStatus]](monthOffset, day, eventIndex) - ?
+
:{{id|API|GetRuneCount}}(slot)
: [[API CalendarContextInviteRemove|CalendarContextInviteRemove]](monthOffset, day, eventIndex) - Removes the event from the calendar
+
:{{id|API|GetRuneType}}(id) - Returns the type of rune with the given id.
: [[API CalendarContextInviteStatus|CalendarContextInviteStatus]](monthOffset, day, eventIndex) - returns inviteStatus
+
:{{id|API|GetTimeToWellRested}}() - Defunct.
: [[API CalendarContextSelectEvent|CalendarContextSelectEvent]](monthOffset, day, eventIndex) - New in 3.0.8
+
:{{id|API|GetTitleName}}([[titleId]]) - Returns the player's current title name
: [[API CalendarDefaultGuildFilter|CalendarDefaultGuildFilter]]() - returns minLevel, maxLevel
+
:{{id|API|GetUnitPitch}}(UnitID) - Returns the true pitch radians ([-R, R] 0 is level). UnitID restricted to "player".
: [[API CalendarEventAvailable|CalendarEventAvailable]]() - Accepts the inviation to the currently open event
+
:{{id|API|GetXPExhaustion}}() - Returns your character's current rested XP, nil if character is not rested.
: [[API CalendarEventCanEdit|CalendarEventCanEdit]]() - Returns true if the event can be edited
+
:{{id|API|HasFullControl}}()
: [[API CalendarEventCanModerate|CalendarEventCanModerate]] - ?
+
:{{id|API|HasSoulstone}}()
: [[API CalendarEventClearAutoApprove|CalendarEventClearAutoApprove]]() - Turns off automatic confirmations
+
:{{id|API|IsFalling}}() - Returns 1 if your character is currently plummeting to their doom.
: [[API CalendarEventClearLocked|CalendarEventClearLocked]]() - Unlocks the event
+
:{{id|API|IsFlying}}() - Returns 1 if flying, otherwise nil.
: [[API CalendarEventClearModerator|CalendarEventClearModerator]]()
+
:{{id|API|IsFlyableArea}}() - Returns 1 if it is possible to fly here, nil otherwise.
: [[API CalendarEventDecline|CalendarEventDecline]]() - Declines the invitation to the currently open event
+
:{{id|API|IsIndoors}}() - Returns 1 if you are indoors, otherwise nil. Returns nil for indoor areas where you can still mount.
: [[API CalendarEventGetCalendarType|CalendarEventGetCalendarType]]() - ?
+
:{{id|API|IsMounted}}() - Returns 1 if mounted, otherwise nil
: [[API CalendarEventGetInvite|CalendarEventGetInvite]](inviteeIndex) - Returns status information for an invitee for the currently opened event
+
:{{id|API|IsOutdoors}}() - Returns 1 if you are outdoors, otherwise nil. Returns 1 for indoor areas where you can still mount.
: [[API CalendarEventGetInviteResponseTime|CalendarEventGetInviteResponseTime]](inviteIndex) - ?
+
:{{id|API|IsOutOfBounds}}() - Returns 1 if you fell off the map.
: [[API CalendarEventGetInviteSortCriterion|CalendarEventGetInviteSortCriterion]]() - returns criterion, reverse
+
:{{id|API|IsResting}}() - Returns 1 if your character is currently resting.
: [[API CalendarEventGetNumInvites|CalendarEventGetNumInvites]]() - Returns the number of invitees for the currently opened event
+
:{{id|API|IsStealthed}}() - Returns 1 if stealthed or shadowmeld, otherwise nil
: [[API CalendarEventGetRepeatOptions|CalendarEventGetRepeatOptions]]() - Returns opt1, opt2
+
:{{id|API|IsSwimming}}() - Returns 1 if your character is currently swimming.
: [[API CalendarEventGetSelectedInvite|CalendarEventGetSelectedInvite]]() - returns inviteIndex
+
:{{id|API|IsTitleKnown}}(index) - Returns 1 if the title is valid for the player, otherwise 0.
: [[API CalendarEventGetStatusOptions|CalendarEventGetStatusOptions]]() - Returns ??
+
:{{id|API|IsXPUserDisabled}}() - Returns 1 if the character has disabled experience gain.
: [[API CalendarEventGetTextures|CalendarEventGetTextures]](eventType) - Returns title1, tex1, expLvl1, title2, tex2, expLvl2, ...
+
:{{id|API|NotWhileDeadError}}() - Generates an error message saying you cannot do that while dead.
: [[API CalendarEventGetTypes|CalendarEventGetTypes]]() - Returns name1, name2, ...
+
:{{id|API|ResurrectHasSickness}}() - Appears to be used when accepting a resurrection will give you resurrection sickessness.
: [[API CalendarEventHasPendingInvite|CalendarEventHasPendingInvite]]() - Returns true if the player has an unanswered invitation to the currently selected event
+
:{{id|API|ResurrectHasTimer}}() - Does the player have to wait before accepting a resurrection
: [[API CalendarEventHaveSettingsChanged|CalendarEventHaveSettingsChanged]]() - Returns true if the currently open event has been modified
+
:{{id|API|ResurrectGetOfferer}}() - Returns the name of the person offering to resurrect you.
: [[API CalendarEventInvite|CalendarEventInvite]]("Player") - Invite player to currently selected event
+
:{{id|API|RetrieveCorpse}}() - Resurrects when near corpse. e.g., The "Accept" button one sees after running back to your body.
: [[API CalendarEventIsModerator|CalendarEventIsModerator]]() - ?
+
:HW {{id|API|SetCurrentTitle}}([[titleId]]) - Sets the player's current title id
: [[API CalendarEventRemoveInvite|CalendarEventRemoveInvite]](inviteIndex)
+
:{{id|API|TargetTotem}}() - (added 3.0.8)
: [[API CalendarEventSelectInvite|CalendarEventSelectInvite]](inviteIndex)
 
: [[API CalendarEventSetAutoApprove|CalendarEventSetAutoApprove]]()
 
: [[API CalendarEventSetDate|CalendarEventSetDate]](month, day, year)
 
: [[API CalendarEventSetDescription|CalendarEventSetDescription]](description)
 
: [[API CalendarEventSetLocked|CalendarEventSetLocked]]()
 
: [[API CalendarEventSetLockoutDate|CalendarEventSetLockoutDate]](lockoutDate) - ??
 
: [[API CalendarEventSetLockoutTime|CalendarEventSetLockoutTime]](lockoutTime) - ??
 
: [[API CalendarEventSetModerator|CalendarEventSetModerator]](index)
 
: [[API CalendarEventSetRepeatOption|CalendarEventSetRepeatOption]](repeatoption)
 
: [[API CalendarEventSetSize|CalendarEventSetSize]] - ??
 
: [[API CalendarEventSetStatus|CalendarEventSetStatus]](index, status) - Sets the invitation status of a player to the current event
 
: [[API CalendarEventSetTextureID|CalendarEventSetTextureID]](textureIndex)
 
: [[API CalendarEventSetTime|CalendarEventSetTime]](hour, minute)
 
: [[API CalendarEventSetTitle|CalendarEventSetTitle]](title)
 
: [[API CalendarEventSetType|CalendarEventSetType]](type)
 
: [[API CalendarEventSignUp|CalendarEventSignUp]]() - ?
 
: [[API CalendarEventSortInvites|CalendarEventSortInvites]](criterion)
 
: [[API CalendarEventTentative|CalendarEventTentative]]() - ?
 
: [[API CalendarGetAbsMonth|CalendarGetAbsMonth]]() - returns month, year
 
: [[API CalendarGetDate|CalendarGetDate]]() - Call this only after PLAYER_ENTERING_WORLD event
 
: [[API CalendarGetDayEvent|CalendarGetDayEvent]](monthOffset, day, eventIndex)
 
: [[API CalendarGetDayEventSequenceInfo|CalendarGetDayEventSequenceInfo]] - Retrieve information about the specified event.
 
: [[API CalendarGetEventIndex|CalendarGetEventIndex]]() - returns monthOffset, day, index
 
: [[API CalendarGetEventInfo|CalendarGetEventInfo]]() - Returns detailed information about an event selected with CalendarOpenEvent()
 
: [[API CalendarGetFirstPendingInvite|CalendarGetFirstPendingInvite]](monthOffset, day) - returns eventIndex
 
: [[API CalendarGetHolidayInfo|CalendarGetHolidayInfo]](monthOffset, day, eventIndex) - Returns Holiday Name, Holiday Description, Calendar Icon
 
: [[API CalendarGetMaxCreateDate|CalendarGetMaxCreateDate]]() - returns maxWeekday, maxMonth, maxDay, maxYear
 
: [[API CalendarGetMaxDate|CalendarGetMaxDate]]() - returns maxWeekday, maxMonth, maxDay, maxYear
 
: [[API CalendarGetMinDate|CalendarGetMinDate]]() - returns minWeekday, minMonth, minDay, minYear
 
: [[API CalendarGetMinHistoryDate|CalendarGetMinHistoryDate]]() - returns minWeekday, minMonth, minDay, minYear
 
: [[API CalendarGetMonth|CalendarGetMonth]]([monthOffset]) - returns month, year
 
: [[API CalendarGetMonthNames|CalendarGetMonthNames]]() - returns a list of the month names
 
: [[API CalendarGetNumDayEvents|CalendarGetNumDayEvents]](monthOffset[, day])
 
: [[API CalendarGetNumPendingInvites|CalendarGetNumPendingInvites]]() - returns count
 
: [[API CalendarGetRaidInfo|CalendarGetRaidInfo]] (monthOffset, day, eventIndex) - returns name, calendarType, raidID, hour, minute, difficulty
 
: [[API CalendarGetWeekdayNames|CalendarGetWeekdayNames]]() - returns a list of the weekday names
 
: [[API CalendarIsActionPending|CalendarIsActionPending]]() - returns isPending
 
: [[API CalendarMassInviteArenaTeam|CalendarMassInviteArenaTeam]](teamType) - ?
 
: [[API CalendarMassInviteGuild|CalendarMassInviteGuild]](minLevel, maxLevel, rank) - ?
 
: [[API CalendarNewEvent|CalendarNewEvent]]() - Creates and selected a new event
 
: [[API CalendarNewGuildAnnouncement|CalendarNewGuildAnnouncement]]() - ?
 
: [[API CalendarNewGuildEvent|CalendarNewGuildEvent]](minLevel, maxLevel, minRank) - Replaces the invite list of the selected new event with the specified guild members
 
: [[API CalendarOpenEvent|CalendarOpenEvent]](monthOffset, day, eventIndex) - Selects an existing event
 
: [[API CalendarRemoveEvent|CalendarRemoveEvent]]() - Removes the selected event from the calendar (invitees only)
 
: [[API CalendarSetAbsMonth|CalendarSetAbsMonth]](month, year) - Sets the reference month and year for functions which use a month offset
 
: [[API CalendarSetMonth|CalendarSetMonth]](monthOffset)
 
: [[API CalendarUpdateEvent|CalendarUpdateEvent]]() - Saves the selected event (existing events only, requires hardware input to call)
 
: [[API OpenCalendar|OpenCalendar]]() - Requests calendar information from the server. Does not open the calendar frame. (New in 3.0.8)
 
   
  +
=== Character Statistics ===
  +
:{{id|API|GetArmorPenetration}}() - Returns percent of armor ignored by your physical attacks.
  +
:{{id|API|GetAttackPowerForStat}}(stat, value) - Returns the amount of attack power contributed by a specified amount of a particular stat.
  +
:{{id|API|GetAverageItemLevel}}() - Returns the player's current iLevel.
  +
:{{id|API|GetBlockChance}}() - Returns the player's percentage block chance.
  +
:{{id|API|GetCombatRating}}(ratingID) - Returns the player's combat rating for a particular combat rating. (added 2.0)
  +
:{{id|API|GetCombatRatingBonus}}(ratingID) - Returns the player's combat rating bonus for a particular combat rating. (added 2.0)
  +
:{{id|API|GetCritChance}}() - Returns the player's melee critical hit chance
  +
:{{id|API|GetCritChanceFromAgility}}("unit") - Returns the amount of your critical hit chance contributed by Agility.
  +
:{{id|API|GetDodgeChance}}() - Returns the player's percentage dodge chance.
  +
:{{id|API|GetExpertise}}() - Returns main hand and offhand expertise value.
  +
:{{id|API|GetExpertisePercent}}() - Returns reduction in dodge and parry chances for main hand and offhand attacks, in percent.
  +
:{{id|API|GetManaRegen}}() - Returns the player's mana regeneration rates.
  +
:{{id|API|GetMastery}}() - Returns the sum of player's base and rating bonus mastery.
  +
:{{id|API|GetMasteryEffect}}() - Returns the effect of player's current Mastery.
  +
:{{id|API|GetMaxCombatRatingBonus}}(lowestRating)
  +
:{{id|API|GetParryChance}}() - Returns the player's percentage parry chance.
  +
:{{id|API|GetPetSpellBonusDamage}}
  +
:{{id|API|GetPowerRegen}}() - Returns normal and combat power regeneration rates
  +
:{{id|API|GetSpellBonusDamage}}(spellTreeID) - Returns the raw spell damage of the player for a given spell tree.
  +
:{{id|API|GetRangedCritChance}}() - Returns the players ranged critical strike chance.
  +
:{{id|API|GetSpellBonusHealing}}() - Returns the raw bonus healing of the player.
  +
:{{id|API|GetSpellCritChance}}(school) - returns the players critical hit chance with a particular spell school.
  +
:{{id|API|GetShieldBlock}}()
  +
:{{id|API|GetSpellCritChanceFromIntellect}}("unit")
  +
:{{id|API|GetSpellPenetration}}()
   
=== Camera Functions ===
+
=== Chat Window ===
''Mouse Look'' refers to holding down the right mouse button and controlling the movement direction. Shifting the view by holding down the ''left'' mouse button is not covered by these APIs.
+
These are functions which are specific to chat 'window' management. See also the [[#Channel]] and [[#Communication]] sections. See [[World of Warcraft API/Mikk's spiel on chat windows|Mikk's spiel on chat windows]], which may be out of date.
   
: PROTECTED [[API CameraOrSelectOrMoveStart|CameraOrSelectOrMoveStart]]() - Begin "Left click" in the 3D world. (1.10 - Protected)
+
:{{id|API|AddChatWindowChannel}}(chatFrameIndex, "channel") - Make a chat channel visible in a specific ChatFrame.
: PROTECTED [[API CameraOrSelectOrMoveStop|CameraOrSelectOrMoveStop]]([stickyFlag]) - End "Left click" in the 3D world. (1.10 - Protected)
+
:{{id|API|AddChatWindowMessages}} - Adds a messaging group to the specified chat window.
: [[API CameraZoomIn|CameraZoomIn]](increment) - Zooms the camera into the viewplane by increment.
+
:{{id|API|ChangeChatColor}}(channelname,r,g,b) - Update the color for a type of chat message.
: [[API CameraZoomOut|CameraZoomOut]](increment) - Zooms the camera out of the viewplane by increment.
+
:UI {{id|API|ChatFrame|AddChannel}}(chatFrame, "channelName") - Activate channel in chatFrame.
: [[API FlipCameraYaw|FlipCameraYaw]](degrees) - Rotates the camera about the Z-axis by the angle amount specified in degrees.
+
:UI {{id|API|ChatFrame|AddMessageEventFilter}}("event", filterFunc) - Add a chat message filtering function (added 2.4)
: [[API IsMouselooking|IsMouselooking]]() - Returns 1 if mouselook is currently active, nil otherwise.
+
:UI {{id|API|ChatFrame|GetMessageEventFilters}}("event") - Retreive the list of chat message filtering functions. (added 2.4)
: [[API MouselookStart|MouselookStart]]() - Enters mouse look mode; mouse movement is used to adjust movement/facing direction.
+
:UI {{id|API|ChatFrame|OnHyperlinkShow}}(reference, link, button) - called when the user clicks on a chatlink.
: [[API MouselookStop|MouselookStop]]() - Exits mouse look mode; mouse movement is used to move the mouse cursor.
+
:UI {{id|API|ChatFrame|RemoveMessageEventFilter}}("event", filterFunc) - Unregister a chat message filtering function (added 2.4)
: [[API MoveViewDownStart|MoveViewDownStart]]() - Begins rotating the camera downward.
+
:{{id|API|GetAutoCompleteResults}}("text", include, exclude, maxResults[, cursorPosition]) - Returns possible player names matching a given prefix string and specified requirements.
: [[API MoveViewDownStop|MoveViewDownStop]]() - Stops rotating the camera after [[API MoveViewDownStart|MoveViewDownStart]]() is called.
+
:{{id|API|GetChatTypeIndex}}(type) - Get the numeric ID of a type of chat message.
: [[API MoveViewInStart|MoveViewInStart]]() - Begins zooming the camera in.
+
:{{id|API|GetChatWindowChannels}}(index) - Get the chat channels received by a chat window.
: [[API MoveViewInStop|MoveViewInStop]]() - Stops zooming the camera in after [[API MoveViewInStart|MoveViewInStart]]() is called.
+
:{{id|API|GetChatWindowInfo}}(index) - Get setup information about a chat window.
: [[API MoveViewLeftStart|MoveViewLeftStart]]() - Begins rotating the camera to the Left.
+
:{{id|API|GetChatWindowMessages}}(index) - Get the chat message types received by a chat window.
: [[API MoveViewLeftStop|MoveViewLeftStop]]() - Stops rotating the camera after [[API MoveViewLeftStart|MoveViewLeftStart]]() is called.
+
:{{id|API|JoinChannelByName}}("channel"[, "password"[, frameId]]) - Join the specified chat channel, with optional password, and register for specified frame. (updated 1.9)
: [[API MoveViewOutStart|MoveViewOutStart]]() - Begins zooming the camera out.
+
:{{id|API|LoggingChat}}(newState) - Gets or sets whether logging chat to Logs\WoWChatLog.txt is enabled.
: [[API MoveViewOutStop|MoveViewOutStop]]() - Stops zooming the camera out after [[API MoveViewOutStart|MoveViewOutStart]]() is called.
+
:{{id|API|LoggingCombat}}(newState) - Gets or sets whether logging combat to Logs\WoWCombatLog.txt is enabled.
: [[API MoveViewRightStart|MoveViewRightStart]]() - Begins rotating the camera to the Right.
+
:{{id|API|RemoveChatWindowChannel}}(chatFrameIndex, "channel") - Make a chat channel invisible (hidden) in a specific ChatFrame.
: [[API MoveViewRightStop|MoveViewRightStop]]() - Stops rotating the camera after [[API MoveViewRightStart|MoveViewRightStart]]() is called.
+
:{{id|API|RemoveChatWindowMessages}}(chatFrameIndex,"messageGroup") - Remove a set of chat messages from this window.
: [[API MoveViewUpStart|MoveViewUpStart]]() - Begins rotating the camera upward.
 
: [[API MoveViewUpStop|MoveViewUpStop]]() - Stops rotating the camera after [[API MoveViewUpStart|MoveViewUpStart]]() is called.
 
: PROTECTED [[API PitchDownStart|PitchDownStart]]() - Begins pitching the camera Downward.
 
: PROTECTED [[API PitchDownStop|PitchDownStop]]() - Stops pitching the camera after [[API PitchDownStart|PitchDownStart]]() is called.
 
: PROTECTED [[API PitchUpStart|PitchUpStart]]() - Begins pitching the camera Upward.
 
: PROTECTED [[API PitchUpStop|PitchUpStop]]() - Stops pitching the camera after [[API PitchUpStart|PitchUpStart]]() is called.
 
: [[API NextView|NextView]]() - Cycles forward through the five predefined camera positions.
 
: [[API PrevView|PrevView]]() - Cycles backward through the five predefined camera positions.
 
: [[API ResetView|ResetView]](index) - Resets the specified (1-5) predefined camera position to its default if it was changed using [[API SaveView|SaveView]](index).
 
: [[API SaveView|SaveView]](index) - Replaces the specified (1-5) predefined camera positions with the current camera position.
 
: [[API SetView|SetView]](index) - Sets camera position to a specified (1-5) predefined camera position.
 
 
=== Channel Functions ===
 
These are chat functions which are specific to channels. Also see the [[#Chat Window Functions|Chat Window Functions]] and [[#Communication Functions|Communication Functions]] sections.
 
 
: [[API AddChatWindowChannel|AddChatWindowChannel]](chatFrameIndex, "channel") - Make a chat channel visible in a specific ChatFrame.
 
: [[API ChannelBan|ChannelBan]]("channel", "name") - Bans a player from the specified channel.
 
: [[API ChannelInvite|ChannelInvite]]("channel", "name") - Invites the specified user to the channel.
 
: [[API ChannelKick|ChannelKick]]("channel", "name") - Kicks the specified user from the channel.
 
: [[API ChannelModerator|ChannelModerator]]("channel", "name") - Sets the specified player as the channel moderator.
 
: [[API ChannelMute|ChannelMute]]("channel", "name") - Turns off the specified player's ability to speak in a channel.
 
: [[API ChannelToggleAnnouncements|ChannelToggleAnnouncements]]("channel") - Toggles the channel to display announcements either on or off.
 
: [[API ChannelUnban|ChannelUnban]]("channel", "name") - Unbans a player from a channel.
 
: [[API ChannelUnmoderator|ChannelUnmoderator]]("channel", "name") - Takes the specified user away from the moderator status.
 
: [[API ChannelUnmute|ChannelUnmute]]("channel", "name") - Unmutes the specified user from the channel.
 
: [[API DisplayChannelOwner|DisplayChannelOwner]]("channel") - Displays the owner of the specified channel in the default chat.
 
: [[API DeclineInvite|DeclineInvite]]("channel") - Declines an invitation to join a chat channel.
 
: [[API EnumerateServerChannels|EnumerateServerChannels]]() - Retrieves all available server channels (zone dependent).
 
: [[API GetChannelList|GetChannelList]]() - Retrieves joined channels.
 
: [[API GetChannelName|GetChannelName]]("channel" or index) - Retrieves the name from a specific channel.
 
: [[API GetChatWindowChannels|GetChatWindowChannels]](index) - Get the chat channels received by a chat window.
 
: [[API JoinChannelByName|JoinChannelByName]]("channel"[, "password"[, frameId]]) - Join the specified chat channel (with optional password, and register for specified frame) (updated in 1.9).
 
: [[API LeaveChannelByName|LeaveChannelByName]]("channel") - Leaves the channel with the specified name.
 
: [[API ListChannelByName|ListChannelByName]](channelMatch) - Lists members in the given channel to the chat window.
 
: [[API ListChannels|ListChannels]]() - Lists all of the channels into the chat window.
 
: [[API RemoveChatWindowChannel|RemoveChatWindowChannel]](chatFrameIndex, "channel") - Make a chat channel invisible (hidden) in a specific ChatFrame.
 
: [[API SendChatMessage|SendChatMessage]]("msg",[ "chatType",[ "language",[ "channel"]]]) - Sends a chat message.
 
: [[API SetChannelOwner|SetChannelOwner]]("channel", "name") - Sets the channel owner.
 
: [[API SetChannelPassword|SetChannelPassword]]("channel", "password") - Changes the password of the current channel.
 
 
=== Character Functions ===
 
: [[API AcceptResurrect|AcceptResurrect]]() - The player accepts the request from another player to resurrect him/herself.
 
: [[API AcceptXPLoss|AcceptXPLoss]]() - Accept the durability loss to be reborn by a spirit healer. (The name is a remnant from when sprit res was an XP loss instead.)
 
: [[API CheckBinderDist|CheckBinderDist]]() - Check whether the player is close enough to interact with the Hearthstone binder.
 
: [[API ConfirmBinder|ConfirmBinder]]() - Confirm the request to set the binding of the player's Hearthstone.
 
: [[API DeclineResurrect|DeclineResurrect]]() - Decline the request from another player to resurrect him/herself.
 
: [[API DestroyTotem|DestroyTotem]](slot)
 
: [[API GetBindLocation|GetBindLocation]]() - Get the name of the location for your Hearthstone.
 
: [[API GetComboPoints|GetComboPoints]]() - Get the current number of combo points.
 
: [[API GetCorpseRecoveryDelay|GetCorpseRecoveryDelay]]() - Time left before a player can accept a resurrection
 
: [[API GetCurrentTitle|GetCurrentTitle]]() - Returns the player's current [[titleId]].
 
: [[API GetMirrorTimerInfo|GetMirrorTimerInfo]](id) - returns information about a mirror timer (exhaustion, breath and feign death timers)
 
: [[API GetMirrorTimerProgress|GetMirrorTimerProgress]](id) - returns the current value of a mirror timer (exhaustion, breath and feign death timers)
 
: [[API GetMoney|GetMoney]]() - Returns an integer value of your held money in copper.
 
: [[API GetNumTitles|GetNumTitles]]() - Returns the maximum [[titleId]]
 
: [[API GetPlayerFacing|GetPlayerFacing]]() - Returns the direction the player is facing in radians ([-R, R] range, 0 is north, R/2 is east). (3.1)
 
: [[API GetPVPDesired|GetPVPDesired]]() - Returns whether the player has permanently turned on their PvP flag.
 
: [[API GetReleaseTimeRemaining|GetReleaseTimeRemaining]]() - Returns the amount of time left before your ghost is pulled from your body.
 
: [[API GetResSicknessDuration|GetResSicknessDuration]]()
 
: [[API GetRestState|GetRestState]]() - Returns information about a player's rest state (saved up experience bonus)
 
: [[API GetRuneCooldown|GetRuneCooldown]](id) - Returns cooldown information about a given rune.
 
: [[API GetRuneCount|GetRuneCount]](slot) - ?
 
: [[API GetRuneType|GetRuneType]](id) - Returns the type of rune with the given id.
 
: [[API GetTimeToWellRested|GetTimeToWellRested]]() - Defunct.
 
: [[API GetTitleName|GetTitleName]]([[titleId]]) - Returns the player's current title name
 
: [[API GetUnitPitch|GetUnitPitch]](UnitID) - Returns the true pitch radians ([-R, R] 0 is level). UnitID restricted to "player".
 
: [[API GetXPExhaustion|GetXPExhaustion]]() - Returns your character's current rested XP, nil if character is not rested.
 
: [[API HasFullControl|HasFullControl]]()
 
: [[API HasSoulstone|HasSoulstone]]()
 
: [[API IsFalling|IsFalling]]() - Returns 1 if your character is currently plummeting to their doom.
 
: [[API IsFlying|IsFlying]]() - Returns 1 if flying, otherwise nil.
 
: [[API IsFlyableArea|IsFlyableArea]]() - Returns 1 if it is possible to fly here, nil otherwise.
 
: [[API IsIndoors|IsIndoors]]() - Returns 1 if you are indoors, otherwise nil. Returns nil for indoor areas where you can still mount.
 
: [[API IsMounted|IsMounted]]() - Returns 1 if mounted, otherwise nil
 
: [[API IsOutdoors|IsOutdoors]]() - Returns 1 if you are outdoors, otherwise nil. Returns 1 for indoor areas where you can still mount.
 
: [[API IsOutOfBounds|IsOutOfBounds]]() - Returns 1 if you fell off the map.
 
: [[API IsResting|IsResting]]() - Returns 1 if your character is currently resting.
 
: [[API IsStealthed|IsStealthed]]() - Returns 1 if stealthed or shadowmeld, otherwise nil
 
: [[API IsSwimming|IsSwimming]]() - Returns 1 if your character is currently swimming.
 
: [[API IsTitleKnown|IsTitleKnown]](index) - Returns 1 if the title is valid for the player, otherwise 0.
 
: [[API IsXPUserDisabled|IsXPUserDisabled]]() - Returns 1 if the character has disabled experience gain.
 
: [[API NotWhileDeadError|NotWhileDeadError]]() - Generates an error message saying you cannot do that while dead.
 
: [[API ResurrectHasSickness|ResurrectHasSickness]]() - Appears to be used when accepting a resurrection will give you resurrection sickessness.
 
: [[API ResurrectHasTimer|ResurrectHasTimer]]() - Does the player have to wait before accepting a resurrection
 
: [[API ResurrectGetOfferer|ResurrectGetOfferer]]() - Returns the name of the person offering to resurrect you.
 
: [[API RetrieveCorpse|RetrieveCorpse]]() - Resurrects when near corpse. e.g., The "Accept" button one sees after running back to your body.
 
: HW [[API SetCurrentTitle|SetCurrentTitle]]([[titleId]]) - Sets the player's current title id
 
: [[API TargetTotem|TargetTotem]]() - New in 3.0.8
 
 
=== Character Statistics Functions ===
 
: [[API GetArmorPenetration|GetArmorPenetration]]() - Returns percent of armor ignored by your physical attacks.
 
: [[API GetAttackPowerForStat|GetAttackPowerForStat]](stat, value) - Returns the amount of attack power contributed by a specified amount of a particular stat.
 
: [[API GetAverageItemLevel|GetAverageItemLevel]]() - Returns the player's current iLevel.
 
: [[API GetBlockChance|GetBlockChance]]() - Returns the player's percentage block chance.
 
: [[API GetCombatRating|GetCombatRating]](ratingID) - Returns the player's combat rating for a particular combat rating. (2.0)
 
: [[API GetCombatRatingBonus|GetCombatRatingBonus]](ratingID) - Returns the player's combat rating bonus for a particular combat rating. (2.0)
 
: [[API GetCritChance|GetCritChance]]() - Returns the player's melee critical hit chance
 
: [[API GetCritChanceFromAgility|GetCritChanceFromAgility]]("unit") - Returns the amount of your critical hit chance contributed by Agility.
 
: [[API GetDodgeChance|GetDodgeChance]]() - Returns the player's percentage dodge chance.
 
: [[API GetExpertise|GetExpertise]]() - Returns main hand and offhand expertise value.
 
: [[API GetExpertisePercent|GetExpertisePercent]]() - Returns reduction in dodge and parry chances for main hand and offhand attacks, in percent.
 
: [[API GetManaRegen|GetManaRegen]]() - Returns the player's mana regeneration rates.
 
: [[API GetMaxCombatRatingBonus|GetMaxCombatRatingBonus]](lowestRating)
 
: [[API GetParryChance|GetParryChance]]() - Returns the player's percentage parry chance.
 
: [[API GetPetSpellBonusDamage|GetPetSpellBonusDamage]]
 
: [[API GetPowerRegen|GetPowerRegen]]() - Returns normal and combat power regeneration rates
 
: [[API GetSpellBonusDamage|GetSpellBonusDamage]](spellTreeID) - Returns the raw spell damage of the player for a given spell tree.
 
: [[API GetRangedCritChance|GetRangedCritChance]]() - Returns the players ranged critical strike chance.
 
: [[API GetSpellBonusHealing|GetSpellBonusHealing]]() - Returns the raw bonus healing of the player.
 
: [[API GetSpellCritChance|GetSpellCritChance]](school) - returns the players critical hit chance with a particular spell school.
 
: [[API GetShieldBlock|GetShieldBlock]]()
 
: [[API GetSpellCritChanceFromIntellect|GetSpellCritChanceFromIntellect]]("unit")
 
: [[API GetSpellPenetration|GetSpellPenetration]]()
 
 
=== Chat Window Functions ===
 
These are functions which are specific to chat ''window'' management. Also see the [[#Channel Functions|Channel Functions]] and [[#Communication Functions|Communication Functions]] sections.
 
<small>(&rarr; [[World of Warcraft API/Mikk's spiel on chat windows|Mikk's spiel on chat windows]])</small>
 
 
: [[API AddChatWindowChannel|AddChatWindowChannel]](chatFrameIndex, "channel") - Make a chat channel visible in a specific ChatFrame.
 
: [[API AddChatWindowMessages|AddChatWindowMessages]] - Adds a messaging group to the specified chat window.
 
: [[API ChangeChatColor|ChangeChatColor]](channelname,r,g,b) - Update the color for a type of chat message.
 
: UI [[API ChatFrame_AddChannel|ChatFrame_AddChannel]](chatFrame, "channelName") - Activate channel in chatFrame.
 
: UI [[API ChatFrame_AddMessageEventFilter|ChatFrame_AddMessageEventFilter]]("event", filterFunc) - Add a chat message filtering function (new in 2.4)
 
: UI [[API ChatFrame_GetMessageEventFilters|ChatFrame_GetMessageEventFilters]]("event") - Retreive the list of chat message filtering functions. (new in 2.4)
 
: UI [[API ChatFrame_OnHyperlinkShow|ChatFrame_OnHyperlinkShow]](reference, link, button) - called when the user clicks on a chatlink.
 
: UI [[API ChatFrame_RemoveMessageEventFilter|ChatFrame_RemoveMessageEventFilter]]("event", filterFunc) - Unregister a chat message filtering function (new in 2.4)
 
: [[API GetAutoCompleteResults|GetAutoCompleteResults]]("text", include, exclude, maxResults[, cursorPosition]) - Returns possible player names matching a given prefix string and specified requirements.
 
: [[API GetChatTypeIndex|GetChatTypeIndex]](type) - Get the numeric ID of a type of chat message.
 
: [[API GetChatWindowChannels|GetChatWindowChannels]](index) - Get the chat channels received by a chat window.
 
: [[API GetChatWindowInfo|GetChatWindowInfo]](index) - Get setup information about a chat window.
 
: [[API GetChatWindowMessages|GetChatWindowMessages]](index) - Get the chat message types received by a chat window.
 
: [[API JoinChannelByName|JoinChannelByName]]("channel"[, "password"[, frameId]]) - Join the specified chat channel (with optional password, and register for specified frame) (updated in 1.9)
 
: [[API LoggingChat|LoggingChat]](newState) - Gets or sets whether logging chat to Logs\WoWChatLog.txt is enabled.
 
: [[API LoggingCombat|LoggingCombat]](newState) - Gets or sets whether logging combat to Logs\WoWCombatLog.txt is enabled.
 
: [[API RemoveChatWindowChannel|RemoveChatWindowChannel]](chatFrameIndex, "channel") - Make a chat channel invisible (hidden) in a specific ChatFrame.
 
: [[API RemoveChatWindowMessages|RemoveChatWindowMessages]](chatFrameIndex,"messageGroup") - Remove a set of chat messages from this window.
 
 
These functions get applied after reload ui (index 1 is General and index 2 is Combat Log):
 
These functions get applied after reload ui (index 1 is General and index 2 is Combat Log):
: [[API SetChatWindowAlpha|SetChatWindowAlpha]](index,alpha) - Sets the Alpha value(transparency) of ChatFrame<index> (alpha - 0-100)
+
:{{id|API|SetChatWindowAlpha}}(index,alpha) - Sets the Alpha value(transparency) of ChatFrame<index> (alpha - 0-100)
: [[API SetChatWindowColor|SetChatWindowColor]](index,r,g,b) - Sets the background color of a a chat window. (r/g/b - 0-255)
+
:{{id|API|SetChatWindowColor}}(index,r,g,b) - Sets the background color of a a chat window. (r/g/b - 0-255)
: [[API SetChatWindowDocked|SetChatWindowDocked]](index,docked) - Set whether a chat window is docked. (docked - 0/1)
+
:{{id|API|SetChatWindowDocked}}(index,docked) - Set whether a chat window is docked. (docked - 0/1)
: [[API SetChatWindowLocked|SetChatWindowLocked]](index,locked) - Sets ChatFrame<index> so that it is or is not movable. (locked - 0/1)
+
:{{id|API|SetChatWindowLocked}}(index,locked) - Sets ChatFrame<index> so that it is or is not movable. (locked - 0/1)
: [[API SetChatWindowName|SetChatWindowName]](index,"name") - Sets the name of ChatFrame<index> to <"name">.
+
:{{id|API|SetChatWindowName}}(index,"name") - Sets the name of ChatFrame<index> to <"name">.
: [[API SetChatWindowShown|SetChatWindowShown]](index,shown) - Shows or Hides ChatFrame<index> depending on value of <shown> (shown - 0/1)
+
:{{id|API|SetChatWindowShown}}(index,shown) - Shows or Hides ChatFrame<index> depending on value of <shown> (shown - 0/1)
: [[API SetChatWindowSize|SetChatWindowSize]](index,size) - Sets the font size of a chat window. (size - default 14)
+
:{{id|API|SetChatWindowSize}}(index,size) - Sets the font size of a chat window. (size - default 14)
: [[API SetChatWindowUninteractable|SetChatWindowUninteractable]](id, isUninteractable) - New in 3.0.8
+
:{{id|API|SetChatWindowUninteractable}}(id, isUninteractable) - (added 3.0.8)
   
=== Communication Functions ===
+
=== Communication ===
These are the functions which communicate with other players. Also see the [[#Channel Functions|Channel Functions]] and [[#Chat Window Functions|Chat Window Functions]] sections.
+
These are functions communicate with other players. Also see the [[#Channel]] and [[#Chat Window]] sections.
  +
:{{id|API|DoEmote}}("emote",["target"]) - Perform a voice emote.
  +
:{{id|API|GetDefaultLanguage}}("[[unitId|unit]]") - Returns the default language that the unit is speaking after logon.
  +
:{{id|API|GetLanguageByIndex}}(index) - Returns the language specified by the index.
  +
:{{id|API|GetNumLanguages}}() - Returns the number of languages your character can speak. (renamed from 'GetNumLaguages' 2.4)
  +
:{{id|API|GetRegisteredAddonMessagePrefixes}}(table) - Returns a table, or you can pass in a table, that will be filled in with all prefixes that were registered. (added 4.1)
  +
:{{id|API|IsAddonMessagePrefixRegistered}}(prefix) - Returns a Boolean if the prefix has been registered. (added 4.1)
  +
:{{id|API|RandomRoll}}(low, high) - Does a random roll between the two values.
  +
:{{id|API|RegisterAddonMessagePrefix}}(prefix) - Register the addon prefix to enable the [[Events/C#CHAT_MSG_ADDON|CHAT_MSG_ADDON]] event. Returns a boolean if successful could fail if it hits the client side limit of 512 prefixes. (added 4.1)
  +
:{{id|API|SendAddonMessage}}("prefix", "text", "type" [, "player"]) - Sends a message to hidden AddOn channels. (added 1.12)
  +
:{{id|API|SendChatMessage}}("msg",[ "chatType",[ "language",[ "channel"]]]) - Sends a chat message.
   
: [[API DoEmote|DoEmote]]("emote",["target"]) - Perform a voice emote.
+
=== Companion ===
: [[API GetDefaultLanguage|GetDefaultLanguage]]("[[unitId|unit]]") - Returns the default language that the unit is speaking after logon.
+
These functions relate to companions, mounts and non-combat pets. All functions were introduced in 3.0.
: [[API GetLanguageByIndex|GetLanguageByIndex]](index) - Returns the language specified by the index.
+
:{{id|API|CallCompanion}}("type", slotid) - Summons a companion.
: [[API GetNumLanguages|GetNumLanguages]]() - Returns the number of languages your character can speak (Renamed in 2.4, formerly mistyped GetNumLaguages).
+
:{{id|API|DismissCompanion}}("type") - Dismisses an active companion.
: [[API GetRegisteredAddonMessagePrefixes|GetRegisteredAddonMessagePrefixes]](table) - Returns a table (or you can pass in a table), that will be filled in with all prefixes that were registered. Added in 4.1
+
:{{id|API|GetCompanionInfo}}("type", slotid) - Returns info about a selected companion.
: [[API IsAddonMessagePrefixRegistered|IsAddonMessagePrefixRegistered]](prefix) - Returns a Boolean if the prefix has been registered. Added in 4.1
+
:{{id|API|GetNumCompanions}}("type") - Get the number of companions of the specified type.
: [[API RandomRoll|RandomRoll]](low, high) - Does a random roll between the two values.
+
:{{id|API|GetCompanionCooldown}}("type", index) - Returns cooldown information.
: [[API RegisterAddonMessagePrefix|RegisterAddonMessagePrefix]](prefix) - Register the addon prefix to enable the [[Events/C#CHAT_MSG_ADDON|CHAT_MSG_ADDON]] event. Returns a boolean if successful (could fail if it hits the client side limit of 512 prefixes). Added in 4.1
+
:{{id|API|PickupCompanion}}("type", index) - Picks up the indexed companion onto the mouse cursor.
: [[API SendAddonMessage|SendAddonMessage]]("prefix", "text", "type" [, "player"]) - Sends a message to hidden AddOn channels. - Added in 1.12
+
:{{id|API|SummonRandomCritter}}() - Summons a random critter companion. (added 3.3.3)
: [[API SendChatMessage|SendChatMessage]]("msg",[ "chatType",[ "language",[ "channel"]]]) - Sends a chat message.
 
   
=== Companion Functions ===
+
=== Container / Bag ===
These functions relate to companions -- mounts and non-combat pets. All functions were introduced in [[Patch 3.0]].
+
These functions manage containers, bags, backpacks. See also [[#Inventory]] and [[#Bank]] sections.
: [[API CallCompanion|CallCompanion]]("type", slotid) - Summons a companion.
+
:{{id|API|ContainerIDToInventoryID}}([[bagId|bagID]])
: [[API DismissCompanion|DismissCompanion]]("type") - Dismisses an active companion.
+
:{{id|API|GetBagName}}([[bagId|bagID]]) - Get the name of one of the player's bags.
: [[API GetCompanionInfo|GetCompanionInfo]]("type", slotid) - Returns info about a selected companion.
+
:{{id|API|GetContainerItemCooldown}}([[bagId|bagID]], slot)
: [[API GetNumCompanions|GetNumCompanions]]("type") - Get the number of companions of the specified type.
+
:{{id|API|GetContainerItemDurability}}(bag, slot) - Get current and maximum durability of an item in the character's bags.
: [[API GetCompanionCooldown|GetCompanionCooldown]]("type", index) - Returns cooldown information.
+
:{{id|API|GetContainerItemGems}}(bag, slot) - Returns item IDs of gems inserted into the item in a specified container slot.
: [[API PickupCompanion|PickupCompanion]]("type", index) - Picks up the indexed companion onto the mouse cursor.
+
:{{id|API|GetContainerItemID}}(bag, slot) - Returns the item ID of the item in a particular container slot.
: [[API SummonRandomCritter|SummonRandomCritter]]() - Summons a random critter companion. (New: 3.3.3)
+
:{{id|API|GetContainerItemInfo}}([[bagId|bagID]], slot) - Get the info for an item in one of the player's bags.
  +
:{{id|API|GetContainerItemLink}}([[bagId|bagID]], slot) - Returns the [[itemLink]] of the item located in bag#, slot#.
  +
:{{id|API|GetContainerNumSlots}}([[bagId|bagID]]) - Returns the total number of slots in the bag specified by the index.
  +
:{{id|API|GetContainerItemQuestInfo}}(bag, slot) - Returns information about quest and quest-starting items in your bags. (added 3.3.3)
  +
:{{id|API|GetContainerNumFreeSlots}}([[bagId|bagID]]) - Returns the number of free slots and type of slots in the bag specified by the index. (added 2.4)
  +
:{{id|API|HasKey}}() - Returns 1 if the player has a keyring, nil otherwise.
  +
:UI {{id|API|OpenAllBags}}() - Open all bags
  +
:UI {{id|API|CloseAllBags}}() - Close all bags
  +
:{{id|API|PickupBagFromSlot}}(slot) - Picks up the bag from the specified slot, placing it in the cursor.
  +
:{{id|API|PickupContainerItem}}([[bagId|bagID]],slot)
  +
:{{id|API|PutItemInBackpack}}() - attempts to place item in backpack (bag slot 0).
  +
:{{id|API|PutItemInBag}}(inventoryId) - attempts to place item in a specific bag.
  +
:UI {{id|API|PutKeyInKeyRing}}() - attempts to place item in your keyring.
  +
:{{id|API|SplitContainerItem}}([[bagId|bagID]],slot,amount)
  +
:UI {{id|API|ToggleBackpack}}() - Toggles your backpack open/closed.
  +
:UI {{id|API|ToggleBag}}([[bagId|bagID]]) - Opens or closes the specified bag.
  +
:PROTECTED {{id|API|UseContainerItem}}([[bagId|bagID]], slot[, onSelf]) - Uses an item located in bag# and slot#. Warning: If a vendor window is open, using items in your pack may sell them - 'onSelf'! Protected situationally? (added 1.12)
   
=== Container/Bag Functions ===
+
=== Currency ===
These functions manage containers (bags, backpack). See also [[#Inventory Functions|Inventory Functions]] and [[#Bank Functions|Bank Functions]].
+
Most of these functions were added in 3.0.2.
  +
:{{id|API|GetCoinText}}(amount, "separator") - Breaks down money and inserts separator strings. (added 2.4.2)
  +
:{{id|API|GetCoinTextureString}}(amount[, fontHeight]) - Breaks down money and inserts texture strings.
  +
:{{id|API|GetCurrencyInfo}}(index) - returns localized_label, amount, icon_file_name of the currency at the index. (added 4.0.1)
  +
:{{id|API|GetCurrencyListSize}}() - returns the number of elements (both headers and currencies) in the currency list.
  +
:{{id|API|GetCurrencyListInfo}}(index) - return information about an element in the currency list.
  +
:{{id|API|ExpandCurrencyList}}(index, state) - sets the expanded/collapsed state of a currency list header.
  +
:{{id|API|SetCurrencyUnused}}(id, state) - alters whether a currency is marked as unused.
  +
:{{id|API|GetNumWatchedTokens}}() - returns the number of currently watched.
  +
:{{id|API|GetBackpackCurrencyInfo}}(id) - returns information about a watched currency.
  +
:{{id|API|SetCurrencyBackpack}}(id, state) - alters whether a currency is tracked.
   
: [[API ContainerIDToInventoryID|ContainerIDToInventoryID]]([[bagId|bagID]])
+
=== Cursor ===
: [[API GetBagName|GetBagName]]([[bagId|bagID]]) - Get the name of one of the player's bags.
+
:{{id|API|AutoEquipCursorItem}}() - Causes the equipment on the cursor to be equipped.
: [[API GetContainerItemCooldown|GetContainerItemCooldown]]([[bagId|bagID]], slot)
+
:{{id|API|ClearCursor}}() - Clears whatever item the cursor is dragging from the cursor. (added 1.12)
: [[API GetContainerItemDurability|GetContainerItemDurability]](bag, slot) - Get current and maximum durability of an item in the character's bags.
+
:{{id|API|CursorCanGoInSlot}}([[inventorySlotId|invSlot]]) - Return true if the item currently held by the cursor can go into the given inventory (equipment) slot.
: [[API GetContainerItemGems|GetContainerItemGems]](bag, slot) - Returns item IDs of gems inserted into the item in a specified container slot.
+
:{{id|API|CursorHasItem}}() - Returns true if the cursor currently holds an item.
: [[API GetContainerItemID|GetContainerItemID]](bag, slot) - Returns the item ID of the item in a particular container slot.
+
:{{id|API|CursorHasMoney}}() - true/false
: [[API GetContainerItemInfo|GetContainerItemInfo]]([[bagId|bagID]], slot) - Get the info for an item in one of the player's bags.
+
:{{id|API|CursorHasSpell}}() - true/false
: [[API GetContainerItemLink|GetContainerItemLink]]([[bagId|bagID]], slot) - Returns the [[itemLink]] of the item located in bag#, slot#.
+
:{{id|API|DeleteCursorItem}}() - Destroys the item on the cursor.
: [[API GetContainerNumSlots|GetContainerNumSlots]]([[bagId|bagID]]) - Returns the total number of slots in the bag specified by the index.
+
:{{id|API|DropCursorMoney}}() - Drops the amount of money held by the cursor.
: [[API GetContainerItemQuestInfo|GetContainerItemQuestInfo]](bag, slot) - Returns information about quest and quest-starting items in your bags. (New: 3.3.3)
+
:{{id|API|DropItemOnUnit}}("[[unitId|unit]]") - Drops an item from the cursor onto a unit.
: [[API GetContainerNumFreeSlots|GetContainerNumFreeSlots]]([[bagId|bagID]]) - Returns the number of free slots and type of slots in the bag specified by the index. (New in [[Patch 2.4]])
+
:{{id|API|EquipCursorItem}}([[inventorySlotId|invSlot]])
: [[API HasKey|HasKey]]() - Returns 1 if the player has a keyring, nil otherwise.
+
:{{id|API|GetCursorInfo}}() - Returns information about what the cursor is holding.
: UI [[API OpenAllBags|OpenAllBags]]() - Open all bags
+
:{{id|API|GetCursorMoney}}() - Returns the amount of money held by the cursor.
: UI [[API CloseAllBags|CloseAllBags]]() - Close all bags
+
:{{id|API|GetCursorPosition}}() - Returns the cursor's position on the screen.
: [[API PickupBagFromSlot|PickupBagFromSlot]](slot) - Picks up the bag from the specified slot, placing it in the cursor.
+
:{{id|API|HideRepairCursor}}()
: [[API PickupContainerItem|PickupContainerItem]]([[bagId|bagID]],slot)
+
:{{id|API|InRepairMode}}() - Returns true if your cursor is in repair mode
: [[API PutItemInBackpack|PutItemInBackpack]]() - attempts to place item in backpack (bag slot 0).
+
:NOCOMBAT {{id|API|PickupAction}}(slot) - Drags an action out of the specified quickbar slot and holds it on the cursor.
: [[API PutItemInBag|PutItemInBag]](inventoryId) - attempts to place item in a specific bag.
+
:{{id|API|PickupBagFromSlot}}(slot) - Picks up the bag from the specified slot, placing it in the cursor. If an item is already picked up, this places the item into the specified slot, swapping the items if needed.
: UI [[API PutKeyInKeyRing|PutKeyInKeyRing]]() - attempts to place item in your keyring.
+
:{{id|API|PickupContainerItem}}([[bagId|bagID]],slot)
: [[API SplitContainerItem|SplitContainerItem]]([[bagId|bagID]],slot,amount)
+
:{{id|API|PickupInventoryItem}}([[inventorySlotId|invSlot]]) - "Picks up" an item from the player's worn inventory.
: UI [[API ToggleBackpack|ToggleBackpack]]() - Toggles your backpack open/closed.
+
:NOCOMBAT {{id|API|PickupItem}}(itemId or "[[itemString]]" or "itemName" or "[[itemLink]]")
: UI [[API ToggleBag|ToggleBag]]([[bagId|bagID]]) - Opens or closes the specified bag.
+
:{{id|API|PickupMacro}}("macroName" or index) - Adds the specified macro to the Cursor.
: PROTECTED (Situational) [[API UseContainerItem|UseContainerItem]]([[bagId|bagID]], slot[, onSelf]) - Uses an item located in bag# and slot#. (Warning: If a vendor window is open, using items in your pack may sell them!) - 'onSelf' added in 1.12
+
:{{id|API|PickupMerchantItem}}(index) - Places the item on the cursor. If the cursor already has an item, the item in the cursor will be sold.
  +
:NOCOMBAT {{id|API|PickupPetAction}}(slot) - Drags an action from the specified pet action bar slot into the cursor.
  +
:{{id|API|PickupPlayerMoney}} - Picks up an amount of money from the player.
  +
:NOCOMBAT {{id|API|PickupSpell}}("spellName" | spellID, "bookType") - Adds the specified spell to the Cursor.
  +
:{{id|API|PickupStablePet}}(index)
  +
:{{id|API|PickupTradeMoney}}(amount)
  +
:{{id|API|PlaceAction}}(slot) - Drops an action from the cursor into the specified quickbar slot.
  +
:{{id|API|PutItemInBackpack}}() - attempts to place item in backpack (bag slot 0).
  +
:{{id|API|PutItemInBag}}(inventoryId) - attempts to place item in a specific bag.
  +
:{{id|API|ResetCursor}}()
  +
:{{id|API|SetCursor}}("cursor" or nil)
  +
:{{id|API|ShowContainerSellCursor}}(index,slot)
  +
:{{id|API|ShowInspectCursor}}() - Change the cursor to the magnifying glass inventory inspection cursor
  +
:{{id|API|ShowInventorySellCursor}}()
  +
:{{id|API|ShowMerchantSellCursor}}(index) - Changes the cursor to the merchant sell cursor.
  +
:{{id|API|ShowRepairCursor}}()
  +
:{{id|API|SplitContainerItem}}(bagID,slot,amount) - Picks up part of a stack.
   
=== Currency Functions ===
+
=== Debugging ===
Most of these functions were added in 3.0.2
+
:{{id|API|ConsoleAddMessage}}(message) - (added 3.0.8)
: [[API GetCoinText|GetCoinText]](amount, "separator") - Breaks down money and inserts separator strings. Added in 2.4.2.
+
:{{id|API|debugprofilestart}}() - starts a timer for profiling during debugging.
: [[API GetCoinTextureString|GetCoinTextureString]](amount[, fontHeight]) - Breaks down money and inserts texture strings.
+
:{{id|API|debugprofilestop}}() - return the time in milliseconds since the last call to debugprofilestart()
: [[API GetCurrencyInfo|GetCurrencyInfo]](index) - returns localized_label, amount, icon_file_name of the currency at the index. (added 4.0.1)
+
:{{id|API|debugstack}}(start, count1, count2) - Returns a string representation of the current calling stack (added 1.9)
: [[API GetCurrencyListSize|GetCurrencyListSize]]() - returns the number of elements (both headers and currencies) in the currency list.
+
:{{id|API|FrameXML_Debug}}(flag) - Sets FrameXML logging state which is output to /WoW Folder/Logs/FrameXML.log
: [[API GetCurrencyListInfo|GetCurrencyListInfo]](index) - return information about an element in the currency list.
+
:{{id|API|GetDebugStats}}()
: [[API ExpandCurrencyList|ExpandCurrencyList]](index, state) - sets the expanded/collapsed state of a currency list header.
+
:UI {{id|API|getprinthandler}}() - Returns the function currently handling print() output.
: [[API SetCurrencyUnused|SetCurrencyUnused]](id, state) - alters whether a currency is marked as unused.
+
:UI {{id|API|print}}(...) - Calls the current print output handler with the provided values, by default printing the values to the default chat frame.
: [[API GetNumWatchedTokens|GetNumWatchedTokens]]() - returns the number of currently watched.
+
:UI {{id|API|setprinthandler}}(func) - Changes the function handling print() output.
: [[API GetBackpackCurrencyInfo|GetBackpackCurrencyInfo]](id) - returns information about a watched currency.
+
:UI {{id|API|tostringall}}(...) - Converts and returns the passed arguments to string.
: [[API SetCurrencyBackpack|SetCurrencyBackpack]](id, state) - alters whether a currency is tracked.
+
:{{id|API|wipe}}(table) - removes all key/value pairs from a table. also available as table.wipe().
   
=== Cursor Functions ===
+
=== Dressing Room ===
: [[API AutoEquipCursorItem|AutoEquipCursorItem]]() - Causes the equipment on the cursor to be equipped.
+
Functions controlling the 'dressing room' interface. (added 1700)
: [[API ClearCursor|ClearCursor]]() - Clears whatever item the cursor is dragging from the cursor. - Added in 1.12
+
:UI {{id|API|DressUpItemLink}}("[[itemString]]" or "[[itemLink]]") - Will show the DressingRoom UI with the given item equipped.
: [[API CursorCanGoInSlot|CursorCanGoInSlot]]([[inventorySlotId|invSlot]]) - Return true if the item currently held by the cursor can go into the given inventory (equipment) slot.
+
:UI {{id|API|SetDressUpBackground}}(isAuctionFrame) - Given an Item shown in the Auction House will show the DressingRoom UI with the item equipped.
: [[API CursorHasItem|CursorHasItem]]() - Returns true if the cursor currently holds an item.
 
: [[API CursorHasMoney|CursorHasMoney]]() - true/false
 
: [[API CursorHasSpell|CursorHasSpell]]() - true/false
 
: [[API DeleteCursorItem|DeleteCursorItem]]() - Destroys the item on the cursor.
 
: [[API DropCursorMoney|DropCursorMoney]]() - Drops the amount of money held by the cursor.
 
: [[API DropItemOnUnit|DropItemOnUnit]]("[[unitId|unit]]") - Drops an item from the cursor onto a unit.
 
: [[API EquipCursorItem|EquipCursorItem]]([[inventorySlotId|invSlot]])
 
: [[API GetCursorInfo|GetCursorInfo]]() - Returns information about what the cursor is holding.
 
: [[API GetCursorMoney|GetCursorMoney]] - Returns the amount of money held by the cursor.
 
: [[API GetCursorPosition|GetCursorPosition]]() - Returns the cursor's position on the screen.
 
: [[API HideRepairCursor|HideRepairCursor]]()
 
: [[API InRepairMode|InRepairMode]]() - Returns true if your cursor is in repair mode
 
: NOCOMBAT [[API PickupAction|PickupAction]](slot) - Drags an action out of the specified quickbar slot and holds it on the cursor.
 
: [[API PickupBagFromSlot|PickupBagFromSlot]](slot) - Picks up the bag from the specified slot, placing it in the cursor. If an item is already picked up, this places the item into the specified slot, swapping the items if needed.
 
: [[API PickupContainerItem|PickupContainerItem]]([[bagId|bagID]],slot)
 
: [[API PickupInventoryItem|PickupInventoryItem]]([[inventorySlotId|invSlot]]) - "Picks up" an item from the player's worn inventory.
 
: NOCOMBAT [[API PickupItem|PickupItem]](itemId or "[[itemString]]" or "itemName" or "[[itemLink]]")
 
: [[API PickupMacro|PickupMacro]]("macroName" or index) - Adds the specified macro to the Cursor.
 
: [[API PickupMerchantItem|PickupMerchantItem]](index) - Places the item on the cursor. If the cursor already has an item, the item in the cursor will be sold.
 
: NOCOMBAT [[API PickupPetAction|PickupPetAction]](slot) - Drags an action from the specified pet action bar slot into the cursor.
 
: [[API PickupPlayerMoney|PickupPlayerMoney]] - Picks up an amount of money from the player.
 
: NOCOMBAT [[API PickupSpell|PickupSpell]]("spellName" | spellID, "bookType") - Adds the specified spell to the Cursor.
 
: [[API PickupStablePet|PickupStablePet]](index) - ?.
 
: [[API PickupTradeMoney|PickupTradeMoney]](amount)
 
: [[API PlaceAction|PlaceAction]](slot) - Drops an action from the cursor into the specified quickbar slot.
 
: [[API PutItemInBackpack|PutItemInBackpack]]() - attempts to place item in backpack (bag slot 0).
 
: [[API PutItemInBag|PutItemInBag]](inventoryId) - attempts to place item in a specific bag.
 
: [[API ResetCursor|ResetCursor]]()
 
: [[API SetCursor|SetCursor]]("cursor" or nil)
 
: [[API ShowContainerSellCursor|ShowContainerSellCursor]](index,slot)
 
: [[API ShowInspectCursor|ShowInspectCursor]]() - Change the cursor to the magnifying glass inventory inspection cursor
 
: [[API ShowInventorySellCursor|ShowInventorySellCursor]]() - ?.
 
: [[API ShowMerchantSellCursor|ShowMerchantSellCursor]](index) - Changes the cursor to the merchant sell cursor.
 
: [[API ShowRepairCursor|ShowRepairCursor]]()
 
: [[API SplitContainerItem|SplitContainerItem]](bagID,slot,amount) - Picks up part of a stack.
 
   
=== Debugging Functions ===
+
=== Dungeon Finder ===
: [[API ConsoleAddMessage|ConsoleAddMessage]](message) - New in 3.0.8
+
Functions supporting the Dungeon Finder UI, added in 3.3. See also the [[#Raid Browser]] and [[#Looking for Group]] sections.
: [[API debugprofilestart|debugprofilestart]]() - starts a timer for profiling during debugging.
+
:HW {{id|API|AcceptProposal}}() - Accept an LFD group invite and enter the dungeon.
: [[API debugprofilestop|debugprofilestop]]() - return the time in milliseconds since the last call to debugprofilestart()
+
:{{id|API|CanPartyLFGBackfill}}() - Returns whether the party is eligible to recruit additional members from the LFG pool.
: [[API debugstack|debugstack]](start, count1, count2) - Returns a string representation of the current calling stack (as of 1.9)
+
:{{id|API|GetLFDChoiceCollapseState}}(nil or table) - returns LFGCollapseList
: [[API FrameXML_Debug|FrameXML_Debug]](flag) - Sets FrameXML logging state which is output to /WoW Folder/Logs/FrameXML.log
+
:{{id|API|GetLFDChoiceEnabledState}}(nil or table) - returns LFGEnabledList
: [[API GetDebugStats|GetDebugStats]]()
+
:{{id|API|GetLFDChoiceInfo}}(nil or table) - Returns a table of all dungeon info keyed by dungeonID
: UI [[API getprinthandler|getprinthandler]]() - Returns the function currently handling print() output.
+
:{{id|API|GetLFDChoiceLockedState}}(nil or table) - Returns a table mapping dungeonID to isLocked (in LFD UI)
: UI [[API print|print]](...) - Calls the current print output handler with the provided values; by default printing the values to the default chat frame.
+
:{{id|API|GetLFDChoiceOrder}}(nil or table) - returns LFDDungeonList
: UI [[API setprinthandler|setprinthandler]](func) - Changes the function handling print() output.
+
:{{id|API|GetLFDLockPlayerCount}}() - returns the number of locks in a dungeon group
: UI [[API tostringall|tostringall]](...) - Converts and returns the passed arguments to string.
+
:{{id|API|GetLFDLockInfo}}(dungeonID, lockedPlayerNumber) - returns playerName, lockedReason; lockedPlayerNumber is from 1 to [[#GetLFDLockPlayerCount]](); lockedReason is found in LFG_INSTANCE_INVALID_CODES
: [[API wipe|wipe]](table) - removes all key/value pairs from a table; also available as table.wipe().
+
:{{id|API|GetLFGDungeonInfo}}(dungeonId) - Returns information about a particular dungeon in the list: dungeonName, typeID, minLevel, maxLevel, recLevel, minRecLevel, maxRecLevel, expansionLevel, groupID, textureFilename, difficulty, maxPlayers, dungeonDescription, isHoliday
  +
:{{id|API|GetLFGDungeonRewards}}(dungeontype) - dungeontype = 261 (normal) or 262 (heroic), returns doneToday, moneyBase, moneyVar, experienceBase, experienceVar, numRewards
  +
:{{id|API|GetLFGDungeonRewardInfo}}(dungeonID, rewardIndex) - returns name, texturePath, quantity. rewardIndex matches 1 through numRewards from [[#GetLFGDungeonRewards]]
  +
:{{id|API|GetLFGInfoServer}} - returns inParty, joined, queued, noPartialClear, achievements, lfgComment, slotCount
  +
:{{id|API|GetLFGProposal}}() - Returns information about a LFD group invite.
  +
:{{id|API|GetLFGProposalEncounter}}(encounterNumber) - returns bossName, texture, isKilled. encounterNumber is from 1 to totalEncounters from [[#GetLFGProposal]]()
  +
:{{id|API|GetLFGProposalMember}}(playerNumber) - returns info about players (numbers 1-5) in the LFG proposal: isLeader, role, level, responded, accepted, name, class
  +
:{{id|API|GetLFGRandomDungeonInfo}}(index) - Returns information about a random dungeon queue: id, name
  +
:{{id|API|GetNumRandomDungeons}}() - returns the number of specific dungeons that can be queued for
  +
:{{id|API|GetPartyLFGBackfillInfo}}() - Returns information about the dungeon for which you may currently recruit additional members from the LFG pool.
  +
:{{id|API|GetRandomDungeonBestChoice}}() - Returns suggested random dungeon ID.
  +
:{{id|API|HasLFGRestrictions}}() - Returns whether the player is in a random party formed by the dungeon finder system.
  +
:{{id|API|IsLFGDungeonJoinable}}(dungeonId) - Returns whether you can queue for a particular dungeon; dungeonId is from [[#GetLFGRandomDungeonInfo]]
  +
:{{id|API|LFGTeleport}}([toSafety]) - Teleports the player to (toSafety = nil) or from (toSafety = true) a dungeon
  +
:{{id|API|RejectProposal}}() - Reject an LFD group invite and exit the queue.
  +
:{{id|API|SetLFGHeaderCollapsed}}(headerID, isCollapsed)
  +
:{{id|API|UnitGroupRolesAssigned}}(UnitID) - Return's the targeted unit's assigned role.
   
=== Dressing Room Functions ===
+
=== Enchanting ===
Functions Controlling the Dressing Room interface. NEW in 1700.
+
:{{id|API|GetWeaponEnchantInfo}}() - Return information about main and offhand weapon enchantments.
: UI [[API DressUpItemLink|DressUpItemLink]]("[[itemString]]" or "[[itemLink]]") - Will show the DressingRoom UI with the given item equipped.
+
:{{id|API|ReplaceEnchant}}()
: UI [[API SetDressUpBackground|SetDressUpBackground]](isAuctionFrame) - Given an Item shown in the Auction House will show the DressingRoom UI with the item equipped.
+
:{{id|API|ReplaceTradeEnchant}}() - Confirm the replacement of an enchantment via trade.
  +
:{{id|API|BindEnchant}}() - Confirm the binding of the item when enchanting.
   
=== Dungeon Finder Functions ===
+
=== Equipment ===
Functions supporting the Dungeon Finder UI introduced in 3.3. See also: [[#Raid Browser Functions|Raid Browser Functions]] and [[#Looking For Group Functions|Looking For Group Functions]]
+
Equipment management was added in 3.1.2.
  +
:{{id|API|GetNumEquipmentSets}}() - Returns the number of saved equipment sets.
  +
:{{id|API|GetEquipmentSetInfo}}(index) - Returns information about an equipment set.
  +
:{{id|API|GetEquipmentSetInfoByName}}("name") - Returns information about an equipment set.
  +
:{{id|API|GetEquipmentSetItemIDs}}("name"[, returnTable]) - Populates and returns a table with the item IDs.
  +
:{{id|API|GetEquipmentSetLocations}}("name"[, returnTable]) - Populates and returns a table with the item locations.
  +
:UI {{id|API|EquipmentManager|UnpackLocation}}(location) - Unpacks a location integer to determine the actual inventory location.
  +
:{{id|API|PickupEquipmentSet}}(index) - Places an equipment set on the cursor.
  +
:{{id|API|PickupEquipmentSetByName}}("name") - Places an equipment set on the cursor.
  +
:{{id|API|EquipmentSetContainsLockedItems}}("name") - Checks if some of the items in the set are currently locked (pending client/server interaction).
  +
:{{id|API|UseEquipmentSet}}("name") - Equips an equipment set.
  +
:{{id|API|EquipmentManagerIgnoreSlotForSave}}(slot) - flags the slot to be ignored when saving an equipment set.
  +
:{{id|API|EquipmentManagerUnignoreSlotForSave}}(slot) - removes the ignore flag from a slot when saving an equipment set.
  +
:{{id|API|EquipmentManagerClearIgnoredSlotsForSave}}() - removes the ignore flag from all slots when saving an equipment set.
  +
:{{id|API|SaveEquipmentSet}}("name", iconIndex) - Saves the currently equipped items in a set.
  +
:{{id|API|RenameEquipmentSet}}("oldName", "newName") - Renames an equipment set.
  +
:{{id|API|DeleteEquipmentSet}}("name") - Forgets an equipment set.
  +
:UI {{id|API|GetEquipmentSetIconInfo}}(index) - Returns information about available icons.
   
: HW [[API AcceptProposal|AcceptProposal]]() - Accept an LFD group invite and enter the dungeon.
+
=== Faction ===
: [[API CanPartyLFGBackfill|CanPartyLFGBackfill]]() - Returns whether the party is eligible to recruit additional members from the LFG pool.
+
:{{id|API|CollapseFactionHeader}}(index) - Collapse a faction header row.
: [[API GetLFDChoiceCollapseState|GetLFDChoiceCollapseState]](nil or table) - returns LFGCollapseList
+
:{{id|API|CollapseAllFactionHeaders}}() - Collapse all faction header rows.
: [[API GetLFDChoiceEnabledState|GetLFDChoiceEnabledState]](nil or table) - returns LFGEnabledList
+
:{{id|API|ExpandFactionHeader}}(index) - Expand a faction header row.
: [[API GetLFDChoiceInfo|GetLFDChoiceInfo]](nil or table) - Returns a table of all dungeon info keyed by dungeonID
+
:{{id|API|ExpandAllFactionHeaders}}() - Expand all faction header rows.
: [[API GetLFDChoiceLockedState|GetLFDChoiceLockedState]](nil or table) - Returns a table mapping dungeonID to isLocked (in LFD UI)
+
:{{id|API|FactionToggleAtWar}}(index) - Toggle the At War flag for a faction.
: [[API GetLFDChoiceOrder|GetLFDChoiceOrder]](nil or table) - returns LFDDungeonList
+
:{{id|API|GetFactionInfo}}(index) - Gets details for a specific faction/faction header.
: [[API GetLFDLockPlayerCount|GetLFDLockPlayerCount]]() - returns the number of locks in a dungeon group
+
:{{id|API|GetNumFactions}}() - Returns the number of lines in the faction display.
: [[API GetLFDLockInfo|GetLFDLockInfo]](dungeonID, lockedPlayerNumber) - returns playerName, lockedReason; lockedPlayerNumber is from 1 to [[API GetLFDLockPlayerCount|GetLFDLockPlayerCount]](); lockedReason is found in LFG_INSTANCE_INVALID_CODES
+
:{{id|API|GetSelectedFaction}}() - Returns the row index of the currently selected faction in reputation window. (added 1.10)
: [[API GetLFGDungeonInfo|GetLFGDungeonInfo]](dungeonId) - Returns information about a particular dungeon in the list: dungeonName, typeID, minLevel, maxLevel, recLevel, minRecLevel, maxRecLevel, expansionLevel, groupID, textureFilename, difficulty, maxPlayers, dungeonDescription, isHoliday
+
:{{id|API|GetWatchedFactionInfo}}() - Returns information about the currently watched faction. (added 1.10)
: [[API GetLFGDungeonRewards|GetLFGDungeonRewards]](dungeontype) - dungeontype = 261 (normal) or 262 (heroic), returns doneToday, moneyBase, moneyVar, experienceBase, experienceVar, numRewards
+
:{{id|API|IsFactionInactive}}(index) - Returns true if the faction is marked inactive. (added 1.10)
: [[API GetLFGDungeonRewardInfo|GetLFGDungeonRewardInfo]](dungeonID, rewardIndex) - returns name, texturePath, quantity. rewardIndex matches 1 through numRewards from [[API GetLFGDungeonRewards|GetLFGDungeonRewards]]
+
:{{id|API|SetFactionActive}}(index) - Remove a faction from inactive group. (added 1.10)
: [[API GetLFGInfoServer|GetLFGInfoServer]] - returns inParty, joined, queued, noPartialClear, achievements, lfgComment, slotCount
+
:{{id|API|SetFactionInactive}}(index) - Move a faction to inactive group. (added 1.10)
: [[API GetLFGProposal|GetLFGProposal]]() - Returns information about a LFD group invite.
+
:{{id|API|SetSelectedFaction}}(index) - Sets the currently selected faction in reputation window. (added 1.10)
: [[API GetLFGProposalEncounter|GetLFGProposalEncounter]](encounterNumber) - returns bossName, texture, isKilled. encounterNumber is from 1 to totalEncounters from [[API GetLFGProposal|GetLFGProposal]]()
+
:{{id|API|SetWatchedFactionIndex}}(index) - Sets which faction should be watched in Blizzard reputation bar. (added 1.10)
: [[API GetLFGProposalMember|GetLFGProposalMember]](playerNumber) - returns info about players (numbers 1-5) in the LFG proposal: isLeader, role, level, responded, accepted, name, class
+
:{{id|API|UnitFactionGroup}}("[[unitId|unit]]") - Returns the faction group id and name of the specified unit, eg. "Alliance". The string returned is localization-independent, and is used in filepath.
: [[API GetLFGRandomDungeonInfo|GetLFGRandomDungeonInfo]](index) - Returns information about a random dungeon queue: id, name
 
: [[API GetNumRandomDungeons|GetNumRandomDungeons]]() - returns the number of specific dungeons that can be queued for
 
: [[API GetPartyLFGBackfillInfo|GetPartyLFGBackfillInfo]]() - Returns information about the dungeon for which you may currently recruit additional members from the LFG pool.
 
: [[API GetRandomDungeonBestChoice|GetRandomDungeonBestChoice]]() - Returns suggested random dungeon ID.
 
: [[API HasLFGRestrictions|HasLFGRestrictions]]() - Returns whether the player is in a random party formed by the dungeon finder system.
 
: [[API IsLFGDungeonJoinable|IsLFGDungeonJoinable]](dungeonId) - Returns whether you can queue for a particular dungeon; dungeonId is from [[API GetLFGRandomDungeonInfo|GetLFGRandomDungeonInfo]]
 
: [[API LFGTeleport|LFGTeleport]]([toSafety]) - Teleports the player to (toSafety = nil) or from (toSafety = true) a dungeon
 
: [[API RejectProposal|RejectProposal]]() - Reject an LFD group invite and exit the queue.
 
: [[API SetLFGHeaderCollapsed|SetLFGHeaderCollapsed]](headerID, isCollapsed)
 
: [[API UnitGroupRolesAssigned|UnitGroupRolesAssigned]](UnitID) - Return's the targeted unit's assigned role.
 
   
=== Enchanting Functions ===
+
=== Frame ===
: [[API GetWeaponEnchantInfo|GetWeaponEnchantInfo]]() - Return information about main and offhand weapon enchantments.
+
:{{id|API|CreateFrame}}("frameType"[ ,"name"][, parent][, "inheritFrame"]) - Create a new frame of the specified type
: [[API ReplaceEnchant|ReplaceEnchant]]()
+
:{{id|API|CreateFont}}("name") - Dynamically create a font object
: [[API ReplaceTradeEnchant|ReplaceTradeEnchant]]() - Confirm the replacement of an enchantment via trade.
+
:{{id|API|GetFramesRegisteredForEvent}}(event) - Returns a list of frames that are registered for the given event. (added 2.3)
: [[API BindEnchant|BindEnchant]]() - Confirm the binding of the item when enchanting.
+
:{{id|API|GetNumFrames}}() - Get the current number of Frame (and derivative) objects
  +
:UI {{id|API|EasyMenu}}(menuList, menuFrame, anchor, x, y, displayMode, autoHideDelay)
  +
:{{id|API|EnumerateFrames}}(currentFrame) - Get the Frame which follows currentFrame
  +
:{{id|API|GetMouseFocus}}() - Returns the frame that currently has the mouse focus.
  +
:UI {{id|API|MouseIsOver}} - Determines whether or not the mouse is over the specified frame.
  +
:UI {{id|API|ToggleDropDownMenu}}(level, value, dropDownFrame, anchorName, xOffset, yOffset)
  +
:UI {{id|API|UIFrameFadeIn}}(frame, fadeTime, startAlpha, endAlpha)
  +
:UI {{id|API|UIFrameFlash}}(...)
   
=== Equipment Manager Functions ===
+
=== Friend ===
Equipment management was added to the UI in [[Patch 3.1.2]].
+
:{{id|API|AddFriend}}("playerName") - Add a friend to your friend list.
: [[API GetNumEquipmentSets|GetNumEquipmentSets]]() - Returns the number of saved equipment sets.
+
:{{id|API|AddOrRemoveFriend}}("playerName"[, "note"]) - Toggles a player's presence on your friends list.
: [[API GetEquipmentSetInfo|GetEquipmentSetInfo]](index) - Returns information about an equipment set.
+
:{{id|API|GetFriendInfo}}(index) - Returns name, level, class, location, connected, status, and friend note of a friend.
: [[API GetEquipmentSetInfoByName|GetEquipmentSetInfoByName]]("name") - Returns information about an equipment set.
+
:{{id|API|SetFriendNotes}}(index, "note") - Sets the note text for a friend.
: [[API GetEquipmentSetItemIDs|GetEquipmentSetItemIDs]]("name"[, returnTable]) - Populates and returns a table with the item IDs.
+
:{{id|API|GetNumFriends}}() - Returns how many friends are on your friend list.
: [[API GetEquipmentSetLocations|GetEquipmentSetLocations]]("name"[, returnTable]) - Populates and returns a table with the item locations.
+
:{{id|API|GetSelectedFriend}}() - Returns the index of the current selected friend.
: [[API EquipmentManager UnpackLocation|EquipmentManager_UnpackLocation]](location) - Unpacks a location integer to determine the actual inventory location.
+
:{{id|API|RemoveFriend}}("name" or index) - Removes a friend from your friend list
: [[API PickupEquipmentSet|PickupEquipmentSet]](index) - Places an equipment set on the cursor.
+
:{{id|API|SetSelectedFriend}}(index) - Update the current selected friend.
: [[API PickupEquipmentSetByName|PickupEquipmentSetByName]]("name") - Places an equipment set on the cursor.
+
:{{id|API|ShowFriends}}() - Request updated friends information from server.
: [[API EquipmentSetContainsLockedItems|EquipmentSetContainsLockedItems]]("name") - Checks if some of the items in the set are currently locked (pending client/server interaction).
+
:UI {{id|API|ToggleFriendsFrame}}([tabNumber]) - Opens/closes the friends pane (possibly on a specific tab).
: [[API UseEquipmentSet|UseEquipmentSet]]("name") - Equips an equipment set.
 
: [[API EquipmentManagerIgnoreSlotForSave|EquipmentManagerIgnoreSlotForSave]](slot) - flags the slot to be ignored when saving an equipment set.
 
: [[API EquipmentManagerUnignoreSlotForSave|EquipmentManagerUnignoreSlotForSave]](slot) - removes the ignore flag from a slot when saving an equipment set.
 
: [[API EquipmentManagerClearIgnoredSlotsForSave|EquipmentManagerClearIgnoredSlotsForSave]]() - removes the ignore flag from all slots when saving an equipment set.
 
: [[API SaveEquipmentSet|SaveEquipmentSet]]("name", iconIndex) - Saves the currently equipped items in a set.
 
: [[API RenameEquipmentSet|RenameEquipmentSet]]("oldName", "newName") - Renames an equipment set.
 
: [[API DeleteEquipmentSet|DeleteEquipmentSet]]("name") - Forgets an equipment set.
 
: UI [[API GetEquipmentSetIconInfo|GetEquipmentSetIconInfo]](index) - Returns information about available icons.
 
   
=== Faction Functions ===
+
=== Glyph ===
: [[API CollapseFactionHeader|CollapseFactionHeader]](index) - Collapse a faction header row.
+
:{{id|API|GetNumGlyphSockets}}() - Returns the number of Glyph Sockets available at max level. Same result as NUM_GLYPH_SLOTS.
: [[API CollapseAllFactionHeaders|CollapseAllFactionHeaders]]() - Collapse all faction header rows.
+
:{{id|API|GetGlyphSocketInfo}}([[Glyph SocketID|socketID]][, talentGroup]) - Returns info on a specific Glyph Socket.
: [[API ExpandFactionHeader|ExpandFactionHeader]](index) - Expand a faction header row.
+
:{{id|API|GetGlyphLink}}([[Glyph SocketID|socketID]][, talentGroup]) - Returns link text for a Glyph in the desired Socket.
: [[API ExpandAllFactionHeaders|ExpandAllFactionHeaders]]() - Expand all faction header rows.
+
:{{id|API|GlyphMatchesSocket}}([[Glyph SocketID|socketID]]) - See if the Glyph held by the cursor matches the desired Socket.
: [[API FactionToggleAtWar|FactionToggleAtWar]](index) - Toggle the At War flag for a faction.
+
:{{id|API|PlaceGlyphInSocket}}([[Glyph SocketID|socketID]]) - Places the Glyph held by the cursor into the desired Socket.
: [[API GetFactionInfo|GetFactionInfo]](index) - Gets details for a specific faction/faction header.
+
:{{id|API|RemoveGlyphFromSocket}}([[Glyph SocketID|socketID]]) - Removes the Glyph from the desired Socket.
: [[API GetNumFactions|GetNumFactions]]() - Returns the number of lines in the faction display.
+
:{{id|API|SpellCanTargetGlyph}}()
: [[API GetSelectedFaction|GetSelectedFaction]]() - Returns the row index of the currently selected faction in reputation window. (New in 1.10)
 
: [[API GetWatchedFactionInfo|GetWatchedFactionInfo]]() - Returns information about the currently watched faction. (New in 1.10)
 
: [[API IsFactionInactive|IsFactionInactive]](index) - Returns true if the faction is marked inactive. (New in 1.10)
 
: [[API SetFactionActive|SetFactionActive]](index) - Remove a faction from inactive group. (New in 1.10)
 
: [[API SetFactionInactive|SetFactionInactive]](index) - Move a faction to inactive group. (New in 1.10)
 
: [[API SetSelectedFaction|SetSelectedFaction]](index) - Sets the currently selected faction in reputation window. (New in 1.10)
 
: [[API SetWatchedFactionIndex|SetWatchedFactionIndex]](index) - Sets which faction should be watched in Blizzard reputation bar. (New in 1.10)
 
: [[API UnitFactionGroup|UnitFactionGroup]]("[[unitId|unit]]") - Returns the faction group id and name of the specified unit. (eg. "Alliance") - string returned is localization-independent (used in filepath)
 
   
=== Frame Management ===
+
=== GM ===
: [[API CreateFrame|CreateFrame]]("frameType"[ ,"name"][, parent][, "inheritFrame"]) - Create a new frame of the specified type
+
:{{id|API|CanComplainChat}}(lineID) - determines if should show the menu for reporting a line of chat spam/ 'lineID' comes from the player link in the chat line.
: [[API CreateFont|CreateFont]]("name") - Dynamically create a font object
+
:{{id|API|CanComplainInboxItem}}(index) - determines if we should show the 'report spam' button on a mail item
: [[API GetFramesRegisteredForEvent|GetFramesRegisteredForEvent]](event) - Returns a list of frames that are registered for the given event. - Added in 2.3
+
:{{id|API|ComplainChat}}(lineID) - complains about a particular line of chat spam
: [[API GetNumFrames|GetNumFrames]]() - Get the current number of Frame (and derivative) objects
+
:{{id|API|ComplainInboxItem}}(index) - complains about a particular mail item
: UI [[API EasyMenu|EasyMenu]](menuList, menuFrame, anchor, x, y, displayMode, autoHideDelay)
+
:PROTECTED {{id|API|DeleteGMTicket}}()
: [[API EnumerateFrames|EnumerateFrames]](currentFrame) - Get the Frame which follows currentFrame
+
:{{id|API|GMRequestPlayerInfo}}() - access denied (darn)
: [[API GetMouseFocus|GetMouseFocus]]() - Returns the frame that currently has the mouse focus.
+
:{{id|API|GetGMStatus}}()
: UI [[API MouseIsOver|MouseIsOver]] - Determines whether or not the mouse is over the specified frame.
+
:{{id|API|GetGMTicket}}()
: UI [[API ToggleDropDownMenu|ToggleDropDownMenu]](level, value, dropDownFrame, anchorName, xOffset, yOffset)
+
:{{id|API|GetGMTicketCategories}}() - Return all available ticket categories (not as a table)
: UI [[API UIFrameFadeIn|UIFrameFadeIn]](frame, fadeTime, startAlpha, endAlpha)
+
:{{id|API|GMSurveyAnswerSubmit}}(question, rank, comment)
: UI [[API UIFrameFlash|UIFrameFlash]](...)
+
:{{id|API|GMSurveyCommentSubmit}}(comment)
  +
:{{id|API|GMSurveyQuestion}}
  +
:{{id|API|GMSurveySubmit}}
  +
:{{id|API|HelpReportLag}}(type) - Uses the Report Lag function on the help screen to report the specified type of lag
  +
:PROTECTED {{id|API|NewGMTicket}}(type,"text")
  +
:PROTECTED UI {{id|API|Stuck}}() - Informs the game engine that the player is Stuck.
  +
:PROTECTED {{id|API|UpdateGMTicket}}(type,"text")
   
=== Friend Functions ===
+
=== Gossip ===
: [[API AddFriend|AddFriend]]("playerName") - Add a friend to your friend list.
+
:{{id|API|CloseGossip}}() - Dismiss the gossip window.
: [[API AddOrRemoveFriend|AddOrRemoveFriend]]("playerName"[, "note"]) - Toggles a player's presence on your friends list.
+
:{{id|API|ForceGossip}}() - Returns whether the gossip text ''must'' be displayed. (added 3.3.3)
: [[API GetFriendInfo|GetFriendInfo]](index) - Returns name, level, class, location, connected, status, and friend note of a friend.
+
:{{id|API|GetGossipActiveQuests}}() - Retrieves a list of the active (?) quests on the NPC you are talking to.
: [[API SetFriendNotes|SetFriendNotes]](index, "note") - Sets the note text for a friend.
+
:{{id|API|GetGossipAvailableQuests}}() - Retrieves a list of the available (!) quests on the NPC you are talking to.
: [[API GetNumFriends|GetNumFriends]]() - Returns how many friends are on your friend list.
+
:{{id|API|GetGossipOptions}}() - Retrieves a list of the available gossip items on the NPC you are talking to.
: [[API GetSelectedFriend|GetSelectedFriend]]() - Returns the index of the current selected friend.
+
:{{id|API|GetGossipText}}() - Retrieves the gossip text.
: [[API RemoveFriend|RemoveFriend]]("name" or index) - Removes a friend from your friend list
+
:{{id|API|GetNumGossipActiveQuests}}() - Returns the number of active quests that you should eventually turn in to this NPC.
: [[API SetSelectedFriend|SetSelectedFriend]](index) - Update the current selected friend.
+
:{{id|API|GetNumGossipAvailableQuests}}() - Returns the number of quests (that you are not already on) offered by this NPC.
: [[API ShowFriends|ShowFriends]]() - Request updated friends information from server.
+
:{{id|API|GetNumGossipOptions}}() - Returns the number of conversation options available with this NPC.
: UI [[API ToggleFriendsFrame|ToggleFriendsFrame]]([tabNumber]) - Opens/closes the friends pane (possibly on a specific tab).
+
:{{id|API|SelectGossipActiveQuest}}(index) - Selects an active quest.
  +
:{{id|API|SelectGossipAvailableQuest}}(index) - Selects an available quest.
  +
:{{id|API|SelectGossipOption}}(index) - Selects on a gossip item.
   
=== Glyph Functions ===
+
=== Group ===
: [[API GetNumGlyphSockets|GetNumGlyphSockets]]() - Returns the number of Glyph Sockets available at max level. (Same result as NUM_GLYPH_SLOTS)
+
See also the [[#Raid]] section.
: [[API GetGlyphSocketInfo|GetGlyphSocketInfo]]([[Glyph SocketID|socketID]][, talentGroup]) - Returns info on a specific Glyph Socket.
+
:{{id|API|AcceptGroup}}() - Accept the invitation to party.
: [[API GetGlyphLink|GetGlyphLink]]([[Glyph SocketID|socketID]][, talentGroup]) - Returns link text for a Glyph in the desired Socket.
+
:{{id|API|ConfirmReadyCheck}}(isReady) - Indicate if you are ready or not.
: [[API GlyphMatchesSocket|GlyphMatchesSocket]]([[Glyph SocketID|socketID]]) - See if the Glyph held by the cursor matches the desired Socket.
+
:{{id|API|ConvertToRaid}}() - Converts party to raid.
: [[API PlaceGlyphInSocket|PlaceGlyphInSocket]]([[Glyph SocketID|socketID]]) - Places the Glyph held by the cursor into the desired Socket.
+
:{{id|API|DeclineGroup}}() - Decline the invitation to a party.
: [[API RemoveGlyphFromSocket|RemoveGlyphFromSocket]]([[Glyph SocketID|socketID]]) - Removes the Glyph from the desired Socket.
+
:{{id|API|DoReadyCheck}}() - Initiate a ready check.
: [[API SpellCanTargetGlyph|SpellCanTargetGlyph]]()
+
:{{id|API|GetLootMethod}}() - Return the currently active [[lootMethod]]
  +
:{{id|API|GetLootThreshold}}() - Return the current loot threshold (for group/master loot)
  +
:{{id|API|GetMasterLootCandidate}}(index) - Return the name of a player who is eligible to receive loot in master mode
  +
:{{id|API|GetNumGroupMembers}}([partyCategoryType]) - Returns the number of players in your group, including yourself [0-40]. (added 5.0.4)
  +
:REMOVED {{id|API|GetNumPartyMembers}}() - Returns the number of players in your party, excluding yourself [0-4]. (removed 5.0.4)
  +
:REMOVED {{id|API|GetNumRaidMembers}}() - Returns the number of players in your battleground raid group [0-40]. (removed 5.0.4)
  +
:{{id|API|GetNumSubgroupMembers}}([partyCategoryType]) - Returns number of players in your subgroup, excluding yourself [0-4]. (added 5.0.4)
  +
:REMOVED {{id|API|GetRealNumPartyMembers}}() - Returns the number of other players in your home non-battleground party. (removed 5.0.4)
  +
:REMOVED {{id|API|GetRealNumRaidMembers}}() - Returns the number of players in your non-battleground raid group. (removed 5.0.4)
  +
:{{id|API|GetPartyLeaderIndex}}() - Returns the index of the party leader [1-4] if not yourself.
  +
:{{id|API|GetPartyMember}}(index) - Returns 1 if the party member at the given index exists, nil otherwise..
  +
:{{id|API|InviteUnit}}("name" or "[[unitId|unit]]") - Invites the specified player to the group you are currently in (added 2.0.0)
  +
:{{id|API|IsInGroup}}() - Determines if player is in any kind of group. (added 5.0.4)
  +
:{{id|API|IsInRaid}}() - Determines if player is in raid type group. (added 5.0.4)
  +
:{{id|API|UnitIsGroupAssistant}}("unit"[, partyCategoryType]) - Returns true if the unit is an assistant in your group. (added 5.0.4)
  +
:REMOVED {{id|API|IsRaidOfficer}}() - Returns a value based on whether the player is a raid officer, assistant(?). (removed 5.0.4)
  +
:REMOVED {{id|API|UnitIsRaidOfficer}}("unit") - Returns whether the specified unit is an officer in your raid. (removed 5.0.4)
  +
:{{id|API|UnitIsGroupLeader}}("unit"[, partyCategoryType]) - Returns true if the unit is the leader of its group. (added 5.0.4)
  +
:REMOVED {{id|API|IsRaidLeader}}() - Returns a value based on whether the player is a raid leader. (removed 5.0.4)
  +
:REMOVED {{id|API|IsPartyLeader}}() - Returns true if the player is the party leader. (removed 5.0.4)
  +
:REMOVED {{id|API|UnitIsPartyLeader}}("unit") - Returns true if the unit is the leader of its party. (removed 5.0.4)
  +
:{{id|API|LeaveParty}}() - Quit the party, often useful to troubleshoot "phantom party" bugs which may list you in a party when you are not.
  +
:{{id|API|PromoteToLeader}}("[[unitId|unit]]") - Promote a unit to party leader.
  +
:{{id|API|SetLootMethod}}("[[lootMethod]]"[, "masterPlayer" or threshold]) - Set the current loot method
  +
:{{id|API|SetLootThreshold}}(itemQuality) - Set the threshold for group/master loot
  +
:HW {{id|API|UninviteUnit}}("name" [, "reason"]) - Kick a unit from the party if player is group leader, or initiate a kick vote in an LFD group.
  +
:{{id|API|UnitInParty}}("[[unitId|unit]]") - Returns true if the unit is a member of your party.
   
=== GM Functions ===
+
=== Guild ===
: [[API CanComplainChat|CanComplainChat]](lineID) - determines if we should show the menu for reporting a line of chat spam (lineID comes from the player link in the chat line)
+
:{{id|API|AcceptGuild}}() - The player accepts the invitation to join a guild.
: [[API CanComplainInboxItem|CanComplainInboxItem]](index) - determines if we should show the 'report spam' button on a mail item
+
:{{id|API|BuyGuildCharter}}("guildName") - Purchases a guild charter for 'guildName'.
: [[API ComplainChat|ComplainChat]](lineID) - complains about a particular line of chat spam
+
:{{id|API|CanEditGuildEvent}}() - Returns true if you are allowed to edit guild events (in the calendar).
: [[API ComplainInboxItem|ComplainInboxItem]](index) - complains about a particular mail item
+
:{{id|API|CanEditGuildInfo}}() - Returns true if you are allowed to edit the guild info
: PROTECTED [[API DeleteGMTicket|DeleteGMTicket]]()
+
:{{id|API|CanEditMOTD}}() - Returns true if you are allowed to edit the guild motd.
: [[API GMRequestPlayerInfo|GMRequestPlayerInfo]]() - access denied (darn)
+
:{{id|API|CanEditOfficerNote}}() - Returns true if you are allowed to edit a guild member's officer note.
: [[API GetGMStatus|GetGMStatus]]()
+
:{{id|API|CanEditPublicNote}}() - Returns true if you are allowed to edit a guild member's public note.
: [[API GetGMTicket|GetGMTicket]]()
+
:{{id|API|CanGuildDemote}}() - Returns true if you are allowed to demote a guild member.
: [[API GetGMTicketCategories|GetGMTicketCategories]]() - Return all available ticket categories (not as a table)
+
:{{id|API|CanGuildInvite}}() - Returns true if you are allowed to invite a new member to the guild.
: [[API GMSurveyAnswerSubmit|GMSurveyAnswerSubmit]](question, rank, comment) - ?
+
:{{id|API|CanGuildPromote}}() - Returns true if you are allowed to demote a guild member.
: [[API GMSurveyCommentSubmit|GMSurveyCommentSubmit]](comment) - ?
+
:{{id|API|CanGuildRemove}}() - Returns true if you are allowed to remove a guild member.
: [[API GMSurveyQuestion|GMSurveyQuestion]] ?
+
:{{id|API|CanViewOfficerNote}}() - Returns true if you are allowed to view a Officer Note.
: [[API GMSurveySubmit|GMSurveySubmit]] ?
+
:{{id|API|CloseGuildRegistrar}}()
: [[API HelpReportLag|HelpReportLag]](type) - Uses the Report Lag function on the help screen to report the specified type of lag
+
:{{id|API|CloseGuildRoster}}()
: PROTECTED [[API NewGMTicket|NewGMTicket]](type,"text")
+
:{{id|API|CloseTabardCreation}}()
: PROTECTED UI [[API Stuck|Stuck]]() - Informs the game engine that the player is Stuck.
+
:{{id|API|DeclineGuild}}() - The player declines the invitation to join a guild.
: PROTECTED [[API UpdateGMTicket|UpdateGMTicket]](type,"text")
+
:{{id|API|GetGuildCharterCost}}() - Returns the cost of purchasing a guild charter.
  +
:{{id|API|GetGuildEventInfo}}(index) - Returns the event information. (added 2.3)
  +
:{{id|API|GetGuildInfo}}("[[unitId|unit]]") - This function returns the name of the guild ''unit'' belongs to.
  +
:{{id|API|GetGuildInfoText}}() - Returns the persistant Guild Information data. (added 1.9)
  +
:{{id|API|GetGuildRosterInfo}}(index) - This function is used to get info on members in the guild.
  +
:{{id|API|GetGuildRosterLastOnline}}(index) - Returns time since last online for indexth member in current sort order.
  +
:{{id|API|GetGuildRosterMOTD}}() - Returns guild's MOTD.
  +
:{{id|API|GetGuildRosterSelection}}() - Returns the index of the current selected guild member.
  +
:{{id|API|GetGuildRosterShowOffline}}() - Returns true if showing offline members of the guild.
  +
:{{id|API|GetNumGuildEvents}}() - Returns the number of guild events. (added 2.3)
  +
:{{id|API|GetNumGuildMembers}}() - Returns the total and online number of guild members.
  +
:{{id|API|GetTabardCreationCost}}() - Returns cost in coppers.
  +
:{{id|API|GetTabardInfo}}()
  +
:{{id|API|GuildControlAddRank}}("name") - Add another rank called "name". Only Guildmaster.
  +
:{{id|API|GuildControlDelRank}}("name") - Delete rank "name". Only Guildmaster.
  +
:{{id|API|GuildControlGetNumRanks}}() - Returns number of ranks after guild frame open. Any guild member can use this.
  +
:{{id|API|GuildControlGetRankFlags}}() - Returns list of values for each permission for a select rank (default rank 1).
  +
:{{id|API|GuildControlGetRankName}}(index) - Returns name of the rank at index. Any guild member can use this.
  +
:{{id|API|GuildControlSaveRank}}("name") - Saves the permissions for rank "name". Only Guildmaster.
  +
:{{id|API|GuildControlSetRank}}(rank) - Sets the currently selected rank to view.
  +
:{{id|API|GuildControlSetRankFlag}}(index, enabled) - Enable/disable permission for an action at index. Only Guildmaster.
  +
:{{id|API|GuildDemote}}("name") - Demotes a player "name".
  +
:{{id|API|GuildDisband}}() - Disbands at once your guild. You must be the guild's leader to do so. Be careful, no warning is given prior disbanding.
  +
:{{id|API|GuildInfo}}() - Displays information about the guild you are a member of.
  +
:{{id|API|GuildInvite}}("name") - Invites a player to your guild.
  +
:{{id|API|GuildLeave}}() - Removes you from your current guild.
  +
:{{id|API|GuildPromote}}("name") - Promotes a player "name".
  +
:{{id|API|GuildRoster}}() - Fetches the guild list and fires a GUILD_ROSTER_UPDATE event.
  +
:{{id|API|GuildRosterSetOfficerNote}}(index, "note") - Sets the officer note at index to "note".
  +
:{{id|API|GuildRosterSetPublicNote}}(index, "note") - Sets the public note at index to "note".
  +
:{{id|API|GuildSetMOTD}}("note") - Set Guild Message of the Day to "note".
  +
:{{id|API|GuildSetLeader}}("name") - Transfers guild leadership to another character.
  +
:{{id|API|GuildUninvite}}("name") - Removes the member "name".
  +
:{{id|API|IsGuildLeader}}("name") - Determine if player "name" is a guild master.
  +
:{{id|API|IsInGuild}}() - Lets you know whether you are in a guild.
  +
:{{id|API|QueryGuildEventLog}}() - Fetches the guild event list and fires a GUILD_EVENT_LOG_UPDATE event. (added 2.3)
  +
:{{id|API|SetGuildInfoText}}() - Sets the persistant Guild Information data. Limit is 500 letters (GuildInfoEditBox is limited to this number). Longer texts are possible, but will be reseted during the day. (added 1.9)
  +
:{{id|API|SetGuildRosterSelection}}(index) - Selects/deselects a guild member according current sorting order.
  +
:{{id|API|SetGuildRosterShowOffline}}(enabled) - Sets/Resets the show offline members flag.
  +
:{{id|API|SortGuildRoster}}("sort") - Sorts guildroster according "sort". Any unknown values sort on "name".
  +
:{{id|API|UnitGetGuildXP}}("[[unitId|unit]]") - Returns information about guild experience for the guild ''unit'' belongs to.
   
=== Gossip Functions ===
+
=== Guild Bank ===
: [[API CloseGossip|CloseGossip]]() - Dismiss the gossip window.
+
All functions were added in 2.3.
: [[API ForceGossip|ForceGossip]]() - Returns whether the gossip text ''must'' be displayed. (New: 3.3.3)
+
:{{id|API|AutoStoreGuildBankItem}}(tab, slot) - Withdraws an item from the bank, and automatically stores it in the player's inventory.
: [[API GetGossipActiveQuests|GetGossipActiveQuests]]() - Retrieves a list of the active (?) quests on the NPC you are talking to.
+
:{{id|API|BuyGuildBankTab}}() - Buys a guild bank tab, without confirmation.
: [[API GetGossipAvailableQuests|GetGossipAvailableQuests]]() - Retrieves a list of the available (!) quests on the NPC you are talking to.
+
:{{id|API|CanGuildBankRepair}}() - Returns 1 if the player is allowed to pay for repairs with guild bank funds
: [[API GetGossipOptions|GetGossipOptions]]() - Retrieves a list of the available gossip items on the NPC you are talking to.
+
:{{id|API|CanWithdrawGuildBankMoney}}() - Returns 1 if the player is allowed to withdraw funds from the guild bank (does not require proximity to the guild bank)
: [[API GetGossipText|GetGossipText]]() - Retrieves the gossip text.
+
:{{id|API|CloseGuildBankFrame}}() - Closes the guild bank frame
: [[API GetNumGossipActiveQuests|GetNumGossipActiveQuests]]() - Returns the number of active quests that you should eventually turn in to this NPC.
+
:{{id|API|DepositGuildBankMoney}}(money) - Deposits "money" amount in copper.
: [[API GetNumGossipAvailableQuests|GetNumGossipAvailableQuests]]() - Returns the number of quests (that you are not already on) offered by this NPC.
+
:{{id|API|GetCurrentGuildBankTab}}() - Integer of selected tab, >= 1
: [[API GetNumGossipOptions|GetNumGossipOptions]]() - Returns the number of conversation options available with this NPC.
+
:{{id|API|GetGuildBankItemInfo}}(tab, slot) - Returns texture, amount and integer 1 or nil depending on locked state
: [[API SelectGossipActiveQuest|SelectGossipActiveQuest]](index) - Selects an active quest.
+
:{{id|API|GetGuildBankItemLink}}(tab, slot) - Returns itemLink
: [[API SelectGossipAvailableQuest|SelectGossipAvailableQuest]](index) - Selects an available quest.
+
:{{id|API|GetGuildBankMoney}}() - Integer, funds available in copper.
: [[API SelectGossipOption|SelectGossipOption]](index) - Selects on a gossip item.
+
:{{id|API|GetGuildBankMoneyTransaction}}(index) - No bank proximity required, however QueryGuildBankLog function requires proximity.
  +
:{{id|API|GetGuildBankTabCost}}() - Integer OR nil - cost in copper OR no tabs available to buy
  +
:{{id|API|GetGuildBankTabInfo}}(tab) - Returns the name and icon of the guild bank tab queried.
  +
:{{id|API|GetGuildBankTabPermissions}}(tab) - Gets display / player's access info. Limited data available without bank proximity.
  +
:{{id|API|GetGuildBankText}}(tab) - Returns text associated with the given guild bank tab
  +
:{{id|API|GetGuildBankTransaction}}(tab, index) - Requires Guild Bank Proximity
  +
:{{id|API|GetGuildBankWithdrawGoldLimit}}() - Returns withdraw limit for currently selected rank in guild control (renamed from 'GetGuildBankWithdrawLimit' 4.0)
  +
:REMOVED 5.1.0 RENAMED 4.0 {{id|API|GetGuildBankWithdrawLimit}}() - Returns withdraw limit for currently selected rank in guild control. (renamed 'GetGuildBankWithdrawGoldLimit' 4.0)(removed 5.1.0)
  +
:{{id|API|GetGuildTabardFileNames}}()
  +
:{{id|API|GetNumGuildBankMoneyTransactions}}() - Returns number of money log entries
  +
:{{id|API|GetNumGuildBankTabs}}() - Integer count of bought tabs, >= 0. No bank proximity required.
  +
:{{id|API|GetNumGuildBankTransactions}}(tab) - Returns number of log transactions for tab "tab"
  +
:{{id|API|PickupGuildBankItem}}(tab, slot) - Picks up an item from the guild bank
  +
:{{id|API|PickupGuildBankMoney}}(money) - Picks up "money" copper from the guild bank
  +
:{{id|API|QueryGuildBankLog}}(tab) - Updates bank log data from the server, called before all transaction functions. "Money tab" is MAX_GUILDBANK_TABS+1
  +
:{{id|API|QueryGuildBankTab}}(tab) - Updates bank tab data from the server, called before all item functions.
  +
:{{id|API|SetCurrentGuildBankTab}}(tab) - Select different bank tab in the UI
  +
:{{id|API|SetGuildBankTabInfo}}(tab, name, iconIndex) - Modifies name and icon for tab
  +
:{{id|API|SetGuildBankTabPermissions}}(tab, index, enabled) - Modifies the permissions for the GuildBankTab. Guild Leader Only.
  +
:{{id|API|SetGuildBankWithdrawGoldLimit}}(amount) - Sets the gold withdraw limit from the guild bank. Guild Leader Only. (renamed from 'SetGuildBankWithdrawLimit' 4.0)
  +
:REMOVED 5.1.0 RENAMED 4.0 {{id|API|SetGuildBankWithdrawLimit}}(amount) - Sets the gold withdraw limit from the guild bank. Guild Leader Only. (renamed 'SetGuildBankWithdrawGoldLimit' 4.0)(removed 5.1.0)
  +
:{{id|API|SplitGuildBankItem}}(tab, slot, amount) - Picks up part of a stack
  +
:{{id|API|WithdrawGuildBankMoney}}(money) - Withdraws "money" copper from the guild bank
   
=== Group Functions ===
+
=== Honor ===
See also: [[#Raid Functions|Raid Functions]]
+
:{{id|API|GetHolidayBGHonorCurrencyBonuses}}() - Return rewards for participating in a Call to Arms (holiday) battleground. (added 3.3.3)
: [[API AcceptGroup|AcceptGroup]]() - Accept the invitation to party.
+
:{{id|API|GetInspectHonorData}}() - Return honor info for the inspected unit (if available).
: [[API ConfirmReadyCheck|ConfirmReadyCheck]](isReady) - Indicate if you are ready or not.
+
:{{id|API|GetPVPLifetimeStats}}() - Get your PvP/Honor statistics for your lifetime.
: [[API ConvertToRaid|ConvertToRaid]]() - Converts party to raid.
+
:{{id|API|GetPVPRankInfo}}(rank[, [[unitId|unit]]]) - Get information about a specific PvP rank.
: [[API DeclineGroup|DeclineGroup]]() - Decline the invitation to a party.
+
:{{id|API|GetPVPRankProgress}}() - Get information about the PvP rank progress.
: [[API DoReadyCheck|DoReadyCheck]]() - Initiate a ready check.
+
:{{id|API|GetPVPSessionStats}}() - Get your PvP/Honor statistics for this session.
: [[API GetLootMethod|GetLootMethod]]() - Return the currently active [[lootMethod]]
+
:{{id|API|GetPVPYesterdayStats}}() - Get your PvP/Honor statistics for yesterday.
: [[API GetLootThreshold|GetLootThreshold]]() - Return the current loot threshold (for group/master loot)
+
:{{id|API|GetRandomBGHonorCurrencyBonuses}}() - Returns rewards for participating in a random battleground. (added 3.3.3)
: [[API GetMasterLootCandidate|GetMasterLootCandidate]](index) - Return the name of a player who is eligible to receive loot in master mode
+
:{{id|API|HasInspectHonorData}}() - Determine if the inspected unit's honor data is available.
: [[API GetNumGroupMembers|GetNumGroupMembers]]([partyCategoryType]) - Returns the number of players in your group, including yourself (0-40). (5.0.4)
+
:{{id|API|RequestInspectHonorData}}() - Request honor data for inspected unit.
: REMOVED (5.0.4) [[API GetNumPartyMembers|GetNumPartyMembers]]() - Returns the number of players in your party, excluding yourself (0-4).
+
:{{id|API|UnitPVPName}}("[[unitId|unit]]") - Returns unit's name with PvP rank prefix (e.g., "Corporal Allianceguy").
: REMOVED (5.0.4) [[API GetNumRaidMembers|GetNumRaidMembers]]() - Returns the number of players in your battleground raid group (0-40).
+
:{{id|API|UnitPVPRank}}("[[unitId|unit]]") - Get PvP rank information for requested unit.
: [[API GetNumSubgroupMembers|GetNumSubgroupMembers]]([partyCategoryType]) - Returns number of players in your subgroup, excluding yourself (0-4). (5.0.4)
 
: REMOVED (5.0.4) [[API GetRealNumPartyMembers|GetRealNumPartyMembers]]() - Returns the number of other players in your home non-battleground party.
 
: REMOVED (5.0.4) [[API GetRealNumRaidMembers|GetRealNumRaidMembers]]() - Returns the number of players in your non-battleground raid group.
 
: [[API GetPartyLeaderIndex|GetPartyLeaderIndex]]() - Returns the index of the party leader (1-4) if not yourself.
 
: [[API GetPartyMember|GetPartyMember]](index) - Returns 1 if the party member at the given index exists, nil otherwise..
 
: [[API InviteUnit|InviteUnit]]("name" or "[[unitId|unit]]") - Invites the specified player to the group you are currently in ''(new for 2.0.0)''
 
: [[API IsInGroup|IsInGroup]]() - Determines if player is in any kind of group. (5.0.4)
 
: [[API IsInRaid|IsInRaid]]() - Determines if player is in raid type group. (5.0.4)
 
: [[API UnitIsGroupAssistant|UnitIsGroupAssistant]]("unit"[, partyCategoryType]) - Returns true if the unit is an assistant in your group. (5.0.4)
 
: REMOVED (5.0.4) [[API IsRaidOfficer|IsRaidOfficer]]() - Returns a value based on whether the player is a raid officer (assistant (?)).
 
: REMOVED (5.0.4) [[API UnitIsRaidOfficer|UnitIsRaidOfficer]]("unit") - Returns whether the specified unit is an officer in your raid.
 
: [[API UnitIsGroupLeader|UnitIsGroupLeader]]("unit"[, partyCategoryType]) - Returns true if the unit is the leader of its group. (5.0.4)
 
: REMOVED (5.0.4) [[API IsRaidLeader|IsRaidLeader]]() - Returns a value based on whether the player is a raid leader
 
: REMOVED (5.0.4) [[API IsPartyLeader|IsPartyLeader]]() - Returns true if the player is the party leader.
 
: REMOVED (5.0.4) [[API UnitIsPartyLeader|UnitIsPartyLeader]]("unit") - Returns true if the unit is the leader of its party.
 
: [[API LeaveParty|LeaveParty]]() - Quit the party, often useful to troubleshoot "phantom party" bugs which may list you in a party when you are not.
 
: [[API PromoteToLeader|PromoteToLeader]]("[[unitId|unit]]") - Promote a unit to party leader.
 
: [[API SetLootMethod|SetLootMethod]]("[[lootMethod]]"[, "masterPlayer" or threshold]) - Set the current loot method
 
: [[API SetLootThreshold|SetLootThreshold]](itemQuality) - Set the threshold for group/master loot
 
: HW [[API UninviteUnit|UninviteUnit]]("name" [, "reason"]) - Kick a unit from the party if player is group leader; or initiate a kick vote in an LFD group.
 
: [[API UnitInParty|UnitInParty]]("[[unitId|unit]]") - Returns true if the unit is a member of your party.
 
   
=== Guild Functions ===
+
=== Ignore ===
: [[API AcceptGuild|AcceptGuild]]() - The player accepts the invitation to join a guild.
+
:{{id|API|AddIgnore}}("name") - Add a player to your ignore list.
: [[API BuyGuildCharter|BuyGuildCharter]]("guildName") - Purchases a guild charter for ''guildName''.
+
:{{id|API|AddOrDelIgnore}}("name") - Toggles the ignore state of the specified name.
: [[API CanEditGuildEvent|CanEditGuildEvent]]() - Returns true if you are allowed to edit guild events (in the calendar),
+
:{{id|API|DelIgnore}}("name") - Delete a player from your ignore list.
: [[API CanEditGuildInfo|CanEditGuildInfo]]() - Returns true if you are allowed to edit the guild info
+
:{{id|API|GetIgnoreName}}(index) - Get the name of the player on your ignore list at index.
: [[API CanEditMOTD|CanEditMOTD]]() - Returns true if you are allowed to edit the guild motd.
+
:{{id|API|GetNumIgnores}}() - Get the number of players on your ignore list.
: [[API CanEditOfficerNote|CanEditOfficerNote]]() - Returns true if you are allowed to edit a guild member's officer note.
+
:{{id|API|GetSelectedIgnore}}() - Returns the currently selected index in the ignore listing
: [[API CanEditPublicNote|CanEditPublicNote]]() - Returns true if you are allowed to edit a guild member's public note.
+
:{{id|API|SetSelectedIgnore}}(index) - Sets the currently selected ignore entry
: [[API CanGuildDemote|CanGuildDemote]]() - Returns true if you are allowed to demote a guild member.
 
: [[API CanGuildInvite|CanGuildInvite]]() - Returns true if you are allowed to invite a new member to the guild.
 
: [[API CanGuildPromote|CanGuildPromote]]() - Returns true if you are allowed to demote a guild member.
 
: [[API CanGuildRemove|CanGuildRemove]]() - Returns true if you are allowed to remove a guild member.
 
: [[API CanViewOfficerNote|CanViewOfficerNote]]() - Returns true if you are allowed to view a Officer Note.
 
: [[API CloseGuildRegistrar|CloseGuildRegistrar]]() - ?.
 
: [[API CloseGuildRoster|CloseGuildRoster]]() - ?.
 
: [[API CloseTabardCreation|CloseTabardCreation]]() - ?.
 
: [[API DeclineGuild|DeclineGuild]]() - The player declines the invitation to join a guild.
 
: [[API GetGuildCharterCost|GetGuildCharterCost]]() - Returns the cost of purchasing a guild charter.
 
: [[API GetGuildEventInfo|GetGuildEventInfo]](index) - Returns the event information. (Added in 2.3)
 
: [[API GetGuildInfo|GetGuildInfo]]("[[unitId|unit]]") - This function returns the name of the guild ''unit'' belongs to.
 
: [[API GetGuildInfoText|GetGuildInfoText]]() - Returns the persistant Guild Information data. (new in 1.9)
 
: [[API GetGuildRosterInfo|GetGuildRosterInfo]](index) - This function is used to get info on members in the guild.
 
: [[API GetGuildRosterLastOnline|GetGuildRosterLastOnline]](index) - Returns time since last online for indexth member in current sort order.
 
: [[API GetGuildRosterMOTD|GetGuildRosterMOTD]]() - Returns guild's MOTD.
 
: [[API GetGuildRosterSelection|GetGuildRosterSelection]]() - Returns the index of the current selected guild member.
 
: [[API GetGuildRosterShowOffline|GetGuildRosterShowOffline]]() - Returns true if showing offline members of the guild.
 
: [[API GetNumGuildEvents|GetNumGuildEvents]]() - Returns the number of guild events. (Added in 2.3)
 
: [[API GetNumGuildMembers|GetNumGuildMembers]]() - Returns the total and online number of guild members.
 
: [[API GetTabardCreationCost|GetTabardCreationCost]]() - Returns cost in coppers.
 
: [[API GetTabardInfo|GetTabardInfo]]() -?.
 
: [[API GuildControlAddRank|GuildControlAddRank]]("name") - Add another rank called "name". Only Guildmaster.
 
: [[API GuildControlDelRank|GuildControlDelRank]]("name") - Delete rank "name". Only Guildmaster.
 
: [[API GuildControlGetNumRanks|GuildControlGetNumRanks]]() - Returns number of ranks after guild frame open. Any guild member can use this.
 
: [[API GuildControlGetRankFlags|GuildControlGetRankFlags]]() - Returns list of values for each permission for a select rank (default rank 1).
 
: [[API GuildControlGetRankName|GuildControlGetRankName]](index) - Returns name of the rank at index. Any guild member can use this.
 
: [[API GuildControlSaveRank|GuildControlSaveRank]]("name") - Saves the permissions for rank "name". Only Guildmaster.
 
: [[API GuildControlSetRank|GuildControlSetRank]](rank) - Sets the currently selected rank to view.
 
: [[API GuildControlSetRankFlag|GuildControlSetRankFlag]](index, enabled) - Enable/disable permission for an action at index. Only Guildmaster.
 
: [[API GuildDemote|GuildDemote]]("name") - Demotes a player "name".
 
: [[API GuildDisband|GuildDisband]]() - Disbands at once your guild. You must be the guild's leader to do so. Be careful, no warning is given prior disbanding.
 
: [[API GuildInfo|GuildInfo]]() - Displays information about the guild you are a member of.
 
: [[API GuildInvite|GuildInvite]]("name") - Invites a player to your guild.
 
: [[API GuildLeave|GuildLeave]]() - Removes you from your current guild.
 
: [[API GuildPromote|GuildPromote]]("name") - Promotes a player "name".
 
: [[API GuildRoster|GuildRoster]]() - Fetches the guild list and fires a GUILD_ROSTER_UPDATE event.
 
: [[API GuildRosterSetOfficerNote|GuildRosterSetOfficerNote]](index, "note") - Sets the officer note at index to "note".
 
: [[API GuildRosterSetPublicNote|GuildRosterSetPublicNote]](index, "note") - Sets the public note at index to "note".
 
: [[API GuildSetMOTD|GuildSetMOTD]]("note") - Set Guild Message of the Day to "note".
 
: [[API GuildSetLeader|GuildSetLeader]]("name") - Transfers guild leadership to another character.
 
: [[API GuildUninvite|GuildUninvite]]("name") - Removes the member "name".
 
: [[API IsGuildLeader|IsGuildLeader]]("name") - Determine if player "name" is a guild master.
 
: [[API IsInGuild|IsInGuild]]() - Lets you know whether you are in a guild.
 
: [[API QueryGuildEventLog|QueryGuildEventLog]]() - Fetches the guild event list and fires a GUILD_EVENT_LOG_UPDATE event. (Added in 2.3)
 
: [[API SetGuildInfoText|SetGuildInfoText]]() - Sets the persistant Guild Information data. Limit is 500 letters (GuildInfoEditBox is limited to this number). Longer texts are possible, but will be reseted during the day. (new in 1.9)
 
: [[API SetGuildRosterSelection|SetGuildRosterSelection]](index) - Selects/deselects a guild member according current sorting order.
 
: [[API SetGuildRosterShowOffline|SetGuildRosterShowOffline]](enabled) - Sets/Resets the show offline members flag.
 
: [[API SortGuildRoster|SortGuildRoster]]("sort") - Sorts guildroster according "sort". Any unknown values sort on "name".
 
: [[API UnitGetGuildXP|UnitGetGuildXP]]("[[unitId|unit]]") - Returns information about guild experience for the guild ''unit'' belongs to.
 
   
=== Guild Bank Functions ===
+
=== Inspection ===
All functions were added in [[Patch 2.3]]
+
:{{id|API|CanInspect}}("unit"[, showError]) - Returns whether you can inspect the specified unit.
: [[API AutoStoreGuildBankItem|AutoStoreGuildBankItem]](tab, slot) - Withdraws an item from the bank, and automatically stores it in the player's inventory.
+
:{{id|API|CheckInteractDistance}}("unit", interaction) - Returns whether you're in range to preform various interactions with the specified unit.
: [[API BuyGuildBankTab|BuyGuildBankTab]]() - Buys a guild bank tab, without confirmation.
+
:{{id|API|ClearInspectPlayer}}() - Reset inspect data once finished with it.
: [[API CanGuildBankRepair|CanGuildBankRepair]]() - Returns 1 if the player is allowed to pay for repairs with guild bank funds
+
:{{id|API|GetInspectArenaTeamData}}(index) - Returns information about one of the inspected player's arena teams.
: [[API CanWithdrawGuildBankMoney|CanWithdrawGuildBankMoney]]() - Returns 1 if the player is allowed to withdraw funds from the guild bank (does not require proximity to the guild bank)
+
:{{id|API|HasInspectHonorData}}() - Determine if the inspected unit's honor statistics are available.
: [[API CloseGuildBankFrame|CloseGuildBankFrame]]() - Closes the guild bank frame
+
:{{id|API|RequestInspectHonorData}}() - Request honor information for inspected unit.
: [[API DepositGuildBankMoney|DepositGuildBankMoney]](money) - Deposits "money" amount in copper.
+
:{{id|API|GetInspectHonorData}}() - Return honor information about the inspected player.
: [[API GetCurrentGuildBankTab|GetCurrentGuildBankTab]]() - Integer of selected tab, >= 1
+
:{{id|API|NotifyInspect}}("unit") - Requests information about a unit's inventory and talents from the server.
: [[API GetGuildBankItemInfo|GetGuildBankItemInfo]](tab, slot) - Returns texture, amount and integer 1 or nil depending on locked state
+
:UI {{id|API|InspectUnit}}("unit") - Instructs FrameXML to inspect a particular unit (query server; show UI).
: [[API GetGuildBankItemLink|GetGuildBankItemLink]](tab, slot) - Returns itemLink
 
: [[API GetGuildBankMoney|GetGuildBankMoney]]() - Integer, funds available in copper.
 
: [[API GetGuildBankMoneyTransaction|GetGuildBankMoneyTransaction]](index) - No bank proximity required, however QueryGuildBankLog function requires proximity.
 
: [[API GetGuildBankTabCost|GetGuildBankTabCost]]() - Integer OR nil - cost in copper OR no tabs available to buy
 
: [[API GetGuildBankTabInfo|GetGuildBankTabInfo]](tab) - Returns the name and icon of the guild bank tab queried.
 
: [[API GetGuildBankTabPermissions|GetGuildBankTabPermissions]](tab) - Gets display / player's access info. Limited data available without bank proximity.
 
: [[API GetGuildBankText|GetGuildBankText]](tab) - Returns text associated with the given guild bank tab
 
: [[API GetGuildBankTransaction|GetGuildBankTransaction]](tab, index) - Requires Guild Bank Proximity
 
: NEW (4.0) [[API GetGuildBankWithdrawGoldLimit|GetGuildBankWithdrawGoldLimit]]() - Returns withdraw limit for currently selected rank in guild control
 
: RENAMED (4.0) [[API GetGuildBankWithdrawLimit|GetGuildBankWithdrawLimit]]() - Returns withdraw limit for currently selected rank in guild control
 
: [[API GetGuildTabardFileNames|GetGuildTabardFileNames]]()
 
: [[API GetNumGuildBankMoneyTransactions|GetNumGuildBankMoneyTransactions]]() - Returns number of money log entries
 
: [[API GetNumGuildBankTabs|GetNumGuildBankTabs]]() - Integer count of bought tabs, >= 0. No bank proximity required.
 
: [[API GetNumGuildBankTransactions|GetNumGuildBankTransactions]](tab) - Returns number of log transactions for tab "tab"
 
: [[API PickupGuildBankItem|PickupGuildBankItem]](tab, slot) - Picks up an item from the guild bank
 
: [[API PickupGuildBankMoney|PickupGuildBankMoney]](money) - Picks up "money" copper from the guild bank
 
: [[API QueryGuildBankLog|QueryGuildBankLog]](tab) - Updates bank log data from the server, called before all transaction functions. "Money tab" is MAX_GUILDBANK_TABS+1
 
: [[API QueryGuildBankTab|QueryGuildBankTab]](tab) - Updates bank tab data from the server, called before all item functions.
 
: [[API SetCurrentGuildBankTab|SetCurrentGuildBankTab]](tab) - Select different bank tab in the UI
 
: [[API SetGuildBankTabInfo|SetGuildBankTabInfo]](tab, name, iconIndex) - Modifies name and icon for tab
 
: [[API SetGuildBankTabPermissions|SetGuildBankTabPermissions]](tab, index, enabled) - Modifies the permissions for the GuildBankTab. Guild Leader Only.
 
: New (4.0) [[API SetGuildBankWithdrawGoldLimit|SetGuildBankWithdrawGoldLimit]](amount) - Sets the gold withdraw limit from the guild bank. Guild Leader Only.
 
: RENAMED (4.0) [[API SetGuildBankWithdrawLimit|SetGuildBankWithdrawLimit]](amount) - Sets the gold withdraw limit from the guild bank. Guild Leader Only.
 
: [[API SplitGuildBankItem|SplitGuildBankItem]](tab, slot, amount) - Picks up part of a stack
 
: [[API WithdrawGuildBankMoney|WithdrawGuildBankMoney]](money) - Withdraws "money" copper from the guild bank
 
   
=== Honor Functions ===
+
=== Instance ===
: [[API GetHolidayBGHonorCurrencyBonuses|GetHolidayBGHonorCurrencyBonuses]]() - Return rewards for participating in a Call to Arms (holiday) battleground. (New: 3.3.3)
+
:{{id|API|CanShowResetInstances}}() - Determine if player can reset instances at the moment.
: [[API GetInspectHonorData|GetInspectHonorData]]() - Return honor info for the inspected unit (if available).
+
:{{id|API|GetBattlefieldInstanceExpiration}}() - Get shutdown timer for the battlefield instance.
: [[API GetPVPLifetimeStats|GetPVPLifetimeStats]]() - Get your PvP/Honor statistics for your lifetime.
+
:{{id|API|GetBattlefieldInstanceInfo}}(index) - Get the instance ID for a battlefield.
: [[API GetPVPRankInfo|GetPVPRankInfo]](rank[, [[unitId|unit]]]) - Get information about a specific PvP rank.
+
:{{id|API|GetBattlefieldInstanceRunTime}}() - In milliseconds, the time since battleground started (seems to be queried from server because it is not in sync with time()).
: [[API GetPVPRankProgress|GetPVPRankProgress]]() - Get information about the PvP rank progress.
+
:{{id|API|GetInstanceBootTimeRemaining}}() - Gets the time in seconds after which the player will be ejected from an instance.
: [[API GetPVPSessionStats|GetPVPSessionStats]]() - Get your PvP/Honor statistics for this session.
+
:{{id|API|GetInstanceInfo}}() - Gets informations about the current Instance
: [[API GetPVPYesterdayStats|GetPVPYesterdayStats]]() - Get your PvP/Honor statistics for yesterday.
+
:{{id|API|GetNumSavedInstances}}() - Gets the number of instances that the player is saved to.
: [[API GetRandomBGHonorCurrencyBonuses|GetRandomBGHonorCurrencyBonuses]]() - Returns rewards for participating in a random battleground. (New: 3.3.3)
+
:{{id|API|GetSavedInstanceInfo}}(index) - Gets information about an instance that the player is saved to.
: [[API HasInspectHonorData|HasInspectHonorData]]() - Determine if the inspected unit's honor data is available.
+
:{{id|API|IsInInstance}}() - Returns 1 if the player is in an instance, as well as the type of instance (pvp, raid, etc.).
: [[API RequestInspectHonorData|RequestInspectHonorData]]() - Request honor data for inspected unit.
+
:{{id|API|ResetInstances}}() - Reset instances.
: [[API UnitPVPName|UnitPVPName]]("[[unitId|unit]]") - Returns unit's name with PvP rank prefix (e.g., "Corporal Allianceguy").
+
:{{id|API|GetDungeonDifficulty}}() - Returns the player's current Dungeon Difficulty setting (1-3).
: [[API UnitPVPRank|UnitPVPRank]]("[[unitId|unit]]") - Get PvP rank information for requested unit.
+
:{{id|API|SetDungeonDifficulty}}(difficulty) - Sets the player's Dungeon Difficulty setting (for the 5-man instances).
  +
:{{id|API|GetInstanceDifficulty}}() - Returns the current instance's Dungeon Difficulty (1-4, or 1 if player is not in an instance).
  +
:{{id|API|GetInstanceLockTimeRemaining}}() - Returns information about the instance lock timer for the instance the player is currently entering.
  +
:{{id|API|GetInstanceLockTimeRemainingEncounter}}(id) - Returns information about bosses in the instance the player is about to be saved to.
   
=== Ignore Functions ===
+
=== Inventory ===
: [[API AddIgnore|AddIgnore]]("name") - Add a player to your ignore list.
+
These functions manage your inventory, that is 'equipped items'. See also the [[#Container / Bag]] and [[#Bank]] sections.
: [[API AddOrDelIgnore|AddOrDelIgnore]]("name") - Toggles the ignore state of the specified name.
+
:{{id|API|AutoEquipCursorItem}}() - Causes the equipment on the cursor to be equipped.
: [[API DelIgnore|DelIgnore]]("name") - Delete a player from your ignore list.
+
:{{id|API|BankButtonIDToInvSlotID}}(buttonID, isBag) - Returns the ID number of a bank button or bag in terms of inventory slot ID.
: [[API GetIgnoreName|GetIgnoreName]](index) - Get the name of the player on your ignore list at index.
+
:{{id|API|CancelPendingEquip}}(index) - This function is used to cancel a pending equip.
: [[API GetNumIgnores|GetNumIgnores]]() - Get the number of players on your ignore list.
+
:{{id|API|ConfirmBindOnUse}}()
: [[API GetSelectedIgnore|GetSelectedIgnore]]() - Returns the currently selected index in the ignore listing
+
:{{id|API|ContainerIDToInventoryID}}([[bagId|bagID]])
: [[API SetSelectedIgnore|SetSelectedIgnore]](index) - Sets the currently selected ignore entry
+
:{{id|API|CursorCanGoInSlot}}([[inventorySlotId|invSlot]]) - Return true if the item currently held by the cursor can go into the given inventory (equipment) slot
  +
:{{id|API|EquipCursorItem}}([[inventorySlotId|invSlot]])
  +
:{{id|API|EquipPendingItem}}([[inventorySlotId|invSlot]]) - Equips the currently pending Bind-on-Equip or Bind-on-Pickup item from the specified inventory slot. (Internal - do not use.)
  +
:{{id|API|GetInventoryAlertStatus}}(index) - Returns one of several codes describing the "status" of an equipped item.
  +
:{{id|API|GetInventoryItemBroken}}("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Determine if an inventory item is broken (no durability).
  +
:{{id|API|GetInventoryItemCooldown}}("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Get cooldown information for an inventory item.
  +
:{{id|API|GetInventoryItemCount}}("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Determine the quantity of an item in an inventory slot.
  +
:{{id|API|GetInventoryItemDurability}}([[inventorySlotId|invSlot]]) - Returns the maximum and remaining durability points for an inventory item.
  +
:{{id|API|GetInventoryItemGems}}(invSlot) - Returns item ids of the gems socketed in the item in the specified inventory slot.
  +
:{{id|API|GetInventoryItemID}}("unit", invSlot) - Returns the item id of the item in the specified inventory slot.
  +
:{{id|API|GetInventoryItemLink}}("[[unitId|unit]]",[[inventorySlotId|slotId]]) - Returns an [[itemLink]] for an inventory (equipped) item.
  +
:{{id|API|GetInventoryItemQuality}}("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Return the quality of an inventory item.
  +
:{{id|API|GetInventoryItemTexture}}("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Return the texture for an inventory item.
  +
:{{id|API|GetInventorySlotInfo}}([[inventorySlotName|invSlotName]]) - Get the info for a named inventory slot (slot ID and texture)
  +
:{{id|API|GetWeaponEnchantInfo}}() - Return information about main and offhand weapon enchantments.
  +
:{{id|API|HasWandEquipped}}() - Returns 1 if a wand is equipped, false otherwise.
  +
:{{id|API|IsInventoryItemLocked}}(id) - Returns whether an inventory item is locked, usually as it awaits pending action.
  +
:{{id|API|KeyRingButtonIDToInvSlotID}}(buttonID) - Map a keyring button to an inventory slot button for use in inventory functions.
  +
:{{id|API|PickupBagFromSlot}}(slot) - Picks up the bag from the specified slot, placing it in the cursor. If an item is already picked up, this places the item into the specified slot, swapping the items if needed.
  +
:{{id|API|PickupInventoryItem}}([[inventorySlotId|invSlot]]) - "Picks up" an item from the player's worn inventory.
  +
:{{id|API|UpdateInventoryAlertStatus}}()
  +
:PROTECTED {{id|API|UseInventoryItem}}([[inventorySlotId|invSlot]]) - Use an item in a specific inventory slot.
   
=== Inspection Functions ===
+
=== Item ===
: [[API CanInspect|CanInspect]]("unit"[, showError]) - Returns whether you can inspect the specified unit.
+
These functions operate on item links or item information directly. See also the [[#Container / Bag]] and [[#Inventory]] sections.
: [[API CheckInteractDistance|CheckInteractDistance]]("unit", interaction) - Returns whether you're in range to preform various interactions with the specified unit.
+
:{{id|API|EquipItemByName}}(itemId or "itemName" or "[[itemLink]]"[, [[inventorySlotId|slot]]]) - Equips an item, optionally into a specified slot.
: [[API ClearInspectPlayer|ClearInspectPlayer]]() - Reset inspect data once finished with it.
+
:{{id|API|GetAuctionItemLink}}("type", index) - Returns an [[itemLink]] for the specified auction item.
: [[API GetInspectArenaTeamData|GetInspectArenaTeamData]](index) - Returns information about one of the inspected player's arena teams.
+
:{{id|API|GetContainerItemLink}}([[bagId|bagID]], slot) - Returns the [[itemLink]] of the item located in bag#, slot#.
: [[API HasInspectHonorData|HasInspectHonorData]]() - Determine if the inspected unit's honor statistics are available.
+
:{{id|API|GetItemCooldown}}(itemID) - Returns startTime, duration, enable.
: [[API RequestInspectHonorData|RequestInspectHonorData]]() - Request honor information for inspected unit.
+
:{{id|API|GetItemCount}}(itemId or "itemName" or "[[itemLink]]"[, includeBank][, includeCharges]) - Returns number of such items in inventory[, or charges instead if it has charges]
: [[API GetInspectHonorData|GetInspectHonorData]]() - Return honor information about the inspected player.
+
:{{id|API|GetItemFamily}}(itemId or "itemName" or "[[itemLink]]") - Returns the bag type that an item can go into, or for bags the type of items that it can contain. (added 2.4)
: [[API NotifyInspect|NotifyInspect]]("unit") - Requests information about a unit's inventory and talents from the server.
+
:{{id|API|GetItemIcon}}(itemId or "[[itemString]]" or "itemName" or "[[itemLink]]") - Returns the icon for the item. Works for any valid item even if it's not in the cache. (added 2.4)
: UI [[API InspectUnit|InspectUnit]]("unit") - Instructs FrameXML to inspect a particular unit (query server; show UI).
+
:{{id|API|GetItemInfo}}(itemId or "[[itemString]]" or "itemName" or "[[itemLink]]") - Returns information about an item.
  +
:{{id|API|GetItemQualityColor}}(quality) - Returns the RGB color codes for a quality.
  +
:{{id|API|GetItemSpell}}(item) - Returns name, rank.
  +
:{{id|API|GetItemStats}}(itemLink, statTable) - Returns a table of stats for an item.
  +
:{{id|API|GetMerchantItemLink}}(index) - Returns an [[itemLink]] for the given purchasable item
  +
:{{id|API|GetQuestItemLink}}("type", index) - Returns an [[itemLink]] for a quest reward item.
  +
:{{id|API|GetQuestLogItemLink}}("type", index) - Returns an [[itemLink]] for a quest reward item.
  +
:{{id|API|GetTradePlayerItemLink}}(id) - Returns an [[itemLink]] for the given item in your side of the trade window (if open)
  +
:{{id|API|GetTradeSkillItemLink}}(index) - Returns the [[itemLink]] for a trade skill item.
  +
:{{id|API|GetTradeSkillReagentItemLink}}(index, reagentId) - Returns the [[itemLink]] for one of the reagents needed to craft the given item
  +
:{{id|API|GetTradeTargetItemLink}}(id) - Returns an [[itemLink]] for the given item in the other player's side of the trade window (if open)
  +
:{{id|API|IsUsableItem}}(item) - Returns usable, noMana.
  +
:{{id|API|IsConsumableItem}}(item)
  +
:{{id|API|IsCurrentItem}}(item)
  +
:{{id|API|IsEquippedItem}}(item)
  +
:{{id|API|IsEquippableItem}}(itemId or "itemName" or "[[itemLink]]") - Returns 1 or nil.
  +
:{{id|API|IsEquippedItemType}}("type") - Where "type" is any valid inventory type, item class, or item subclass.
  +
:{{id|API|IsItemInRange}}("itemName" or "[[itemLink]]", "[[unitId|unit]]") - Nil for invalid target, 0 for out of range, 1 for in range.
  +
:{{id|API|ItemHasRange}}(item)
  +
:{{id|API|OffhandHasWeapon}}() - Determine if your offhand carries a weapon.
  +
:{{id|API|SplitContainerItem}}(bagID,slot,amount) - Picks up part of a stack.
  +
:UI {{id|API|SetItemRef}}(link, text, button) - Handles item link tooltips in chat.
   
=== Instance Functions ===
+
=== Item Socketing ===
: [[API CanShowResetInstances|CanShowResetInstances]]() - Determine if player can reset instances at the moment.
+
The following were introduced along with socketed items and gems in 2.0. The 'id' refers to a 1-based index of the sockets in the item being considered for socketing.
: [[API GetBattlefieldInstanceExpiration|GetBattlefieldInstanceExpiration]]() - Get shutdown timer for the battlefield instance.
+
:{{id|API|AcceptSockets}}() - Sockets tentative gems into the sockets, replacing existing gems if necessary.
: [[API GetBattlefieldInstanceInfo|GetBattlefieldInstanceInfo]](index) - Get the instance ID for a battlefield.
+
:{{id|API|ClickSocketButton}}(id) - If the cursor is currently holding a gem, tentatively insert it into the socket.
: [[API GetBattlefieldInstanceRunTime|GetBattlefieldInstanceRunTime]]() - In milliseconds, the time since battleground started (seems to be queried from server because it is not in sync with time()).
+
:{{id|API|CloseSocketInfo}}() - Stops considering the item for socketing, without applying changes.
: [[API GetInstanceBootTimeRemaining|GetInstanceBootTimeRemaining]]() - Gets the time in seconds after which the player will be ejected from an instance.
+
:{{id|API|GetSocketItemInfo}}() - Returns information about the item currently being socketed.
: [[API GetInstanceInfo|GetInstanceInfo]]() - Gets informations about the current Instance
+
:{{id|API|GetSocketItemRefundable}}() - Returns whether the item currently being socketed is refundable.
: [[API GetNumSavedInstances|GetNumSavedInstances]]() - Gets the number of instances that the player is saved to.
+
:{{id|API|GetSocketItemBoundTradeable}}() - Returns if the item currently being socketed is temporarily tradable (BoP boss loot).
: [[API GetSavedInstanceInfo|GetSavedInstanceInfo]](index) - Gets information about an instance that the player is saved to.
+
:{{id|API|GetNumSockets}}() - Returns the number of sockets in the item currently being socketed.
: [[API IsInInstance|IsInInstance]]() - Returns 1 if the player is in an instance, as well as the type of instance (pvp, raid, etc.).
+
:{{id|API|GetSocketTypes}}(id) - Returns the type (color) of a socket in the item.
: [[API ResetInstances|ResetInstances]]() - Reset instances.
+
:{{id|API|GetExistingSocketInfo}}(id) - Returns information about the existing gem in the socket.
: [[API GetDungeonDifficulty|GetDungeonDifficulty]]() - Returns the player's current Dungeon Difficulty setting (1-3).
+
:{{id|API|GetExistingSocketLink}}(id) - Returns an item link for the existing gem in the socket.
: [[API SetDungeonDifficulty|SetDungeonDifficulty]](difficulty) - Sets the player's Dungeon Difficulty setting (for the 5-man instances).
+
:{{id|API|GetNewSocketInfo}}(id) - Returns information about the new (tentative) gem in the socket.
: [[API GetInstanceDifficulty|GetInstanceDifficulty]]() - Returns the current instance's Dungeon Difficulty (1-4, or 1 if player is not in an instance).
+
:{{id|API|GetNewSocketLink}}(id) - Returns an item link for the new (tentative) gem in the socket.
: [[API GetInstanceLockTimeRemaining|GetInstanceLockTimeRemaining]]() - Returns information about the instance lock timer for the instance the player is currently entering.
+
:{{id|API|SocketInventoryItem}}(slot) - Considers the item in the inventory slot for socketing.
: [[API GetInstanceLockTimeRemainingEncounter|GetInstanceLockTimeRemainingEncounter]](id) - Returns information about bosses in the instance the player is about to be saved to.
+
:{{id|API|SocketContainerItem}}(bag, slot) - Consider an item in a container slot for socketing.
   
=== Inventory Functions ===
+
=== Item Text ===
These functions manage your "inventory", that is, '''equipped items'''. See also [[#Container/Bag Functions|Container/Bag Functions]] and [[#Bank Functions|Bank Functions]].
+
These functions relate to item text: books, etc...
  +
:{{id|API|CloseItemText}}() - Close an open item text: books, plaques, etc...
  +
:{{id|API|ItemTextGetCreator}}() - Get the creator of the current text, if player-created.
  +
:{{id|API|ItemTextGetItem}}() - Get the name of the text.
  +
:{{id|API|ItemTextGetMaterial}}() - Get the material on which the text is printed.
  +
:{{id|API|ItemTextGetPage}}() - Get the page number of the currently viewed page.
  +
:{{id|API|ItemTextGetText}}() - Get the page contents of the currently viewed page.
  +
:{{id|API|ItemTextHasNextPage}}() - Determine if there is another page after the current one.
  +
:{{id|API|ItemTextNextPage}}() - Request the next page of the text.
  +
:{{id|API|ItemTextPrevPage}}() - Request the previous page of the text.
   
: [[API AutoEquipCursorItem|AutoEquipCursorItem]]() - Causes the equipment on the cursor to be equipped.
+
=== Knowledge Base ===
: [[API BankButtonIDToInvSlotID|BankButtonIDToInvSlotID]](buttonID, isBag) - Returns the ID number of a bank button or bag in terms of inventory slot ID.
+
:{{id|API|KBArticle_BeginLoading}}(articleId, searchType) - Starts the article loading process.
: [[API CancelPendingEquip|CancelPendingEquip]](index) - This function is used to cancel a pending equip.
+
:{{id|API|KBArticle_GetData}}() - Returns information about the current article.
: [[API ConfirmBindOnUse|ConfirmBindOnUse]]()
+
:{{id|API|KBArticle_IsLoaded}}() - Returns true if an article is loaded.
: [[API ContainerIDToInventoryID|ContainerIDToInventoryID]]([[bagId|bagID]])
+
:{{id|API|KBQuery_BeginLoading}}(searchText, categoryIndex, subcategoryIndex, articlesPerPage, curPage) - Starts a query for articles.
: [[API CursorCanGoInSlot|CursorCanGoInSlot]]([[inventorySlotId|invSlot]]) - Return true if the item currently held by the cursor can go into the given inventory (equipment) slot
+
:{{id|API|KBQuery_GetArticleHeaderCount}}() - Returns the number of article headers in the current query.
: [[API EquipCursorItem|EquipCursorItem]]([[inventorySlotId|invSlot]])
+
:{{id|API|KBQuery_GetArticleHeaderData}}(index) - Returns information about an article header of the current query.
: [[API EquipPendingItem|EquipPendingItem]]([[inventorySlotId|invSlot]]) - Equips the currently pending Bind-on-Equip or Bind-on-Pickup item from the specified inventory slot. (Internal - do not use.)
+
:{{id|API|KBQuery_GetTotalArticleCount}}() - Returns the total number of articles that matches the current query.
: [[API GetInventoryAlertStatus|GetInventoryAlertStatus]](index) - Returns one of several codes describing the "status" of an equipped item.
+
:{{id|API|KBQuery_IsLoaded}}() - Returns true if a query loaded successfuly.
: [[API GetInventoryItemBroken|GetInventoryItemBroken]]("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Determine if an inventory item is broken (no durability).
+
:{{id|API|KBSetup_BeginLoading}}(articlesPerPage, curPage) - Starts the loading process for the KB start page.
: [[API GetInventoryItemCooldown|GetInventoryItemCooldown]]("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Get cooldown information for an inventory item.
+
:{{id|API|KBSetup_GetArticleHeaderCount}}() - Returns the number of articles for the current page.
: [[API GetInventoryItemCount|GetInventoryItemCount]]("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Determine the quantity of an item in an inventory slot.
+
:{{id|API|KBSetup_GetArticleHeaderData}}(index) - Returns information for an article header.
: [[API GetInventoryItemDurability|GetInventoryItemDurability]]([[inventorySlotId|invSlot]]) - Returns the maximum and remaining durability points for an inventory item.
+
:{{id|API|KBSetup_GetCategoryCount}}() - Returns the number of categories in the knowledge base.
: [[API GetInventoryItemGems|GetInventoryItemGems]](invSlot) - Returns item ids of the gems socketed in the item in the specified inventory slot.
+
:{{id|API|KBSetup_GetCategoryData}}(index) - Returns information about a category.
: [[API GetInventoryItemID|GetInventoryItemID]]("unit", invSlot) - Returns the item id of the item in the specified inventory slot.
+
:{{id|API|KBSetup_GetLanguageCount}}() - Returns the number of languages in the knowledge base.
: [[API GetInventoryItemLink|GetInventoryItemLink]]("[[unitId|unit]]",[[inventorySlotId|slotId]]) - Returns an [[itemLink]] for an inventory (equipped) item.
+
:{{id|API|KBSetup_GetLanguageData}}(index) - Returns information about a language.
: [[API GetInventoryItemQuality|GetInventoryItemQuality]]("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Return the quality of an inventory item.
+
:{{id|API|KBSetup_GetSubCategoryCount}}(category) - Returns the number of subcategories for a category.
: [[API GetInventoryItemTexture|GetInventoryItemTexture]]("[[unitId|unit]]",[[inventorySlotId|invSlot]]) - Return the texture for an inventory item.
+
:{{id|API|KBSetup_GetSubCategoryData}}(category, index) - Returns information about a subcategory.
: [[API GetInventorySlotInfo|GetInventorySlotInfo]]([[inventorySlotName|invSlotName]]) - Get the info for a named inventory slot (slot ID and texture)
+
:{{id|API|KBSetup_GetTotalArticleCount}}() - Returns the total number of articles in the knowlege base.
: [[API GetWeaponEnchantInfo|GetWeaponEnchantInfo]]() - Return information about main and offhand weapon enchantments.
+
:{{id|API|KBSetup_IsLoaded}}() - Returns true if the knowledge base is loaded successfuly.
: [[API HasWandEquipped|HasWandEquipped]]() - Returns 1 if a wand is equipped, false otherwise.
+
:{{id|API|KBSystem_GetMOTD}}() - Returns the server message of the day.
: [[API IsInventoryItemLocked|IsInventoryItemLocked]](id) - Returns whether an inventory item is locked, usually as it awaits pending action.
+
:{{id|API|KBSystem_GetServerNotice}}() - Returns the server notice.
: [[API KeyRingButtonIDToInvSlotID|KeyRingButtonIDToInvSlotID]](buttonID) - Map a keyring button to an inventory slot button for use in inventory functions.
+
:{{id|API|KBSystem_GetServerStatus}}() - Returns the server status text.
: [[API PickupBagFromSlot|PickupBagFromSlot]](slot) - Picks up the bag from the specified slot, placing it in the cursor. If an item is already picked up, this places the item into the specified slot, swapping the items if needed.
 
: [[API PickupInventoryItem|PickupInventoryItem]]([[inventorySlotId|invSlot]]) - "Picks up" an item from the player's worn inventory.
 
: [[API UpdateInventoryAlertStatus|UpdateInventoryAlertStatus]]()
 
: PROTECTED [[API UseInventoryItem|UseInventoryItem]]([[inventorySlotId|invSlot]]) - Use an item in a specific inventory slot.
 
   
=== Item Functions ===
+
=== Location ===
These functions are those which operate on item links or item information directly. See also [[#Container/Bag Functions|Container/Bag Functions]] and [[#Inventory Functions|Inventory Functions]].
+
These functions relate to the current location of the player and how it's displayed.
  +
:{{id|API|GetMinimapZoneText}}() - Returns the zone text, that is displayed over the minimap.
  +
:{{id|API|GetRealZoneText}}() - Returns either instance name or zone name
  +
:{{id|API|GetSubZoneText}}() - Returns the subzone text, e.g. "The Canals".
  +
:{{id|API|GetZonePVPInfo}}() - Returns PVP info for the current zone.
  +
:{{id|API|GetZoneText}}() - Returns the zone text, e.g. "Stormwind City".
   
: [[API EquipItemByName|EquipItemByName]](itemId or "itemName" or "[[itemLink]]"[, [[inventorySlotId|slot]]]) - Equips an item, optionally into a specified slot.
+
=== Looking for Group ===
: [[API GetAuctionItemLink|GetAuctionItemLink]]("type", index) - Returns an [[itemLink]] for the specified auction item.
+
Functions for use in the 'Looking for Group' tool. See also the [[#Dungeon Finder]] and [[#Raid Browser]] sections.
: [[API GetContainerItemLink|GetContainerItemLink]]([[bagId|bagID]], slot) - Returns the [[itemLink]] of the item located in bag#, slot#.
+
:{{id|API|CompleteLFGRoleCheck}}(boolean) - Passing false means declining the roleCheck. The returned boolean seems to indicate that the roleCheck was successful?
: [[API GetItemCooldown|GetItemCooldown]](itemID) - Returns startTime, duration, enable.
+
:{{id|API|GetLFGDeserterExpiration}}() - Returns the time at which you may once again use the dungeon finder after prematurely leaving a group. (added 3.3.3)
: [[API GetItemCount|GetItemCount]](itemId or "itemName" or "[[itemLink]]"[, includeBank][, includeCharges]) - Returns number of such items in inventory[, or charges instead if it has charges]
+
:{{id|API|GetLFGRandomCooldownExpiration}}() - Returns the time at which you may once again queue for a random dungeon. (added 3.3.3)
: [[API GetItemFamily|GetItemFamily]](itemId or "itemName" or "[[itemLink]]") - Returns the bag type that an item can go into, or for bags the type of items that it can contain. (New in [[Patch 2.4]])
+
:{{id|API|GetLFGBootProposal}}() - Returns information about an LFG Kick vote in progress.
: [[API GetItemIcon|GetItemIcon]](itemId or "[[itemString]]" or "itemName" or "[[itemLink]]") - Returns the icon for the item. Works for any valid item even if it's not in the cache. (New in [[Patch 2.4]])
+
:UI {{id|API|GetLFGMode}}() - returns mode, subMode (sometimes empty result)
: [[API GetItemInfo|GetItemInfo]](itemId or "[[itemString]]" or "itemName" or "[[itemLink]]") - Returns information about an item.
+
:{{id|API|GetLFGQueueStats}}() - returns current state and wait times for being in queue
: [[API GetItemQualityColor|GetItemQualityColor]](quality) - Returns the RGB color codes for a quality.
+
:{{id|API|GetLFGRoles}}() - returns isLeader, isTank, isHealer, isDPS - Returns the roles you signed up as, not the role you were assigned.
: [[API GetItemSpell|GetItemSpell]](item) - Returns name, rank.
+
:{{id|API|GetLFGRoleUpdate}}() - returns roleCheckInProgress, slots, members
: [[API GetItemStats|GetItemStats]](itemLink, statTable) - Returns a table of stats for an item.
+
:{{id|API|GetLFGRoleUpdateSlot}}(slot) - returns dungeonType, dungeonID for a particular role slot (integer)
: [[API GetMerchantItemLink|GetMerchantItemLink]](index) - Returns an [[itemLink]] for the given purchasable item
+
:{{id|API|SetLFGBootVote}}(boolean) - responds to a vote-kick
: [[API GetQuestItemLink|GetQuestItemLink]]("type", index) - Returns an [[itemLink]] for a quest reward item.
+
:{{id|API|SetLFGComment}}("comment")
: [[API GetQuestLogItemLink|GetQuestLogItemLink]]("type", index) - Returns an [[itemLink]] for a quest reward item.
+
:{{id|API|SetLFGRoles}}(isLeader, isTank, isHealer, isDPS) - changes the selected roles
: [[API GetTradePlayerItemLink|GetTradePlayerItemLink]](id) - Returns an [[itemLink]] for the given item in your side of the trade window (if open)
+
:{{id|API|UninviteUnit}}("name" [, "reason"]) - initiate a kick vote in a LFD group.
: [[API GetTradeSkillItemLink|GetTradeSkillItemLink]](index) - Returns the [[itemLink]] for a trade skill item.
+
:{{id|API|UnitGroupRolesAssigned}}(UnitID) - Return's the targeted unit's assigned role.
: [[API GetTradeSkillReagentItemLink|GetTradeSkillReagentItemLink]](index, reagentId) - Returns the [[itemLink]] for one of the reagents needed to craft the given item
+
:{{id|API|UnitHasLFGDeserter}}("unit") - returns whether the specified unit has recently deserted
: [[API GetTradeTargetItemLink|GetTradeTargetItemLink]](id) - Returns an [[itemLink]] for the given item in the other player's side of the trade window (if open)
+
:{{id|API|UnitHasLFGRandomCooldown}}("unit") - returns whether the specified unit has recently queued for a random
: [[API IsUsableItem|IsUsableItem]](item) - Returns usable, noMana.
 
: [[API IsConsumableItem|IsConsumableItem]](item) -
 
: [[API IsCurrentItem|IsCurrentItem]](item) -
 
: [[API IsEquippedItem|IsEquippedItem]](item) -
 
: [[API IsEquippableItem|IsEquippableItem]](itemId or "itemName" or "[[itemLink]]") - Returns 1 or nil.
 
: [[API IsEquippedItemType|IsEquippedItemType]]("type") - Where "type" is any valid inventory type, item class, or item subclass.
 
: [[API IsItemInRange|IsItemInRange]]("itemName" or "[[itemLink]]", "[[unitId|unit]]") - Nil for invalid target, 0 for out of range, 1 for in range.
 
: [[API ItemHasRange|ItemHasRange]](item) -
 
: [[API OffhandHasWeapon|OffhandHasWeapon]]() - Determine if your offhand carries a weapon.
 
: [[API SplitContainerItem|SplitContainerItem]](bagID,slot,amount) - Picks up part of a stack.
 
: UI [[API SetItemRef|SetItemRef]](link, text, button) - Handles item link tooltips in chat.
 
   
=== Item Socketing Functions ===
+
=== Loot ===
The following were introduced along with socketed items and gems in [[Patch 2.0]]. id refers to a 1-based index of the sockets in the item being considered for socketing.
 
: [[API AcceptSockets|AcceptSockets]]() - Sockets tentative gems into the sockets, replacing existing gems if necessary.
 
: [[API ClickSocketButton|ClickSocketButton]](id) - If the cursor is currently holding a gem, tentatively insert it into the socket.
 
: [[API CloseSocketInfo|CloseSocketInfo]]() - Stops considering the item for socketing, without applying changes.
 
: [[API GetSocketItemInfo|GetSocketItemInfo]]() - Returns information about the item currently being socketed.
 
: [[API GetSocketItemRefundable|GetSocketItemRefundable]]() - Returns whether the item currently being socketed is refundable.
 
: [[API GetSocketItemBoundTradeable|GetSocketItemBoundTradeable]]() - Returns whether the item currently being socketed is temporarily tradable (BoP boss loot).
 
: [[API GetNumSockets|GetNumSockets]]() - Returns the number of sockets in the item currently being socketed.
 
: [[API GetSocketTypes|GetSocketTypes]](id) - Returns the type (color) of a socket in the item.
 
: [[API GetExistingSocketInfo|GetExistingSocketInfo]](id) - Returns information about the existing gem in the socket.
 
: [[API GetExistingSocketLink|GetExistingSocketLink]](id) - Returns an item link for the existing gem in the socket.
 
: [[API GetNewSocketInfo|GetNewSocketInfo]](id) - Returns information about the new (tentative) gem in the socket.
 
: [[API GetNewSocketLink|GetNewSocketLink]](id) - Returns an item link for the new (tentative) gem in the socket.
 
: [[API SocketInventoryItem|SocketInventoryItem]](slot) - Considers the item in the inventory slot for socketing.
 
: [[API SocketContainerItem|SocketContainerItem]](bag, slot) - Consider an item in a container slot for socketing.
 
 
=== Item Text Functions ===
 
These functions relate to item text (books, etc)
 
 
: [[API CloseItemText|CloseItemText]]() - Close an open item text (book, plaque, etc).
 
: [[API ItemTextGetCreator|ItemTextGetCreator]]() - Get the creator of the current text (if player-created).
 
: [[API ItemTextGetItem|ItemTextGetItem]]() - Get the name of the text.
 
: [[API ItemTextGetMaterial|ItemTextGetMaterial]]() - Get the material on which the text is printed.
 
: [[API ItemTextGetPage|ItemTextGetPage]]() - Get the page number of the currently viewed page.
 
: [[API ItemTextGetText|ItemTextGetText]]() - Get the page contents of the currently viewed page.
 
: [[API ItemTextHasNextPage|ItemTextHasNextPage]]() - Determine if there is another page after the current one.
 
: [[API ItemTextNextPage|ItemTextNextPage]]() - Request the next page of the text.
 
: [[API ItemTextPrevPage|ItemTextPrevPage]]() - Request the previous page of the text.
 
 
=== Knowledge Base Functions ===
 
:[[API KBArticle_BeginLoading|KBArticle_BeginLoading]](articleId, searchType) - Starts the article loading process.
 
:[[API KBArticle_GetData|KBArticle_GetData]]() - Returns information about the current article.
 
:[[API KBArticle_IsLoaded|KBArticle_IsLoaded]]() - Returns true if an article is loaded.
 
:[[API KBQuery_BeginLoading|KBQuery_BeginLoading]](searchText, categoryIndex, subcategoryIndex, articlesPerPage, curPage) - Starts a query for articles.
 
:[[API KBQuery_GetArticleHeaderCount|KBQuery_GetArticleHeaderCount]]() - Returns the number of article headers in the current query.
 
:[[API KBQuery_GetArticleHeaderData|KBQuery_GetArticleHeaderData]](index) - Returns information about an article header of the current query.
 
:[[API KBQuery_GetTotalArticleCount|KBQuery_GetTotalArticleCount]]() - Returns the total number of articles that matches the current query.
 
:[[API KBQuery_IsLoaded|KBQuery_IsLoaded]]() - Returns true if a query loaded successfuly.
 
:[[API KBSetup_BeginLoading|KBSetup_BeginLoading]](articlesPerPage, curPage) - Starts the loading process for the KB start page.
 
:[[API KBSetup_GetArticleHeaderCount|KBSetup_GetArticleHeaderCount]]() - Returns the number of articles for the current page.
 
:[[API KBSetup_GetArticleHeaderData|KBSetup_GetArticleHeaderData]](index) - Returns information for an article header.
 
:[[API KBSetup_GetCategoryCount|KBSetup_GetCategoryCount]]() - Returns the number of categories in the knowledge base.
 
:[[API KBSetup_GetCategoryData|KBSetup_GetCategoryData]](index) - Returns information about a category.
 
:[[API KBSetup_GetLanguageCount|KBSetup_GetLanguageCount]]() - Returns the number of languages in the knowledge base.
 
:[[API KBSetup_GetLanguageData|KBSetup_GetLanguageData]](index) - Returns information about a language.
 
:[[API KBSetup_GetSubCategoryCount|KBSetup_GetSubCategoryCount]](category) - Returns the number of subcategories for a category.
 
:[[API KBSetup_GetSubCategoryData|KBSetup_GetSubCategoryData]](category, index) - Returns information about a subcategory.
 
:[[API KBSetup_GetTotalArticleCount|KBSetup_GetTotalArticleCount]]() - Returns the total number of articles in the knowlege base.
 
:[[API KBSetup_IsLoaded|KBSetup_IsLoaded]]() - Returns true if the knowledge base is loaded successfuly.
 
:[[API KBSystem_GetMOTD|KBSystem_GetMOTD]]() - Returns the server message of the day.
 
:[[API KBSystem_GetServerNotice|KBSystem_GetServerNotice]]() - Returns the server notice.
 
:[[API KBSystem_GetServerStatus|KBSystem_GetServerStatus]]() - Returns the server status text.
 
 
=== Location Functions ===
 
These functions are related to the current location of the player and how it is displayed.
 
 
: [[API GetMinimapZoneText|GetMinimapZoneText]]() - Returns the zone text, that is displayed over the minimap.
 
: [[API GetRealZoneText|GetRealZoneText]]() - Returns either instance name or zone name
 
: [[API GetSubZoneText|GetSubZoneText]]() - Returns the subzone text (e.g. "The Canals").
 
: [[API GetZonePVPInfo|GetZonePVPInfo]]() - Returns PVP info for the current zone.
 
: [[API GetZoneText|GetZoneText]]() - Returns the zone text (e.g. "Stormwind City").
 
 
=== Looking For Group Functions===
 
Functions for use in the Looking For Group tool. See also: [[#Dungeon Finder Functions|Dungeon Finder Functions]] and [[#Raid Browser Functions|Raid Browser Functions]]
 
: [[API CompleteLFGRoleCheck|CompleteLFGRoleCheck]](boolean) - boolean = false means declining the roleCheck. The returned boolean seems to indicate that the roleCheck was successful?
 
: [[API GetLFGDeserterExpiration|GetLFGDeserterExpiration]]() - Returns the time at which you may once again use the dungeon finder after prematurely leaving a group. (3.3.3)
 
: [[API GetLFGRandomCooldownExpiration|GetLFGRandomCooldownExpiration]]() - Returns the time at which you may once again queue for a random dungeon. (3.3.3)
 
: [[API GetLFGBootProposal|GetLFGBootProposal]]() - Returns information about an LFG Kick vote in progress.
 
: UI [[API GetLFGMode|GetLFGMode]]() - returns mode, subMode (sometimes empty result)
 
: [[API GetLFGQueueStats|GetLFGQueueStats]]() - returns current state and wait times for being in queue
 
: [[API GetLFGRoles|GetLFGRoles]]() - returns isLeader, isTank, isHealer, isDPS - Returns the roles you signed up as, not the role you were assigned.
 
: [[API GetLFGRoleUpdate|GetLFGRoleUpdate]]() - returns roleCheckInProgress, slots, members
 
: [[API GetLFGRoleUpdateSlot|GetLFGRoleUpdateSlot]](slot) - returns dungeonType, dungeonID for a particular role slot (integer)
 
: [[API SetLFGBootVote|SetLFGBootVote]](boolean) - responds to a vote-kick
 
: [[API SetLFGComment|SetLFGComment]]("comment")
 
: [[API SetLFGRoles|SetLFGRoles]](isLeader, isTank, isHealer, isDPS) - changes the selected roles
 
: [[API UninviteUnit|UninviteUnit]]("name" [, "reason"]) - initiate a kick vote in a LFD group.
 
: [[API UnitGroupRolesAssigned|UnitGroupRolesAssigned]](UnitID) - Return's the targeted unit's assigned role.
 
: [[API UnitHasLFGDeserter|UnitHasLFGDeserter]]("unit") - returns whether the specified unit has recently deserted
 
: [[API UnitHasLFGRandomCooldown|UnitHasLFGRandomCooldown]]("unit") - returns whether the specified unit has recently queued for a random
 
 
=== Loot Functions ===
 
 
Automatic looting behavior is controlled by [[CVar autoLootDefault|autoLootDefalt]] [[CVar]].
 
Automatic looting behavior is controlled by [[CVar autoLootDefault|autoLootDefalt]] [[CVar]].
: [[API CloseLoot|CloseLoot]]([uiFailedFlag])
+
:{{id|API|CloseLoot}}([uiFailedFlag])
: PROTECTED [[API ConfirmBindOnUse|ConfirmBindOnUse]]()
+
:PROTECTED {{id|API|ConfirmBindOnUse}}()
: [[API ConfirmLootRoll|ConfirmLootRoll]](rollId[, roll]) - Confirm a loot roll (NEW IN 1300)
+
:{{id|API|ConfirmLootRoll}}(rollId[, roll]) - Confirm a loot roll (added 1300)
: [[API ConfirmLootSlot|ConfirmLootSlot]](slot) - Confirm looting of a BoP item.
+
:{{id|API|ConfirmLootSlot}}(slot) - Confirm looting of a BoP item.
: [[API GetLootMethod|GetLootMethod]]() - Return the currently active [[lootMethod]]
+
:{{id|API|GetLootMethod}}() - Return the currently active [[lootMethod]]
: [[API GetLootRollItemInfo|GetLootRollItemInfo]](rollId)
+
:{{id|API|GetLootRollItemInfo}}(rollId)
: [[API GetLootRollItemLink|GetLootRollItemLink]](rollId)
+
:{{id|API|GetLootRollItemLink}}(rollId)
: [[API GetLootRollTimeLeft|GetLootRollTimeLeft]](rollid)
+
:{{id|API|GetLootRollTimeLeft}}(rollid)
: [[API GetLootSlotInfo|GetLootSlotInfo]](slot) - Returns icon path, item name, and item quantity for the item in the given loot window slot
+
:{{id|API|GetLootSlotInfo}}(slot) - Returns icon path, item name, and item quantity for the item in the given loot window slot
: [[API GetLootSlotLink|GetLootSlotLink]](slot) - Returns an [[itemLink]] for the item in the given loot window slot
+
:{{id|API|GetLootSlotLink}}(slot) - Returns an [[itemLink]] for the item in the given loot window slot
: [[API GetLootThreshold|GetLootThreshold]]() - Return the current loot threshold (for group/master loot)
+
:{{id|API|GetLootThreshold}}() - Return the current loot threshold (for group/master loot)
: [[API GetMasterLootCandidate|GetMasterLootCandidate]](index) - Return the name of a player who is eligible to receive loot in master mode
+
:{{id|API|GetMasterLootCandidate}}(index) - Return the name of a player who is eligible to receive loot in master mode
: [[API GetNumLootItems|GetNumLootItems]]() - Returns amount of objects to loot (number)
+
:{{id|API|GetNumLootItems}}() - Returns amount of objects to loot (number)
: [[API GetOptOutOfLoot|GetOptOutOfLoot]]() - Return whether the character is currently automatically passing on all loot.
+
:{{id|API|GetOptOutOfLoot}}() - Return whether the character is currently automatically passing on all loot.
: [[API GiveMasterLoot|GiveMasterLoot]](slot,index)
+
:{{id|API|GiveMasterLoot}}(slot,index)
: [[API IsFishingLoot|IsFishingLoot]]()
+
:{{id|API|IsFishingLoot}}()
: [[API LootSlot|LootSlot]](slot) - Used to loot the specified slot.
+
:{{id|API|LootSlot}}(slot) - Used to loot the specified slot.
: [[API LootSlotIsCoin|LootSlotIsCoin]](slot) - Returns 1 if the given loot window slot contains coins (copper, silver, gold)
+
:{{id|API|LootSlotIsCoin}}(slot) - Returns 1 if the given loot window slot contains coins (copper, silver, gold)
: [[API LootSlotIsCurrency|LootSlotIsCurrency]](slot) - Returns 1 if the given loot window slot contains a form of currency (archaeology fragments)
+
:{{id|API|LootSlotIsCurrency}}(slot) - Returns 1 if the given loot window slot contains a form of currency (archaeology fragments)
: [[API LootSlotIsItem|LootSlotIsItem]](slot)
+
:{{id|API|LootSlotIsItem}}(slot)
: [[API RollOnLoot|RollOnLoot]](rollId[, roll]) - Roll or pass on a loot event started by the game engine.
+
:{{id|API|RollOnLoot}}(rollId[, roll]) - Roll or pass on a loot event started by the game engine.
: [[API SetLootMethod|SetLootMethod]]("[[lootMethod]]"[, "masterPlayer" or threshold]) - Set the current loot method.
+
:{{id|API|SetLootMethod}}("[[lootMethod]]"[, "masterPlayer" or threshold]) - Set the current loot method.
: [[API SetLootPortrait|SetLootPortrait]]()
+
:{{id|API|SetLootPortrait}}()
: [[API SetLootThreshold|SetLootThreshold]]([[itemQuality]]) - Set the threshold for group/master loot.
+
:{{id|API|SetLootThreshold}}([[itemQuality]]) - Set the threshold for group/master loot.
: [[API SetOptOutOfLoot|SetOptOutOfLoot]](optOut) - Enables or disables automatic passing on all loot.
+
:{{id|API|SetOptOutOfLoot}}(optOut) - Enables or disables automatic passing on all loot.
 
=== Macro Functions ===
 
: NOCOMBAT (2.0) [[API CreateMacro|CreateMacro]]("name", icon, "body", perCharacter, isLocal) - Create a new macro.
 
: [[API CursorHasMacro|CursorHasMacro]]() - Returns 1 if the cursor is currently dragging a macro. (New: 2.0.3)
 
: [[API DeleteMacro|DeleteMacro]](id or "name") - Deletes a macro.
 
: NOCOMBAT (2.0) [[API EditMacro|EditMacro]](index, "name", iconIndex, "body", isLocal, perCharacter) - Saves a macro.
 
: [[API GetMacroBody|GetMacroBody]](id or "name") - Returns the body (macro text) of a macro.
 
: [[API GetMacroIconInfo|GetMacroIconInfo]](index) - Returns texture of the icons provided by Blizzard.
 
: [[API GetMacroItemIconInfo|GetMacroItemIconInfo]](index) - Returns texture of the item icons provided by Blizzard
 
: [[API GetMacroIndexByName|GetMacroIndexByName]]("name") - Returns macro index.
 
: [[API GetMacroInfo|GetMacroInfo]](id or "name") - Returns "name", "iconTexture", "body", isLocal.
 
: [[API GetNumMacroIcons|GetNumMacroIcons]]() - Returns the number of usable icons provided by Blizzard.
 
: [[API GetNumMacroItemIcons|GetNumMacroItemIcons]]() - Returns the number of usable item icons provided by Blizzard.
 
: [[API GetNumMacros|GetNumMacros]]() - Returns the number of macros the user has.
 
: [[API PickupMacro|PickupMacro]](id or "name") - Pickup a macro button icon.
 
: PROTECTED [[API RunMacro|RunMacro]](id or "name") - Runs a macro.
 
: PROTECTED [[API RunMacroText|RunMacroText]]("macro") - Interpret the given string as a macro and run it.
 
: [[API SecureCmdOptionParse|SecureCmdOptionParse]]("command") - Used for evaluating conditionals in macros, returning the appropriate choice.
 
: PROTECTED [[API StopMacro|StopMacro]]() - Stops the currently executing macro.
 
   
=== Mail Functions ===
+
=== Macro ===
[[Events/Mail|Events associated with Mail.]]
+
: NOCOMBAT {{id|API|CreateMacro}}("name", icon, "body", perCharacter, isLocal) - Create a new macro. (nocombat 2.0)
  +
:{{id|API|CursorHasMacro}}() - Returns 1 if the cursor is currently dragging a macro. (added 2.0.3)
  +
:{{id|API|DeleteMacro}}(id or "name") - Deletes a macro.
  +
: NOCOMBAT {{id|API|EditMacro}}(index, "name", iconIndex, "body", isLocal, perCharacter) - Saves a macro. (nocombat 2.0)
  +
:{{id|API|GetMacroBody}}(id or "name") - Returns the body (macro text) of a macro.
  +
:{{id|API|GetMacroIconInfo}}(index) - Returns texture of the icons provided by Blizzard.
  +
:{{id|API|GetMacroItemIconInfo}}(index) - Returns texture of the item icons provided by Blizzard
  +
:{{id|API|GetMacroIndexByName}}("name") - Returns macro index.
  +
:{{id|API|GetMacroInfo}}(id or "name") - Returns "name", "iconTexture", "body", isLocal.
  +
:{{id|API|GetNumMacroIcons}}() - Returns the number of usable icons provided by Blizzard.
  +
:{{id|API|GetNumMacroItemIcons}}() - Returns the number of usable item icons provided by Blizzard.
  +
:{{id|API|GetNumMacros}}() - Returns the number of macros the user has.
  +
:{{id|API|PickupMacro}}(id or "name") - Pickup a macro button icon.
  +
:PROTECTED {{id|API|RunMacro}}(id or "name") - Runs a macro.
  +
:PROTECTED {{id|API|RunMacroText}}("macro") - Interpret the given string as a macro and run it.
  +
:{{id|API|SecureCmdOptionParse}}("command") - Used for evaluating conditionals in macros, returning the appropriate choice.
  +
:PROTECTED {{id|API|StopMacro}}() - Stops the currently executing macro.
   
: [[API AutoLootMailItem|AutoLootMailItem]](index) - Loot all items from mail message.
+
=== Mail ===
: [[API CheckInbox|CheckInbox]]() - Populate client's inbox with mail from server.
+
See also [[Events/Mail|Events associated with Mail]].
: [[API ClearSendMail|ClearSendMail]]() - This clears the text in the send mail tab and places the COD item in the inventory.
+
:{{id|API|AutoLootMailItem}}(index) - Loot all items from mail message.
: [[API ClickSendMailItemButton|ClickSendMailItemButton]]([itemIndex, [clearItem]]) - Places or picks up an item from the send mail frame.
+
:{{id|API|CheckInbox}}() - Populate client's inbox with mail from server.
: [[API CloseMail|CloseMail]]() - Closes the mail window.
+
:{{id|API|ClearSendMail}}() - This clears the text in the send mail tab and places the COD item in the inventory.
: [[API DeleteInboxItem|DeleteInboxItem]](index) - Deletes the inbox item at index. It returns immediately, it does not seem to wait for the deletion to go through, giving the normal problems with rapid mail removal attempts.
+
:{{id|API|ClickSendMailItemButton}}([itemIndex, [clearItem]]) - Places or picks up an item from the send mail frame.
: [[API DropCursorMoney|DropCursorMoney]] - Drops the amount of money held by the cursor.
+
:{{id|API|CloseMail}}() - Closes the mail window.
: [[API GetCoinIcon|GetCoinIcon]](amount)
+
:{{id|API|DeleteInboxItem}}(index) - Deletes the inbox item at index. It returns immediately, it does not seem to wait for the deletion to go through, giving the normal problems with rapid mail removal attempts.
: [[API GetInboxHeaderInfo|GetInboxHeaderInfo]](index) - Returns information about a message in the inbox.
+
:{{id|API|DropCursorMoney}} - Drops the amount of money held by the cursor.
: [[API GetInboxItem|GetInboxItem]](index, itemIndex) - Returns description of the attachment attached to message at (index).
+
:{{id|API|GetCoinIcon}}(amount)
: [[API GetInboxItemLink|GetInboxItemLink]](index, itemIndex) - Returns link of the attachment attached to message at (index).
+
:{{id|API|GetInboxHeaderInfo}}(index) - Returns information about a message in the inbox.
: [[API GetInboxNumItems|GetInboxNumItems]]() - Returns the number of messages in your inbox.
+
:{{id|API|GetInboxItem}}(index, itemIndex) - Returns description of the attachment attached to message at (index).
: [[API GetInboxText|GetInboxText]](index) - Returns the message text of message at (index).
+
:{{id|API|GetInboxItemLink}}(index, itemIndex) - Returns link of the attachment attached to message at (index).
: [[API GetInboxInvoiceInfo|GetInboxInvoiceInfo]](index) - Returns informations about an auction house invoice.
+
:{{id|API|GetInboxNumItems}}() - Returns the number of messages in your inbox.
: [[API GetLatestThreeSenders|GetLatestThreeSenders]] - Returns the senders of the most recent unread mail.
+
:{{id|API|GetInboxText}}(index) - Returns the message text of message at (index).
: [[API GetNumPackages|GetNumPackages]]() - Not yet fully implemented. Currently it always returns 1.
+
:{{id|API|GetInboxInvoiceInfo}}(index) - Returns informations about an auction house invoice.
: [[API GetNumStationeries|GetNumStationeries]]() - Not yet fully implemented. Currently it always returns 1.
+
:{{id|API|GetLatestThreeSenders}} - Returns the senders of the most recent unread mail.
: [[API GetPackageInfo|GetPackageInfo]](index) - Not yet fully implemented. Currently an index of 1 returns "Test Package".
+
:{{id|API|GetNumPackages}}() - Not yet fully implemented. Currently it always returns 1.
: [[API GetSelectedStationeryTexture|GetSelectedStationeryTexture]]() - Not yet fully implemented. Currently it returns "STATIONERYTEST" when the mailbox is open.
+
:{{id|API|GetNumStationeries}}() - Not yet fully implemented. Currently it always returns 1.
: [[API GetSendMailCOD|GetSendMailCOD]]() - determine amount of gold entered in COD box in mail frame when mail is sent
+
:{{id|API|GetPackageInfo}}(index) - Not yet fully implemented. Currently an index of 1 returns "Test Package".
: [[API GetSendMailItem|GetSendMailItem]](index) - Get information about an item attached on the send mail frame.
+
:{{id|API|GetSelectedStationeryTexture}}() - Not yet fully implemented. Currently it returns "STATIONERYTEST" when the mailbox is open.
: [[API GetSendMailItemLink|GetSendMailItemLink]](index) - Get link for an item attached on the send mail frame.
+
:{{id|API|GetSendMailCOD}}() - determine amount of gold entered in COD box in mail frame when mail is sent
: [[API GetSendMailMoney|GetSendMailMoney]]() - ?.
+
:{{id|API|GetSendMailItem}}(index) - Get information about an item attached on the send mail frame.
: [[API GetSendMailPrice|GetSendMailPrice]]() - Gets the cost for sending mail.
+
:{{id|API|GetSendMailItemLink}}(index) - Get link for an item attached on the send mail frame.
: [[API GetStationeryInfo|GetStationeryInfo]](index) - Not yet fully implemented. Currently an index of 1 returns "Default Stationery".
+
:{{id|API|GetSendMailMoney}}()
: [[API HasNewMail|HasNewMail]]() - Returns nil if there is no new mail.
+
:{{id|API|GetSendMailPrice}}() - Gets the cost for sending mail.
: [[API InboxItemCanDelete|InboxItemCanDelete]](index) - Boolean check for whether a message is returnable to the sender.
+
:{{id|API|GetStationeryInfo}}(index) - Not yet fully implemented. Currently an index of 1 returns "Default Stationery".
: [[API ReturnInboxItem|ReturnInboxItem]](index) - Returns to the sender the attached item in the mail message at the specified index.
+
:{{id|API|HasNewMail}}() - Returns nil if there is no new mail.
: [[API SelectPackage|SelectPackage]](index) - Not yet fully implemented. It does nothing visible.
+
:{{id|API|InboxItemCanDelete}}(index) - Boolean check for whether a message is returnable to the sender.
: [[API SelectStationery|SelectStationery]](index) - Not yet fully implemented. It does nothing visible.
+
:{{id|API|ReturnInboxItem}}(index) - Returns to the sender the attached item in the mail message at the specified index.
: [[API SendMail|SendMail]]("target", "subject", "body") - If the mailbox is open, this sends mail.
+
:{{id|API|SelectPackage}}(index) - Not yet fully implemented. It does nothing vi