World of Warcraft API

From Wowpedia
(Redirected from Api)
Jump to: navigation, search

Contents

The World of Warcraft API, or WoW API, is a set of functions provided by Blizzard to interact with and modify the World of Warcraft interface and behavior through the use of addons and macros. The list of functions below is incomplete and kept up to date by user contributions; you may also be interested in an automatically-generated exhaustive list of all API functions present in the latest live client.

If you're considering contributing documentation, please read How to edit API pages. In summary: update this page (and the linked pages) as needed, discuss any large-scale changes on the Discussion page, and do not create empty stub pages.

Function names in this list are prefixed with the following tags:

  • PROTECTED - This function can only be called from secure code. See the Protected Functions category.
  • NOCOMBAT - This function cannot be called from insecure code while in combat.
  • HW - This function may only be called in response to a hardware event (from OnClick handlers).
  • UI - This function is implemented in Lua (in FrameXML) but was considered important enough to appear here.
  • REMOVED - This function has been removed from the World of Warcraft API (and will be removed from this list in around a month). For historical purposes, see the Removed Functions category.

Global Function Groups

Account Functions

GetAccountExpansionLevel() - Returns the highest expansion id the current account has been flagged for.
GetBillingTimeRested() - Returns the account rested time left. This function is to limit Chinese players from playing the game for too long.
IsTrialAccount() - Returns whether the player is using a trial (free-to-play) account.
NoPlayTime() - Returns whether the account is considered "unhealthy". This function is to limit Chinese players from playing the game for too long.
PartialPlayTime() - Returns whether the account is considered "tired". This function is to limit Chinese players from playing the game for too long.

Achievement Functions

These functions were introduced in Patch 3.0.

AddTrackedAchievement(achievementId) - Add an achievement to tracking.
CanShowAchievementUI() - Returns if the AchievementUI can be displayed
ClearAchievementComparisonUnit() - Remove the unit being compared.
GetAchievementCategory(achievementID) - Return the category number the requested achievement belongs to.
GetAchievementComparisonInfo(achievementID) - Return information about the comparison unit's achievements.
GetAchievementCriteriaInfo(achievementID, criteriaNum) - Return information about the requested criteria.
GetAchievementInfo((achievementID) or (category, offset) - Return information about the requested achievement.
GetAchievementLink(achievementID) - Returns a achievementLink for the specified achievement.
GetAchievementNumCriteria(achievementID) - Return the number of criteria the requested achievement has.
GetAchievementNumRewards(achievementID) - Return the number of rewards the requested achievement has.
GetCategoryInfo(category) - Return information about the requested category
GetCategoryList() - Returns the list of achievement categories.
GetCategoryNumAchievements(category[, includeAll) - Return the number of achievements, and number completed and incompleted for the specific category.
GetComparisonAchievementPoints() - Return the total number of achievement points the comparison unit has earned.
GetComparisonCategoryNumAchievements(achievementID)) - Return a number of achievements in a category for the comparison player.
GetComparisonStatistic(achievementID) - Return the value of the requested statistic for the comparison player.
GetLatestCompletedAchievements() - Return the ID's of the last 5 completed Achievements.
GetLatestCompletedComparisonAchievements()) - Return a list of the latest updated achievements for the comparison player.
GetLatestUpdatedComparisonStats() - Return a list of the latest updated statistics for the comparison player.
GetLatestUpdatedStats() - Return the ID's of the last 5 updated Statistics.
GetNextAchievement(achievementID) - Return the next achievement in a chain.
GetNumComparisonCompletedAchievements() - Return the number of completed achievements for the comparison player.
GetNumCompletedAchievements() - Return the total number of achievements, and number completed.
GetPreviousAchievement(achievementID) - Return previous related achievements.
GetStatistic(achievementID) - Return the value of the requested statistic.
GetStatisticsCategoryList() - Returns the list of statistic categories.
GetTotalAchievementPoints() - Return the total number of achievement points earned.
GetTrackedAchievements() - Return the achievementID of the currently tracked achievements
GetNumTrackedAchievements() - Return the total number of the currently tracked achievements
RemoveTrackedAchievement(achievementID) - Stops an achievement from being tracked
SetAchievementComparisonUnit(unitId) - Set the unit to be compared to.

Action Functions

These functions are those which operate with the action buttons (General player actions are likely in the Activity Functions section below).

PROTECTED UI ActionButtonDown(id) - Press the specified action button. (2.0 Protected)
PROTECTED UI ActionButtonUp(id) - Release the specified action button. (2.0 Protected)
ActionHasRange(slot) - Determine if the specified action is a range restriction (1 if yes, nil if no)
PROTECTED CameraOrSelectOrMoveStart() - Begin "Left click" in the 3D world. (1.10 - Protected)
PROTECTED CameraOrSelectOrMoveStop([stickyFlag]) - End "Left click" in the 3D world. (1.10 - Protected)
NOCOMBAT ChangeActionBarPage(page) - Changes the current action bar page.
GetActionBarPage() - Return the current action bar page. CURRENT_ACTIONBAR_PAGE is obsolete.
GetActionBarToggles() - Return the toggles for each action bar.
GetActionCooldown(slot) - This returns the cooldown values of the specified action..
GetActionCount(slot) - Get the count (bandage/potion/etc) for an action, returns 0 if none or not applicable.
GetActionInfo(slot) - Returns type, id, subtype.
GetActionText(slot) - Get the text label (macros, etc) for an action, returns nil if none.
GetActionTexture(slot) - Gets the texture path for the specified action.
GetBonusBarOffset() - Determine which page of bonus actions to show.
GetMouseButtonClicked() -Returns the name of the button that triggered a mouse down/up/click/doubleclick event. (added in 2.0.3)
GetPossessInfo(index) - Returns texture, name, enabled.
HasAction(slot) - Returns 1 if the player has an action in the specified slot, nil otherwise.
IsActionInRange(slot) - Test if an action is in range (1=yes, 0=no, nil=not applicable).
IsAttackAction(slot) - Return 1 if an action is an 'attack' action (flashes during combat), nil otherwise.
IsAutoRepeatAction(slot) - Return 1 if an action is auto-repeating, nil otherwise.
IsCurrentAction(slot) - Return 1 if an action is the one currently underway, nil otherwise.
IsConsumableAction(slot) - Return 1 if an action is consumable (i.e. has a count), nil otherwise.
IsEquippedAction(slot) - Return 1 if an action is equipped (i.e. connected to an item that must be equipped), nil otherwise.
IsUsableAction(slot) - Return 1 if an action can be used at present, nil otherwise.
PetHasActionBar() - Determine if player has a pet with an action bar.
NOCOMBAT PickupAction(slot) - Drags an action out of the specified quickbar slot and holds it on the cursor.
NOCOMBAT PickupPetAction(slot) - Drags an action from the specified pet action bar slot into the cursor.
PlaceAction(slot) - Drops an action from the cursor into the specified quickbar slot.
SetActionBarToggles(show1,show2,show3,show4[, alwaysShow]) - Set show toggle for each action bar - 'alwaysShow' added in 1.12
StopAttack() - Turns off auto-attack, if currently active. Has no effect is the player does not currently have auto-attack active.
PROTECTED TurnOrActionStart() - Begin "Right Click" in the 3D world. (1.10 - Protected)
PROTECTED TurnOrActionStop() - End "Right Click" in the 3D world. (1.10 - Protected)
PROTECTED 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

This section is for functions which make the player do something (and which aren't covered elsewhere, and which aren't simply confirmation steps)

AcceptDuel() - The player accepts the challenge to duel.
PROTECTED AttackTarget() - Attacks the targetted unit.
CancelDuel() - Refuse the invitation to fight a duel.
CancelLogout() - Cancels the logout timer (from camping or quitting).
CancelSummon() - Rejects a summon request.
ConfirmSummon() - Accepts a summon request.
PROTECTED DescendStop() - The player stops descending (while swimming or flying)
Dismount() - The player dismounts the current mount.
ForceQuit() - Instantly quits the game, bypassing the timer.
GetSheathState() - Returns the sheath state of the player's weapons.
GetPVPTimer() - Returns the amount of time until your PvP flag fades.
GetSummonConfirmAreaName() - Returns the name of the area you're being summoned to.
GetSummonConfirmSummoner() - Returns the name of the player summoning you.
GetSummonConfirmTimeLeft() - Returns the amount of time left before the pending summon expires.
Logout - Logs the user out of the game.
Quit - Quits the game, not the Lua script.
RandomRoll(low, high) - Does a random roll between the two values.
SetPVP(arg1) - Sets the players PVP mode (1 to enable, nil to toggle off eventually)
PROTECTED SitStandOrDescendStart() - The player sits, stands, or descends.
StartDuel("name") - Challenge someone to a duel (by name)
TogglePVP() - Toggles PVP status
ToggleSheath() - Toggles sheathed or unsheathed weapons.
UseSoulstone() - Use an active soulstone to resurrect yourself after death. Also works for Shamans with Reincarnation available.

AddOn Functions

DisableAddOn(index or "AddOnName") - Disable the specified AddOn for subsequent sessions.
DisableAllAddOns() - Disable all AddOns for subsequent sessions.
EnableAddOn(index or "AddOnName") - Enable the specified AddOn for subsequent sessions.
EnableAllAddOns() - Enable all AddOns for subsequent sessions.
GetAddOnDependencies(index or "AddOnName") - Get dependency list for an AddOn.
GetAddOnInfo(index or "AddOnName") - Get information about an AddOn.
GetAddOnMetadata(index or "name", "variable") - Retrieve metadata from addon's TOC file.
GetNumAddOns() - Get the number of user supplied AddOns.
IsAddOnLoaded(index or "AddOnName") - Returns true if the specified AddOn is loaded.
IsAddOnLoadOnDemand(index or "AddOnName") - Test whether an AddOn is load-on-demand.
LoadAddOn(index or "AddOnName") - Request loading of a Load-On-Demand AddOn.
ResetDisabledAddOns() -

Archaeology Functions

These functions are only available in Patch 4.0.

ArchaeologyMapUpdateAll() Updates the digsites and returns the number of digsites in the current map-zone
ArchaeologyGetIconInfo(index)
ArcheologyGetVisibleBlobID(index) Returns BlobID of a digsite in the current map-zone
CanItemBeSocketedToArtifact(itemID) - Returns 1 if item could be added to the selected artifact.
GetActiveArtifactByRace(raceIndex) - Returns the information for the active artifact of raceIndex.
GetArchaeologyInfo() - Returns localized name of Archaeology skill.
GetArchaeologyRaceInfo(raceIndex) - Returns the information for a specific race used in Archaeology.
GetArtifactInfoByRace(raceIndex,artifactIndex) - Returns the information for a specific race's artifact.
GetNumArchaeologyRaces() - Returns the amount of Archaeology races in the game.
GetNumArtifactsByRace(raceIndex) - Returns the amount of artifacts the player has acquired from the provided race.
GetSelectedArtifactInfo() - Returns the information for the selected race.
GetArtifactProgress() - Returns fragment-information about the selected artifact.
IsArtifactCompletionHistoryAvailable()
SetSelectedArtifact(raceIndex) - Sets the selected artifact to raceIndex.
RemoveItemFromArtifact() - Remove a keystone from the selected artifact.
RequestArtifactCompletionHistory()
SocketItemToArtifact() - Add a keystone to the selected artifact.
SolveArtifact() - Solve the selected artifact.

Arena Functions

GetBattlefieldTeamInfo(index) - Gets info about a registered Arena Team at the end of an arena match.
GetCurrentArenaSeason() - Gets the current Arena season.
GetPreviousArenaSeason() - Gets the previous Arena season.
IsActiveBattlefieldArena() - Returns true if in an Arena Match, also Returns true for the second argument if it's a registered match.
IsArenaTeamCaptain(teamIndex) - Returns a value based on whether the player is the arena team captain.
IsInArenaTeam() - Returns true if you are a member of an arena team.

Auction Functions

CalculateAuctionDeposit(runTime, stackSize, numStacks) - Returns the required deposit for the current selling item given the specified duration (1=12h, 2=24h, 3=48h).
CanCancelAuction(index) - Returns 1 if auction can be canceled.
CancelSell() - Clears the auction house listing queue, not creating any additional auctions. (3.3.3)
CanSendAuctionQuery() - Return 1 if auction search button would be active, nil otherwise.
CancelAuction(index) - Cancel the specified auction (on the "owner" list).
ClickAuctionSellItemButton() - Puts the currently 'picked up' item into the 'create auction' slot.
CloseAuctionHouse() - Will close the AuctionFrame if opened.
GetAuctionHouseDepositRate() - Returns the deposit rate (percentage) for the currently open auction house (Possibly out-dated by CalculateAuctionDeposit).
GetAuctionInvTypes(classIndex, subclassIndex) - Returns types of subcategories items.
GetAuctionItemBattlePetInfo("type", index) - Returns model details about the specified Battle Pet auction item.
GetAuctionItemClasses() - Returns major auction item categories.
GetAuctionItemInfo("type", index) - Returns details about the specified auction item.
GetAuctionItemLink("type", index) - Returns an itemLink for the specified auction item.
GetAuctionItemSubClasses(classIndex) - Returns subcategories in the nth auction category.
GetAuctionItemTimeLeft("type", index) - Returns the time left status of the specified auction item.
GetAuctionSellItemInfo() - Returns information about the current selling item (or nil if none selected).
GetBidderAuctionItems([page]) - Returns details about an auction item on which the user is bidding (possibly out-dated by GetAuctionItemInfo("bidder", item))
GetNumAuctionItems("type") - Returns the size of the specified auction item list.
GetOwnerAuctionItems([page]) - Returns details about an auction item of which the user is the owner (possibly out-dated by GetAuctionItemInfo("owner", item))
GetSelectedAuctionItem("type") - Returns the index (1-50) of the selected auction item or 0 if none is selected.
IsAuctionSortReversed("type", "sort") - Returns 1 if the specified auction list and sort is reversed, nil otherwise.
PlaceAuctionBid("type", index, bid) - Place a bid on the selected auction item.
QueryAuctionItems("name", minLevel, maxLevel, invTypeIndex, classIndex, subclassIndex, page, isUsable, qualityIndex) - Performs a search of the auction house with the specified characteristics.
SetAuctionsTabShowing(showing) - Sets whether auction-related events should be delivered to the client. (3.3.3)
SetSelectedAuctionItem("type", index) - Selects a specific item in the auction house.
SortAuctionItems("type", "sort") - Request that the specified auction list be sorted by a specific column.
StartAuction(minBid, buyoutPrice, runTime, stackSize, numStacks) - Starts the auction you have created in the Create Auction panel.

Bank Functions

BankButtonIDToInvSlotID(buttonID, isBag) - Returns the ID number of a bank button or bag in terms of inventory slot ID.
CloseBankFrame() - Close the bank frame if it's open.
GetBankSlotCost(numSlots) - Returns the cost of the next bank slot.
GetNumBankSlots() - Returns total purchased bank bag slots, and a flag indicating if it's full.
PurchaseSlot() - Buys another bank slot if available.

Barber Shop Functions

These functions were introduced in Patch 3.0.2.

ApplyBarberShopStyle() - Purchase and apply the cosmetic changes.
BarberShopReset() - Reset any changes made in the Barber Shop.
CancelBarberShop() - Exit the Barber Shop chair.
GetBarberShopStyleInfo(id) - Returns information about the currently selected style.
GetBarberShopTotalCost() - Returns the total costs of the cosmetic changes.
GetFacialHairCustomization() - Returns the type of facial hair customization available to the character.
GetHairCustomization() - Returns the type of haircut customization available to the character.
SetNextBarberShopStyle(id[, reverse]) - Alters style selection in a particular category.

Battlefield Functions

AcceptAreaSpiritHeal() - Accept a spirit heal.
AcceptBattlefieldPort(index[, acceptFlag]) - Accept or reject an offered battlefield port.
CancelAreaSpiritHeal() - Cancel a spirit heal.
CanJoinBattlefieldAsGroup() - returns nil if the player can not do a group join for a battlefield.
CheckSpiritHealerDist() - Return true if you are in range with spirit healer while dead.
GetAreaSpiritHealerTime() - Returns the time left until the next resurrection by the Sprit Guide.
GetBattlefieldEstimatedWaitTime(index) - Get the estimated wait for entry into the battlefield.
GetBattlefieldFlagPosition(index) - Get the map position and texture of the flag.
GetBattlefieldInstanceExpiration() - Get shutdown timer for the battlefield instance.
GetBattlefieldInstanceRunTime() - In milliseconds, the time since battleground started (seems to be queried from server because it is not in sync with time()).
GetBattlefieldMapIconScale() - Scale of the landmark icons on the battlefield minimap.
GetBattlefieldPortExpiration(index) - Get the remaining seconds before the battlefield port expires.
GetBattlefieldScore(index) - Get score information about a player.
GetBattlefieldStatData(playerIndex, slotIndex) - Get information for a player from a column thats specific to a battleground (like Warsong Gulch flag captures).
GetBattlefieldStatInfo(index) - Get the battleground specific column for the score board.
GetBattlefieldStatus(index) - Get the battlefield's current status.
GetBattlefieldTimeWaited(index) - Get time waited in queue in milliseconds.
GetBattlefieldWinner() - Get the battlefields winner.
GetBattlegroundInfo() - Returns information about a battleground type.
GetMaxBattlefieldID() - Returns the max number of battlefields you can queue for.
GetNumBattlefieldFlagPositions() - Get the number of flag positions available from GetBattlefieldFlagPosition().
GetNumBattlefieldScores() - Returns the number of scores(players) listed in the battlefield scoreboard.
GetNumBattlefieldStats() - Get the number of battleground specific columns.
GetNumWorldStateUI() - Get the number of WorldState UI's.
GetWorldStateUIInfo(i) - Get score and flag status within a battlefield.
IsPVPTimerRunning()
PROTECTED JoinBattlefield(index[, joinAs]) - Queue for a battleground either solo or as a group.
LeaveBattlefield() - Leave the current battlefield
ReportPlayerIsPVPAFK("unit") - Reports the specified player as AFK in a battleground.
RequestBattlefieldScoreData() - Request new data for GetBattlefieldScore().
RequestBattlegroundInstanceInfo(index) - Requests data about the available instances of a battleground.
SetBattlefieldScoreFaction([faction]) - Set the faction to show on the battlefield scoreboard.

Binding Functions

GetBinding(index) - Get action and key bindings for that index.
GetBindingAction("KEY" [,checkOverride]) - Get the action bound to that key.
GetBindingKey("command") - Get the key(s) bound to that action.
UI GetBindingText("key", "prefix", returnAbbr) - Gets the string value for the key.
GetCurrentBindingSet() - Queries if current set of key bindings is character or account specific
GetNumBindings() - Get total number key bindings and headers.
LoadBindings(which) - Loads default, account or character specific key binding set into memory from disk.
RunBinding("command"[, "up"]) - Executes the key binding named "command"
SaveBindings(which) - Saves account or character specific key bindings from memory to disk.
NOCOMBAT SetBinding("key"[, "command"[, mode]]) - Sets or unsets key bindings. (2.0 - Can not be used in combat.)
NOCOMBAT SetBindingSpell("KEY", "Spell Name") - Set a key binding directly to a spell, uses the same spell name syntax as /cast.
NOCOMBAT 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.
NOCOMBAT SetBindingItem("KEY", "itemname") -
NOCOMBAT SetBindingMacro("KEY", "macroname"|macroid) -
SetConsoleKey("key") - Sets the console key (normally ~ ).
NOCOMBAT SetOverrideBinding(owner, isPriority, "KEY" [,"COMMAND"]) - Set (or clear) an override key binding.
NOCOMBAT SetOverrideBindingSpell(owner, isPriority, "KEY", "spellname") -
NOCOMBAT SetOverrideBindingClick(owner, isPriority, "key", "buttonName" [, "mouseClick"]) - Sets an override binding that acts like a mouse click on a button.
NOCOMBAT SetOverrideBindingItem(owner, isPriority, "KEY", "itemname") -
NOCOMBAT SetOverrideBindingMacro(owner, isPriority, "KEY", "macroname"|macroid) -
NOCOMBAT ClearOverrideBindings(owner) - Reset all overrides belonging to an owner.
SetMouselookOverrideBinding("KEY" [,"COMMAND"]) -
IsModifierKeyDown() - equivalent to (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown()).
IsModifiedClick("action") - Returns 1 if the keys for the specified action are down, nil otherwise.
IsMouseButtonDown([button or "button"]) -

Buff/Debuff Functions

NOCOMBAT CancelUnitBuff("unit", index or "spell" [,"filter" or "rank"]) - Removes a specific buff from the player.
PROTECTED CancelShapeshiftForm() - Cancels a druid's shapeshift form buff.
PROTECTED CancelItemTempEnchantment(weaponHand) - Cancels a temporary weapon enchant on weaponHand (1 for Main hand, 2 for Off hand).
GetWeaponEnchantInfo() - Return information about main and offhand weapon enchantments.
UnitAura("unit", index or "buffName" [,filter]) - Returns information about a buff/debuff of a certain unit.
UnitBuff("unit", index or "buffName" [,castable]) - Retrieves info about a buff of a certain unit.
UnitDebuff("unit", index or "buffName" [,removable]) - Retrieves info about a debuff of a certain unit.

Calendar Functions

HW CalendarAddEvent() - Saves the selected event (new events only, requires hardware input to call)
CalendarCanAddEvent() - Returns true if player can add an event
CalendarCanSendInvite() - Returns true if player can send invites
CalendarCloseEvent() - Closes the selected event without saving it
CalendarContextDeselectEvent() - added in 3.0.8
CalendarContextEventCanComplain(monthOffset, day, eventIndex) - Returns true if player can report the event as spam
CalendarContextEventCanEdit(monthOffset, day, eventIndex) - Returns true if player can edit the event
CalendarContextEventClipboard()
CalendarContextEventComplain(monthOffset, day, eventIndex) - Reports the event as spam
CalendarContextEventCopy(monthOffset, day, eventIndex) - Copies the event to the clipboard
CalendarContextEventGetCalendarType() - ?
CalendarContextEventPaste(monthOffset, day) - Pastes the clipboard event to the date
CalendarContextEventRemove(monthOffset, day, eventIndex) - Deletes the event
CalendarContextEventSignUp() - ?
CalendarContextGetEventIndex() - added in 3.0.8
CalendarContextInviteAvailable(monthOffset, day, eventIndex) - Accepts the invitation to the event
CalendarContextInviteDecline(monthOffset, day, eventIndex) - Declines the invitation to the event
CalendarContextInviteIsPending(monthOffset, day, eventIndex) - Returns true if the player hasn't responded to the event invite
CalendarContextInviteTentative() - ?
CalendarContextInviteType - ?
CalendarContextInviteModeratorStatus(monthOffset, day, eventIndex) - ?
CalendarContextInviteRemove(monthOffset, day, eventIndex) - Removes the event from the calendar
CalendarContextInviteStatus(monthOffset, day, eventIndex) - returns inviteStatus
CalendarContextSelectEvent(monthOffset, day, eventIndex) - added in 3.0.8
CalendarDefaultGuildFilter() - returns minLevel, maxLevel
CalendarEventAvailable() - Accepts the inviation to the currently open event
CalendarEventCanEdit() - Returns true if the event can be edited
CalendarEventCanModerate - ?
CalendarEventClearAutoApprove() - Turns off automatic confirmations
CalendarEventClearLocked() - Unlocks the event
CalendarEventClearModerator()
CalendarEventDecline() - Declines the invitation to the currently open event
CalendarEventGetCalendarType() - ?
CalendarEventGetInvite(inviteeIndex) - Returns status information for an invitee for the currently opened event
CalendarEventGetInviteResponseTime(inviteIndex) - ?
CalendarEventGetInviteSortCriterion() - returns criterion, reverse
CalendarEventGetNumInvites() - Returns the number of invitees for the currently opened event
CalendarEventGetRepeatOptions() - Returns opt1, opt2
CalendarEventGetSelectedInvite() - returns inviteIndex
CalendarEventGetStatusOptions() - Returns ??
CalendarEventGetTextures(eventType) - Returns title1, tex1, expLvl1, title2, tex2, expLvl2, ...
CalendarEventGetTypes() - Returns name1, name2, ...
CalendarEventHasPendingInvite() - Returns true if the player has an unanswered invitation to the currently selected event
CalendarEventHaveSettingsChanged() - Returns true if the currently open event has been modified
CalendarEventInvite("Player") - Invite player to currently selected event
CalendarEventIsModerator() - ?
CalendarEventRemoveInvite(inviteIndex)
CalendarEventSelectInvite(inviteIndex)
CalendarEventSetAutoApprove()
CalendarEventSetDate(month, day, year)
CalendarEventSetDescription(description)
CalendarEventSetLocked()
CalendarEventSetLockoutDate(lockoutDate) - ??
CalendarEventSetLockoutTime(lockoutTime) - ??
CalendarEventSetModerator(index)
CalendarEventSetRepeatOption(repeatoption)
CalendarEventSetSize - ??
CalendarEventSetStatus(index, status) - Sets the invitation status of a player to the current event
CalendarEventSetTextureID(textureIndex)
CalendarEventSetTime(hour, minute)
CalendarEventSetTitle(title)
CalendarEventSetType(type)
CalendarEventSignUp() - ?
CalendarEventSortInvites(criterion)
CalendarEventTentative() - ?
CalendarGetAbsMonth() - returns month, year
CalendarGetDate() - Call this only after PLAYER_ENTERING_WORLD event
CalendarGetDayEvent(monthOffset, day, eventIndex)
CalendarGetDayEventSequenceInfo - Retrieve information about the specified event.
CalendarGetEventIndex() - returns monthOffset, day, index
CalendarGetEventInfo() - Returns detailed information about an event selected with CalendarOpenEvent()
CalendarGetFirstPendingInvite(monthOffset, day) - returns eventIndex
CalendarGetHolidayInfo(monthOffset, day, eventIndex) - Returns Holiday Name, Holiday Description, Calendar Icon
CalendarGetMaxCreateDate() - returns maxWeekday, maxMonth, maxDay, maxYear
CalendarGetMaxDate() - returns maxWeekday, maxMonth, maxDay, maxYear
CalendarGetMinDate() - returns minWeekday, minMonth, minDay, minYear
CalendarGetMinHistoryDate() - returns minWeekday, minMonth, minDay, minYear
CalendarGetMonth([monthOffset]) - returns month, year
CalendarGetMonthNames() - returns a list of the month names
CalendarGetNumDayEvents(monthOffset[, day])
CalendarGetNumPendingInvites() - returns count
CalendarGetRaidInfo (monthOffset, day, eventIndex) - returns name, calendarType, raidID, hour, minute, difficulty
CalendarGetWeekdayNames() - returns a list of the weekday names
CalendarIsActionPending() - returns isPending
CalendarMassInviteGuild(minLevel, maxLevel, rank) - ?
CalendarNewEvent() - Creates and selected a new event
CalendarNewGuildAnnouncement() - ?
CalendarNewGuildEvent(minLevel, maxLevel, minRank) - Replaces the invite list of the selected new event with the specified guild members
CalendarOpenEvent(monthOffset, day, eventIndex) - Selects an existing event
CalendarRemoveEvent() - Removes the selected event from the calendar (invitees only)
CalendarSetAbsMonth(month, year) - Sets the reference month and year for functions which use a month offset
CalendarSetMonth(monthOffset)
CalendarUpdateEvent() - Saves the selected event (existing events only, requires hardware input to call)
OpenCalendar() - Requests calendar information from the server. Does not open the calendar frame. (added in 3.0.8)

Camera Functions

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.

PROTECTED CameraOrSelectOrMoveStart() - Begin "Left click" in the 3D world.
PROTECTED CameraOrSelectOrMoveStop([stickyFlag]) - End "Left click" in the 3D world.
CameraZoomIn(increment) - Zooms the camera into the viewplane by increment.
CameraZoomOut(increment) - Zooms the camera out of the viewplane by increment.
FlipCameraYaw(degrees) - Rotates the camera about the Z-axis by the angle amount specified in degrees.
IsMouselooking() - Returns 1 if mouselook is currently active, nil otherwise.
MouselookStart() - Enters mouse look mode; mouse movement is used to adjust movement/facing direction.
MouselookStop() - Exits mouse look mode; mouse movement is used to move the mouse cursor.
MoveViewDownStart() - Begins rotating the camera downward.
MoveViewDownStop() - Stops rotating the camera after MoveViewDownStart() is called.
MoveViewInStart() - Begins zooming the camera in.
MoveViewInStop() - Stops zooming the camera in after MoveViewInStart() is called.
MoveViewLeftStart() - Begins rotating the camera to the Left.
MoveViewLeftStop() - Stops rotating the camera after MoveViewLeftStart() is called.
MoveViewOutStart() - Begins zooming the camera out.
MoveViewOutStop() - Stops zooming the camera out after MoveViewOutStart() is called.
MoveViewRightStart() - Begins rotating the camera to the Right.
MoveViewRightStop() - Stops rotating the camera after MoveViewRightStart() is called.
MoveViewUpStart() - Begins rotating the camera upward.
MoveViewUpStop() - Stops rotating the camera after MoveViewUpStart() is called.
PROTECTED PitchDownStart() - Begins pitching the camera Downward.
PROTECTED PitchDownStop() - Stops pitching the camera after PitchDownStart() is called.
PROTECTED PitchUpStart() - Begins pitching the camera Upward.
PROTECTED PitchUpStop() - Stops pitching the camera after PitchUpStart() is called.
NextView() - Cycles forward through the five predefined camera positions.
PrevView() - Cycles backward through the five predefined camera positions.
ResetView(index) - Resets the specified (1-5) predefined camera position to it's default if it was changed using SaveView(index).
SaveView(index) - Replaces the specified (1-5) predefined camera positions with the current camera position.
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 and Communication Functions sections.

AddChatWindowChannel(chatFrameIndex, "channel") - Make a chat channel visible in a specific ChatFrame.
ChannelBan("channel", "name") - Bans a player from the specified channel.
ChannelInvite("channel", "name") - Invites the specified user to the channel.
ChannelKick("channel", "name") - Kicks the specified user from the channel.
ChannelModerator("channel", "name") - Sets the specified player as the channel moderator.
ChannelMute("channel", "name") - Turns off the specified player's ability to speak in a channel.
ChannelToggleAnnouncements("channel") - Toggles the channel to display announcements either on or off.
ChannelUnban("channel", "name") - Unbans a player from a channel.
ChannelUnmoderator("channel", "name") - Takes the specified user away from the moderator status.
ChannelUnmute("channel", "name") - Unmutes the specified user from the channel.
DisplayChannelOwner("channel") - Displays the owner of the specified channel in the default chat.
EnumerateServerChannels() - Retrieves all available server channels (zone dependent).
GetChannelList() - Retrieves joined channels.
GetChannelName("channel" or index) - Retrieves the name from a specific channel.
GetChatWindowChannels(index) - Get the chat channels received by a chat window.
JoinChannelByName("channel"[, "password"[, frameId]]) - Join the specified chat channel (with optional password, and register for specified frame) (updated in 1.9).
LeaveChannelByName("channel") - Leaves the channel with the specified name.
ListChannelByName(channelMatch) - Lists members in the given channel to the chat window.
ListChannels() - Lists all of the channels into the chat window.
RemoveChatWindowChannel(chatFrameIndex, "channel") - Make a chat channel invisible (hidden) in a specific ChatFrame.
SendChatMessage("msg",[ "chatType",[ "language",[ "channel"]]]) - Sends a chat message.
SetChannelOwner("channel", "name") - Sets the channel owner.
SetChannelPassword("channel", "password") - Changes the password of the current channel.

Character Functions

AcceptResurrect() - The player accepts the request from another player to resurrect him/herself.
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.)
CheckBinderDist() - Check whether the player is close enough to interact with the Hearthstone binder.
ConfirmBinder() - Confirm the request to set the binding of the player's Hearthstone.
DeclineResurrect() - Decline the request from another player to resurrect him/herself.
PROTECTED DestroyTotem(slot) - Destroys a totem/minion.
GetBindLocation() - Get the name of the location for your Hearthstone.
GetComboPoints() - Get the current number of combo points.
GetCorpseRecoveryDelay() - Time left before a player can accept a resurrection
GetCurrentTitle() - Returns the player's current titleId.
GetMirrorTimerInfo(id) - returns information about a mirror timer (exhaustion, breath and feign death timers)
GetMirrorTimerProgress(id) - returns the current value of a mirror timer (exhaustion, breath and feign death timers)
GetMoney() - Returns an integer value of your held money in copper.
GetNumTitles() - Returns the maximum titleId
GetPowerRegen() - Returns normal and combat power regeneration rates
GetPVPDesired() - Returns whether the player has permanently turned on their PvP flag.
GetRangedCritChance() - Returns the players ranged critical strike chance.
GetReleaseTimeRemaining() - Returns the amount of time left before your ghost is pulled from your body.
GetResSicknessDuration()
GetRestState() - Returns information about a player's rest state (saved up experience bonus)
GetRuneCooldown(id) - Returns cooldown information about a given rune.
GetRuneCount(slot) - Returns the number of Runes in the given slot. (Death Knight)
GetRuneType(id) - Returns the type of rune with the given id.
GetTitleName(titleId) - Returns the player's current title name
GetXPExhaustion() - Returns your character's current rested XP, nil if character is not rested.
HasFullControl()
HasSoulstone()
IsFalling() - Returns 1 if your character is currently plummeting to their doom.
IsFlying() - Returns 1 if flying, otherwise nil.
IsFlyableArea() - Returns 1 if it is possible to fly here, nil otherwise.
IsIndoors() - Returns 1 if you are indoors, otherwise nil. Returns nil for indoor areas where you can still mount.
IsMounted() - Returns 1 if mounted, otherwise nil
IsOutdoors() - Returns 1 if you are outdoors, otherwise nil. Returns 1 for indoor areas where you can still mount.
IsOutOfBounds() - Returns 1 if you fell off the map.
IsResting() - Returns 1 if your character is currently resting.
IsStealthed() - Returns 1 if stealthed or shadowmeld, otherwise nil
IsSwimming() - Returns 1 if your character is currently swimming.
IsTitleKnown(index) - Returns 1 if the title is valid for the player, otherwise 0.
IsXPUserDisabled() - Returns 1 if the character has disabled experience gain.
NotWhileDeadError() - Generates an error message saying you cannot do that while dead.
ResurrectHasSickness() - Appears to be used when accepting a resurrection will give you resurrection sickessness.
ResurrectHasTimer() - Does the player have to wait before accepting a resurrection
ResurrectGetOfferer() - Returns the name of the person offering to resurrect you.
RetrieveCorpse() - Resurrects when near corpse. e.g., The "Accept" button one sees after running back to your body.
HW SetCurrentTitle(titleId) - Sets the player's current title id
TargetTotem() - added in 3.0.8

Character Statistics Functions

GetArmorPenetration() - Returns percent of armor ignored by your physical attacks.
GetAttackPowerForStat(stat, value) - Returns the amount of attack power contributed by a specified amount of a particular stat.
GetBlockChance() - Returns the player's percentage block chance.
GetCombatRating(ratingID) - Returns the player's combat rating for a particular combat rating. (2.0)
GetCombatRatingBonus(ratingID) - Returns the player's combat rating bonus for a particular combat rating. (2.0)
GetCritChance() - Returns the player's melee critical hit chance
GetCritChanceFromAgility("unit") - Returns the amount of your critical hit chance contributed by Agility.
GetDodgeChance() - Returns the player's percentage dodge chance.
GetExpertise() - Returns the player's expertise percentage for main hand, offhand and ranged attacks.
GetManaRegen() - Returns the player's mana regeneration rates.
GetMaxCombatRatingBonus(lowestRating)
GetParryChance() - Returns the player's percentage parry chance.
GetPetSpellBonusDamage
GetSpellBonusDamage(spellTreeID) - Returns the raw spell damage of the player for a given spell tree.
GetRangedCritChance()
GetSpellBonusHealing() - Returns the raw bonus healing of the player.
GetSpellCritChance(school) - returns the players critical hit chance with a particular spell school.
GetShieldBlock()
GetSpellCritChanceFromIntellect("unit")
GetSpellPenetration()

Chat Window Functions

These are functions which are specific to chat window management. Also see the Channel Functions and Communication Functions sections.

AddChatWindowChannel(chatFrameIndex, "channel") - Make a chat channel visible in a specific ChatFrame.
AddChatWindowMessages - Adds a messaging group to the specified chat window.
ChangeChatColor(channelname,r,g,b) - Update the color for a type of chat message.
UI ChatFrame_AddChannel(chatFrame, "channelName") - Activate channel in chatFrame.
UI ChatFrame_AddMessageEventFilter("event", filterFunc) - Add a chat message filtering function (added in 2.4)
UI ChatFrame_GetMessageEventFilters("event") - Retreive the list of chat message filtering functions. (added in 2.4)
UI ChatFrame_OnHyperlinkShow(reference, link, button) - called when the user clicks on a chatlink.
UI ChatFrame_RemoveMessageEventFilter("event", filterFunc) - Unregister a chat message filtering function (added in 2.4)
GetAutoCompleteResults("text", include, exclude, maxResults[, cursorPosition]) - Returns possible player names matching a given prefix string and specified requirements.
GetChatTypeIndex(type) - Get the numeric ID of a type of chat message.
GetChatWindowChannels(index) - Get the chat channels received by a chat window.
GetChatWindowInfo(index) - Get setup information about a chat window.
GetChatWindowMessages(index) - Get the chat message types received by a chat window.
JoinChannelByName("channel"[, "password"[, frameId]]) - Join the specified chat channel (with optional password, and register for specified frame) (updated in 1.9)
LoggingChat(newState) - Gets or sets whether logging chat to Logs\WoWChatLog.txt is enabled.
LoggingCombat(newState) - Gets or sets whether logging combat to Logs\WoWCombatLog.txt is enabled.
RemoveChatWindowChannel(chatFrameIndex, "channel") - Make a chat channel invisible (hidden) in a specific ChatFrame.
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):

SetChatWindowAlpha(index,alpha) - Sets the Alpha value(transparency) of ChatFrame<index> (alpha - 0-100)
SetChatWindowColor(index,r,g,b) - Sets the background color of a a chat window. (r/g/b - 0-255)
SetChatWindowDocked(index,docked) - Set whether a chat window is docked. (docked - 0/1)
SetChatWindowLocked(index,locked) - Sets ChatFrame<index> so that it is or is not movable. (locked - 0/1)
SetChatWindowName(index,"name") - Sets the name of ChatFrame<index> to <"name">.
SetChatWindowShown(index,shown) - Shows or Hides ChatFrame<index> depending on value of <shown> (shown - 0/1)
SetChatWindowSize(index,size) - Sets the font size of a chat window. (size - default 14)
SetChatWindowUninteractable(id, isUninteractable) - added in 3.0.8

Communication Functions

These are the functions which communicate with other players. Also see the Channel Functions and Chat Window Functions sections.

DoEmote("emote",["target"]) - Perform a voice emote.
GetDefaultLanguage("unit") - Returns the default language that the unit is speaking after logon.
GetLanguageByIndex(index) - Returns the language specified by the index.
GetNumLanguages() - Returns the number of languages your character can speak (Renamed in 2.4, formerly mistyped GetNumLaguages).
RandomRoll(low, high) - Does a random roll between the two values.
SendAddonMessage("prefix", "text", "type" [, "player"]) - Sends a message to hidden AddOn channels. - Added in 1.12
SendChatMessage("msg",[ "chatType",[ "language",[ "channel"]]]) - Sends a chat message.

Companion Functions

These functions relate to companions—mounts and non-combat pets. All functions were introduced in Patch 3.0.

CallCompanion("type", slotid) - Summons a companion.
DismissCompanion("type") - Dismisses an active companion.
GetCompanionInfo("type", slotid) - Returns info about a selected companion.
GetNumCompanions("type") - Get the number of companions of the specified type.
NOCOMBAT PickupCompanion("type", index) - Picks up the indexed companion onto the mouse cursor.
SummonRandomCritter() - Summons a random critter companion. (added in 3.3.3)

Container/Bag Functions

These functions manage containers (bags, backpack). See also Inventory Functions and Bank Functions.

ContainerIDToInventoryID(bagID)
GetBagName(bagID) - Get the name of one of the player's bags.
GetContainerItemCooldown(bagID, slot)
GetContainerItemDurability(bag, slot) - Get current and maximum durability of an item in the character's bags.
GetContainerItemGems(bag, slot) - Returns item IDs of gems inserted into the item in a specified container slot.
GetContainerItemID(bag, slot) - Returns the item ID of the item in a particular container slot.
GetContainerItemInfo(bagID, slot) - Get the info for an item in one of the player's bags.
GetContainerItemLink(bagID, slot) - Returns the itemLink of the item located in bag#, slot#.
GetContainerNumSlots(bagID) - Returns the total number of slots in the bag specified by the index.
GetContainerItemQuestInfo(bag, slot) - Returns information about quest and quest-starting items in your bags. (added in 3.3.3)
GetContainerNumFreeSlots(bagID) - Returns the number of free slots and type of slots in the bag specified by the index. (added in Patch 2.4)
HasKey() - Returns 1 if the player has a keyring, nil otherwise.
UI OpenAllBags() - Open all bags
UI CloseAllBags() - Close all bags
PickupBagFromSlot(slot) - Picks up the bag from the specified slot, placing it in the cursor.
PickupContainerItem(bagID,slot)
PutItemInBackpack() - attempts to place item in backpack (bag slot 0).
PutItemInBag(inventoryId) - attempts to place item in a specific bag.
SplitContainerItem(bagID,slot,amount)
UI ToggleBackpack() - Toggles your backpack open/closed.
UI ToggleBag(bagID) - Opens or closes the specified bag.
PROTECTED (situational) UseContainerItem(bagId, slot[, target]) - Performs a "right click" action on, or targeted use of, on an item in bags. -- 3rd argument added in 1.12

Currency Functions

Most of these functions were added in 3.0.2

GetCoinText(amount, "separator") - Breaks down money and inserts separator strings. Added in 2.4.2.
GetCoinTextureString(amount[, fontHeight]) - Breaks down money and inserts texture strings.
GetCurrencyInfo(index) - returns localized_label, amount, icon_file_name of the currency at the index. (added 4.0.1)
GetCurrencyListSize() - returns the number of elements (both headers and currencies) in the currency list.
GetCurrencyListInfo(index) - return information about an element in the currency list.
ExpandCurrencyList(index, state) - sets the expanded/collapsed state of a currency list header.
SetCurrencyUnused(id, state) - alters whether a currency is marked as unused.
GetNumWatchedTokens() - returns the number of currently watched.
GetBackpackCurrencyInfo(id) - returns information about a watched currency.
SetCurrencyBackpack(id, state) - alters whether a currency is tracked.

Cursor Functions

AutoEquipCursorItem() - Causes the equipment on the cursor to be equipped.
ClearCursor() - Clears whatever item the cursor is dragging from the cursor. - Added in 1.12
CursorCanGoInSlot(invSlot) - Return true if the item currently held by the cursor can go into the given inventory (equipment) slot.
CursorHasItem() - Returns true if the cursor currently holds an item.
CursorHasMoney() - Returns true if the cursor currently holds money.
CursorHasSpell() - Returns true if the cursor currently holds a spell.
DeleteCursorItem() - Destroys the item on the cursor.
DropCursorMoney() - Drops the amount of money held by the cursor.
DropItemOnUnit("unit") - Drops an item from the cursor onto a unit.
EquipCursorItem(invSlot) - Equips the currently picked up item to a specific inventory slot.
GetCursorInfo() - Returns information about what the cursor is holding.
GetCursorMoney - Returns the amount of money held by the cursor.
GetCursorPosition() - Returns the cursor's position on the screen.
HideRepairCursor() - Hides the Repair Cursor.
InRepairMode() - Returns true if your cursor is in repair mode
NOCOMBAT PickupAction(slot) - Drags an action out of the specified quickbar slot and holds it on the cursor.
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.
PickupContainerItem(bagID,slot)
PickupInventoryItem(invSlot) - "Picks up" an item from the player's worn inventory.
PickupItem(itemId or "itemString" or "itemName" or "itemLink")
NOCOMBAT PickupMacro("macroName" or index) - Places the specified macro onto the cursor.
PickupMerchantItem(index) - Places the item onto the cursor. If the cursor already has an item, the item in the cursor will be sold.
NOCOMBAT PickupPetAction(slot) - Drags an action from the specified pet action bar slot into the cursor.
PickupPlayerMoney - Picks up an amount of money from the player.
NOCOMBAT PickupSpell(spellID) - Places the specified spell onto the cursor.
PickupStablePet(index) - ?.
PickupTradeMoney(amount)
PlaceAction(slot) - Drops an action from the cursor into the specified quickbar slot.
PutItemInBackpack() - attempts to place item in backpack (bag slot 0).
PutItemInBag(inventoryId) - attempts to place item in a specific bag.
ResetCursor()
SetCursor("cursor" or nil)
ShowContainerSellCursor(index,slot)
ShowInspectCursor() - Change the cursor to the magnifying glass inventory inspection cursor
ShowInventorySellCursor() - ?.
ShowMerchantSellCursor(index) - Changes the cursor to the merchant sell cursor.
ShowRepairCursor()
SplitContainerItem(bagID,slot,amount) - Picks up part of a stack.

Debugging Functions

ConsoleAddMessage(message) - added in 3.0.8
debugprofilestart() - starts a timer for profiling during debugging.
debugprofilestop() - return the time in milliseconds since the last call to debugprofilestart()
debugstack(start, count1, count2) - Returns a string representation of the current calling stack (as of 1.9)
FrameXML_Debug(flag) - Sets FrameXML logging state which is output to /WoW Folder/Logs/FrameXML.log
GetDebugStats()
UI getprinthandler() - Returns the function currently handling print() output.
UI print(...) - Calls the current print output handler with the provided values; by default printing the values to the default chat frame.
UI setprinthandler(func) - Changes the function handling print() output.
UI tostringall(...) - Converts and returns the passed arguments to string.
wipe(table) - removes all key/value pairs from a table; also available as table.wipe().

Dressing Room Functions

Functions Controlling the Dressing Room interface. added in version 1700.

UI DressUpItemLink("itemString" or "itemLink") - Will show the DressingRoom UI with the given item equipped.
UI SetDressUpBackground(isAuctionFrame) - Given an Item shown in the Auction House will show the DressingRoom UI with the item equipped.

Dungeon Finder Functions

Functions hidden behind and supporting the Dungeon Finder UI introduced in 3.3. See also: Raid Browser Functions and Looking For Group Functions

HW AcceptProposal() - Accept an LFD group invite and enter the dungeon.
CanPartyLFGBackfill() - Returns whether the party is eligible to recruit additional members from the LFG pool.
GetLFDChoiceCollapseState(nil or table) - returns LFGCollapseList
GetLFDChoiceEnabledState(nil or table) - returns LFGEnabledList
GetLFDChoiceLockedState(nil or table) - Returns a table mapping dungeonID to isLocked (in LFD UI)
GetLFDChoiceOrder(nil or table) - returns LFDDungeonList
GetLFDLockInfo(dungeonID, lockedPlayerNumber) - returns playerName, lockedReason; lockedPlayerNumber is from 1 to GetLFDLockPlayerCount(); lockedReason is found in LFG_INSTANCE_INVALID_CODES
GetLFDLockPlayerCount() - returns the number of locks in a dungeon group
GetLFGCompletionReward()
GetLFGCompletionRewardItem()
GetLFGDungeonEncounterInfo()
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
GetLFGDungeonNumEncounters()
GetLFGDungeonRewards(dungeontype) - dungeontype = 261 (normal) or 262 (heroic), returns doneToday, moneyBase, moneyVar, experienceBase, experienceVar, numRewards
GetLFGDungeonRewardCapBarInfo(dungeontype) - returns information on the weekly point limits
GetLFGDungeonRewardCapInfo()
GetLFGDungeonRewardInfo(dungeonID, rewardIndex) - returns name, texturePath, quantity. rewardIndex matches 1 through numRewards from GetLFGDungeonRewards
GetLFGInfoServer - returns inParty, joined, queued, noPartialClear, achievements, lfgComment, slotCount
GetLFGProposal() - Returns information about a LFD group invite.
GetLFGProposalEncounter(encounterNumber) - returns bossName, texture, isKilled. encounterNumber is from 1 to totalEncounters from GetLFGProposal()
GetLFGProposalMember(playerNumber) - returns info about players (numbers 1-5) in the LFG proposal: isLeader, role, level, responded, accepted, name, class
GetLFGRandomDungeonInfo(index) - Returns information about a random dungeon queue: id, name
GetLFGRoleShortageRewards(dungeonID, shortageSeverity) - returns information about the LFG Call to Arms rewards
GetNumRandomDungeons() - returns the number of specific dungeons that can be queued for
GetPartyLFGBackfillInfo() - Returns information about the dungeon for which you may currently recruit additional members from the LFG pool.
GetRandomDungeonBestChoice() - Returns suggested random dungeon ID.
HasLFGRestrictions() - Returns whether the player is in a random party formed by the dungeon finder system.
IsLFGDungeonJoinable(dungeonId) - Returns whether you can queue for a particular dungeon; dungeonId is from GetLFGRandomDungeonInfo
LFGTeleport([toSafety]) - Teleports the player to (toSafety = nil) or from (toSafety = true) a dungeon
RejectProposal() - Reject an LFD group invite and exit the queue.
SetLFGHeaderCollapsed(headerID, isCollapsed)
UnitGroupRolesAssigned(UnitID) - Return's the targeted unit's assigned role.

Raid Finder Functions

The Raid Finder was added in Patch 4.3.0

GetBestRFChoice() - Returns the suggested/default Dungeon Id for the Raid Finder
GetLFRChoiceOrder([table]) - Seems to be for used ordering the LFR list
GetNumRFDungeons() - Returns the number of available Raid Finder dungeons
GetRFDungeonInfo(index) - Returns id, name, typeID, subtypeID, minLevel, maxLevel, recLevel, minRecLevel, maxRecLevel, expansionLevel, groupID, textureFilename, difficulty, maxPlayers, description, isHoliday

Enchanting Functions

GetWeaponEnchantInfo() - Return information about main and offhand weapon enchantments.
ReplaceEnchant()
ReplaceTradeEnchant() - Confirm the replacement of an enchantment via trade.
BindEnchant() - Confirm the binding of the item when enchanting.

Encounter Journal Functions

Dungeon Journal was added in Patch 4.2.0; its FrameXML components were moved to a LoadOnDemand AddOn in Patch 4.3.0.

EJ_ClearSearch()
EJ_GetCreatureInfo(index[, encounterID]) - Returns Boss / Creature info
EJ_GetCurrentInstance() - Returns the Instance ID of your character's current location
EJ_GetCurrentTier() - Returns the currently active tier index
EJ_GetEncounterInfo(encounterID) - Returns Encounter info
EJ_GetEncounterInfoByIndex(index[, instanceID]) - Returns Encounter info
EJ_GetInstanceByIndex(index, isRaid) - Returns Instance info
EJ_GetInstanceInfo([instanceID]) - Returns Instance info
EJ_GetLootInfo(lootID) - Returns Loot info
EJ_GetLootInfoByIndex(index) - Returns Loot info
EJ_GetMapEncounter(index) - Returns Map Button info
EJ_GetNumLoot() - Returns the amount of loot for the currently viewed Instance or Encounter
EJ_GetNumSearchResults() - Returns the number of search results
EJ_GetSearchResult(index) - Returns Search info
EJ_GetSectionInfo(sectionID) - Returns Section info
EJ_GetSectionPath(sectionID) - Returns the Parent Section ID if available
EJ_GetTierInfo(index) - Returns some information about the tier for index
EJ_HandleLinkPath(jtype, id) - Processes the Journal Link
EJ_InstanceIsRaid() - Returns whether the currently viewed Instance is a raid instance
EJ_SelectEncounter(encounterID)
EJ_SelectInstance(instanceID)
EJ_SetDifficulty(index) - Sets the Encounter Journal's viewed difficulty
EJ_SetSearch(text)
UI EncounterJournal_OpenJournal([difficulty, instanceID, encounterID, sectionID, creatureID, itemID]) - Opens the Encounter Journal, and optionally navigates to an entry
UI EncounterJournal_ResetHeaders() - Resets all the Section Headers

Equipment Manager Functions

Equipment management was added to the UI in Patch 3.1.2.

GetNumEquipmentSets() - Returns the number of saved equipment sets.
GetEquipmentSetInfo(index) - Returns information about an equipment set.
GetEquipmentSetInfoByName("name") - Returns information about an equipment set.
GetEquipmentSetItemIDs("name"[, returnTable]) - Populates and returns a table with the item IDs.
GetEquipmentSetLocations("name"[, returnTable]) - Populates and returns a table with the item locations.
EquipmentManager_UnpackLocation(location) - Unpacks a location integer to determine the actual inventory location.
PickupEquipmentSet(index) - Places an equipment set on the cursor.
PickupEquipmentSetByName("name") - Places an equipment set on the cursor.
EquipmentSetContainsLockedItems("name") - Checks if some of the items in the set are currently locked (pending client/server interaction).
NOCOMBAT UseEquipmentSet("name") - Equips an equipment set.
EquipmentManagerIgnoreSlotForSave(slot) - flags the slot to be ignored when saving an equipment set.
EquipmentManagerUnignoreSlotForSave(slot) - removes the ignore flag from a slot when saving an equipment set.
EquipmentManagerClearIgnoredSlotsForSave() - removes the ignore flag from all slots when saving an equipment set.
SaveEquipmentSet("name", iconIndex) - Saves the currently equipped items in a set.
DeleteEquipmentSet("name") - Forgets an equipment set.
UI GetEquipmentSetIconInfo(index) - Returns information about available icons.

Faction Functions

CollapseFactionHeader(index) - Collapse a faction header row.
CollapseAllFactionHeaders() - Collapse all faction header rows.
ExpandFactionHeader(index) - Expand a faction header row.
ExpandAllFactionHeaders() - Expand all faction header rows.
FactionToggleAtWar(index) - Toggle the At War flag for a faction.
GetFactionInfo(index) - Gets details for a specific faction/faction header.
GetNumFactions() - Returns the number of lines in the faction display.
GetSelectedFaction() - Returns the row index of the currently selected faction in reputation window. (added in 1.10)
GetWatchedFactionInfo() - Returns information about the currently watched faction.
IsFactionInactive(index) - Returns true if the faction is marked inactive.
SetFactionActive(index) - Remove a faction from inactive group.
SetFactionInactive(index) - Move a faction to inactive group.
SetSelectedFaction(index) - Sets the currently selected faction in reputation window. (added in 1.10)
SetWatchedFactionIndex(index) - Sets which faction should be watched in Blizzard reputation bar.

Frame Management

CreateFrame("frameType"[ ,"name"][, parent][, "inheritFrame"]) - Create a new frame of the specified type
CreateFont("name") - Dynamically create a font object
GetFramesRegisteredForEvent(event) - Returns a list of frames that are registered for the given event.
GetNumFrames() - Get the current number of Frame (and derivative) objects
EnumerateFrames(currentFrame) - Get the Frame which follows currentFrame
GetMouseFocus() - Returns the frame that currently has the mouse focus.
UI MouseIsOver - Determines whether or not the mouse is over the specified frame.
UI ToggleDropDownMenu(level, value, dropDownFrame, anchorName, xOffset, yOffset)
UI UIFrameFadeIn(frame, fadeTime, startAlpha, endAlpha)
UI UIFrameFlash(...)

FrameXML API

This is a very limited selection of utility functions provided by Blizzard's FrameXML implementation.

UI EasyMenu(menuList, menuFrame, anchor, x, y, displayMode, autoHideDelay)

Friend Functions

AddFriend("playerName") - Add a friend to your friend list.
AddOrRemoveFriend("playerName"[, "note"]) - Toggles a player's presence on your friends list.
GetFriendInfo(index) - Returns name, level, class, location, connected, status, and friend note of a friend.
SetFriendNotes(index, "note") - Sets the note text for a friend.
GetNumFriends() - Returns how many friends are on your friend list.
GetSelectedFriend() - Returns the index of the current selected friend.
RemoveFriend("name" or index) - Removes a friend from your friend list
SetSelectedFriend(index) - Update the current selected friend.
ShowFriends() - Request updated friends information from server.
UI ToggleFriendsFrame([tabNumber]) - Opens/closes the friends pane (possibly on a specific tab).

Glyph Functions

PROTECTED CastGlyphByID (glyphID, slot)
PROTECTED CastGlyphByName (glyphName, slot)
GetGlyphClearInfo() - Returns information about the current cost of removing a glyph.
GetGlyphInfo(index) - Returns details of the selected Glyph in the current players Glyph list
GetGlyphLink(socketID[, talentGroup]) - Returns link text for a Glyph in the desired Socket.
GetGlyphSocketInfo(socketID[, talentGroup]) - Returns info on a specific Glyph Socket.
GetNumGlyphSockets() - Returns the number of Glyph Sockets available at max level. (Same result as NUM_GLYPH_SLOTS)
GlyphMatchesSocket(socketID) - See if the Glyph held by the cursor matches the desired Socket.
IsGlyphFlagSet(filter) - Returns the current state of the selected Glyph filter
PlaceGlyphInSocket(socketID) - Places the Glyph held by the cursor into the desired Socket.
RemoveGlyphFromSocket(socketID) - Removes the Glyph from the desired Socket.
SpellCanTargetGlyph()
ToggleGlyphFilter(filter) - Toggles the state of the selected Glyph filter

GM Functions

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)
CanComplainInboxItem(index) - determines if we should show the “report spam” button on a mail item
ComplainInboxItem(index) - complains about a particular mail item
PROTECTED DeleteGMTicket()
GetGMStatus()
GetGMTicket()
GetGMTicketCategories() - Return all available ticket categories (not as a table)
GMSurveyAnswerSubmit(question, rank, comment) - ?
GMSurveyCommentSubmit(comment) - ?
GMSurveyQuestion ?
GMSurveySubmit ?
HelpReportLag(type) - Uses the Report Lag function on the help screen to report the specified type of lag
PROTECTED NewGMTicket(type,"text")
PROTECTED Stuck() - Informs the game engine that the player is Stuck.
PROTECTED UpdateGMTicket(type,"text")

Gossip Functions

CloseGossip() - Dismiss the gossip window.
ForceGossip() - Returns whether the gossip text must be displayed. (added 3.3.3)
GetGossipActiveQuests() - Retrieves a list of the active (?) quests on the NPC you are talking to.
GetGossipAvailableQuests() - Retrieves a list of the available (!) quests on the NPC you are talking to.
GetGossipOptions() - Retrieves a list of the available gossip items on the NPC you are talking to.
GetGossipText() - Retrieves the gossip text.
GetNumGossipActiveQuests() - Returns the number of active quests that you should eventually turn in to this NPC.
GetNumGossipAvailableQuests() - Returns the number of quests (that you are not already on) offered by this NPC.
GetNumGossipOptions() - Returns the number of conversation options available with this NPC.
SelectGossipActiveQuest(index) - Selects an active quest.
SelectGossipAvailableQuest(index) - Selects an available quest.
SelectGossipOption(index) - Selects on a gossip item.

Group Functions

See also: Raid Functions

AcceptGroup() - Accept the invitation to party.
ConfirmReadyCheck(isReady) - Indicate if you are ready or not.
ConvertToParty() - Converts a raid group with 5 or less members to a party.
ConvertToRaid() - Converts party to raid.
DeclineGroup() - Decline the invitation to a party.
DoReadyCheck() - Initiate a ready check.
GetLootMethod() - Return the currently active lootMethod
GetLootThreshold() - Return the current loot threshold (for group/master loot)
GetMasterLootCandidate(index) - Return the name of a player who is eligible to receive loot in master mode
GetNumGroupMembers([groupType]) - Returns the total number of players in your group/raid.
GetNumSubgroupMembers([groupType]) - Returns the number of other players in your party (or raid subgroup).
InviteUnit("name") - Invites the specified player to the group you are currently in.
IsInGroup([groupType]) - Return true if in a group
IsInRaid([groupType]) - Return true if in a raid
LeaveParty() - Quit the party, often useful to troubleshoot "phantom party" bugs which may list you in a party when you are in fact not.
PromoteToLeader("unit") - Promote a unit to party leader.
SetLootMethod("lootMethod"[, "masterPlayer" or threshold]) - Set the current loot method
SetLootThreshold(itemQuality) - Set the threshold for group/master loot
HW UninviteUnit("name" [, "reason"]) - Kick a unit from the party if player is group leader; or initiate a kick vote in an LFD group.
UnitInParty("unit") - Returns true if the unit is a member of your party.
UnitIsGroupLeader("unit" or "player name") - Returns true if the unit is the leader of your party.

Guild Functions

AcceptGuild() - The player accepts the invitation to join a guild.
BuyGuildCharter("guildName") - Purchases a guild charter for guildName.
CanEditGuildEvent() - Returns true if you are allowed to edit guild events (in the calendar),
CanEditGuildInfo() - Returns true if you are allowed to edit the guild info
CanEditMOTD() - Returns true if you are allowed to edit the guild motd.
CanEditOfficerNote() - Returns true if you are allowed to edit a guild member's officer note.
CanEditPublicNote() - Returns true if you are allowed to edit a guild member's public note.
CanGuildDemote() - Returns true if you are allowed to demote a guild member.
CanGuildInvite() - Returns true if you are allowed to invite a new member to the guild.
CanGuildPromote() - Returns true if you are allowed to demote a guild member.
CanGuildRemove() - Returns true if you are allowed to remove a guild member.
CanReplaceGuildMaster() - Returns whether you can impeach the Guild Master due to inactivity.
CanViewOfficerNote() - Returns true if you are allowed to view a Officer Note.
CloseGuildRegistrar() - ?.
CloseGuildRoster() - ?.
CloseTabardCreation() - ?.
DeclineGuild() - The player declines the invitation to join a guild.
GetGuildApplicantInfo(index) - Returns information about a guild applicant.
GetGuildCharterCost() - Returns the cost of purchasing a guild charter.
GetGuildEventInfo(index) - Returns the event information. (Added in 2.3)
GetGuildInfo("unit") - This function returns the name of the guild unit belongs to.
GetGuildInfoText() - Returns the persistant Guild Information data. (added in 1.9)
GetGuildRosterContribution(index) - Returns weekly and total XP as well as weekly and total rank.
GetGuildRosterLargestContribution() - Returns max weekly XP and max total XP.
GetGuildRosterLargestAchievementPoints() - Returns max achievements points.
GetGuildRosterInfo(index) - This function is used to get info on members in the guild.
GetGuildRosterLastOnline(index) - Returns time since last online for indexth member in current sort order.
GetGuildRosterMOTD() - Returns guild's MOTD.
GetGuildRosterSelection() - Returns the index of the current selected guild member.
GetGuildRosterShowOffline() - Returns true if showing offline members of the guild.
GetGuildTradeSkillInfo(index) - Returns the tradeskill index for a guild tradeskill using the index from GetNumGuildTradeSkill
GetNumGuildApplicants() - Returns the total number of guild applicants.
GetNumGuildEvents() - Returns the number of guild events. (Added in 2.3)
GetNumGuildMembers() - Returns the number of total and online guild members.
GetNumGuildTradeSkill() - Returns the number of tradeskills available to the guild UI
GetTabardCreationCost() - Returns cost in coppers.
GetTabardInfo() -?.
GuildControlAddRank("name") - Add another rank called "name". Only Guildmaster.
GuildControlDelRank("name") - Delete rank "name". Only Guildmaster.
GuildControlGetNumRanks() - Returns number of ranks after guild frame open. Any guild member can use this.
GuildControlGetRankFlags() - Returns list of values for each permission for a select rank (default rank 1).
GuildControlGetRankName(index) - Returns name of the rank at index. Any guild member can use this.
GuildControlSaveRank("name") - Saves the permissions for rank "name". Only Guildmaster.
GuildControlSetRank(rank) - Sets the currently selected rank to view.
GuildControlSetRankFlag(index, enabled) - Enable/disable permission for an action at index. Only Guildmaster.
GuildDemote("name") - Demotes a player "name".
GuildDisband() - Disbands at once your guild. You must be the guild's leader to do so. Be careful, no warning is given prior disbanding.
GuildInfo() - Displays information about the guild you are a member of.
GuildInvite("name") - Invites a player to your guild.
GuildLeave() - Removes you from your current guild.
GuildPromote("name") - Promotes a player "name".
GuildRoster() - Fetches the guild list and fires a GUILD_ROSTER_UPDATE event.
GuildRosterSetOfficerNote(index, "note") - Sets the officer note at index to "note".
GuildRosterSetPublicNote(index, "note") - Sets the public note at index to "note".
GuildSetMOTD("note") - Set Guild Message of the Day to "note".
GuildSetLeader("name") - Transfers guild leadership to another character.
GuildUninvite("name") - Removes the member "name".
IsGuildLeader("name") - Determine if player "name" is a guild master.
IsInGuild() - Lets you know whether you are in a guild.
QueryGuildEventLog() - Fetches the guild event list and fires a GUILD_EVENT_LOG_UPDATE event. (Added in 2.3)
ReplaceGuildMaster() - Impeaches the current Guild Master.
RequestGuildApplicantsList() - Requests information about guild applicants.
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 in 1.9)
SetGuildRosterSelection(index) - Selects/deselects a guild member according current sorting order.
SetGuildRosterShowOffline(enabled) - Sets/Resets the show offline members flag.
SortGuildRoster("sort") - Sorts guildroster according "sort". Any unknown values sort on "name".

Guild Bank Functions

All functions were added in Patch 2.3

AutoStoreGuildBankItem(tab, slot) - Withdraws an item from the bank, and automatically stores it in the player's inventory.
BuyGuildBankTab() - Buys a guild bank tab, without confirmation.
CanWithdrawGuildBankMoney() - Boolean, true if player is permitted to withdraw funds. No bank proximity required.
CloseGuildBankFrame() - Closes the guild bank frame
DepositGuildBankMoney(money) - Deposits "money" amount in copper.
GetCurrentGuildBankTab() - Integer of selected tab, >= 1
GetGuildBankItemInfo(tab, slot) - Returns texture, amount and integer 1 or nil depending on locked state
GetGuildBankItemLink(tab, slot) - Returns itemLink
GetGuildBankMoney() - Integer, funds available in copper.
GetGuildBankMoneyTransaction(index) - No bank proximity required, however QueryGuildBankLog function requires proximity.
GetGuildBankTabCost() - Integer OR nil - cost in copper OR no tabs available to buy
GetGuildBankTabInfo(tab) - Returns the name and icon of the guild bank tab queried.
GetGuildBankTabPermissions(tab) - Gets display / player's access info. Limited data available without bank proximity.
GetGuildBankTransaction(tab, index) - Requires Guild Bank Proximity
GetGuildBankWithdrawGoldLimit() - Returns withdraw limit for currently selected rank in guild control
GetGuildTabardFileNames()
GetNumGuildBankMoneyTransactions() - Returns number of money log entries
GetNumGuildBankTabs() - Integer count of bought tabs, >= 0. No bank proximity required.
GetNumGuildBankTransactions(tab) - Returns number of log transactions for tab "tab"
PickupGuildBankItem(tab, slot) - Picks up an item from the guild bank
PickupGuildBankMoney(money) - Picks up "money" copper from the guild bank
QueryGuildBankLog(tab) - Updates bank log data from the server, called before all transaction functions. "Money tab" is MAX_GUILDBANK_TABS+1
QueryGuildBankTab(tab) - Updates bank tab data from the server, called before all item functions.
SetCurrentGuildBankTab(tab) - Select different bank tab in the UI
SetGuildBankTabInfo(tab, name, iconIndex) - Modifies name and icon for tab
SetGuildBankTabPermissions(tab, index, enabled) - Modifies the permissions for the GuildBankTab. Guild Leader Only.
SetGuildBankWithdrawGoldLimit(amount) - Sets the gold withdraw limit from the guild bank. Guild Leader Only.
SplitGuildBankItem(tab, slot, amount) - Picks up part of a stack
WithdrawGuildBankMoney(money) - Withdraws "money" copper from the guild bank

Ignore Functions

AddIgnore("name") - Add a player to your ignore list.
AddOrDelIgnore("name") - Toggles the ignore state of the specified name.
DelIgnore("name") - Delete a player from your ignore list.
GetIgnoreName(index) - Get the name of the player on your ignore list at index.
GetNumIgnores() - Get the number of players on your ignore list.
GetSelectedIgnore() - Returns the currently selected index in the ignore listing
SetSelectedIgnore(index) - Sets the currently selected ignore entry

Inspection Functions

CanInspect("unit"[, showError]) - Returns whether you can inspect the specified unit.
CheckInteractDistance("unit", interaction) - Returns whether you're in range to perform various interactions with the specified unit.
ClearInspectPlayer() - Reset inspect data once finished with it.
HasInspectHonorData() - Determine if the inspected unit's honor statistics are available.
RequestInspectHonorData() - Request honor information for inspected unit.
GetInspectHonorData() - Return honor information about the inspected player.
NotifyInspect("unit") - Requests information about a unit's inventory and talents from the server.
UI InspectUnit("unit") - Instructs FrameXML to inspect a particular unit (query server; show UI).

Instance Functions

CanShowResetInstances() - Determine if player can reset instances at the moment.
GetBattlefieldInstanceExpiration() - Get shutdown timer for the battlefield instance.
GetBattlefieldInstanceRunTime() - In milliseconds, the time since battleground started (seems to be queried from server because it is not in sync with time()).
GetInstanceBootTimeRemaining() - Gets the time in seconds after which the player will be ejected from an instance.
GetInstanceInfo() - Gets informations about the current Instance
GetNumSavedInstances() - Gets the number of instances for which the player currently has lockout data saved.
GetSavedInstanceInfo(index) - Gets information about an instance for which the player has saved lockout data.
IsInInstance() - Returns 1 if the player is in an instance, as well as the type of instance (pvp, raid, etc.).
ResetInstances() - Reset instances.
GetDungeonDifficultyID() - Returns the player's current Dungeon Difficulty setting (1, 2, 8).
SetDungeonDifficultyID(difficultyIndex) - Sets the player's Dungeon Difficulty setting (for the 5-man instances). See difficultyIndex.
GetRaidDifficultyID() - Returns the player's current Raid Difficulty setting (1-14).
SetRaidDifficultyID(difficultyIndex) - Sets the players Raid Difficulty settings (for 10-man, 25-man instances). See difficultyIndex.
GetInstanceLockTimeRemaining() - Returns information about the instance lock timer for the instance the player is currently entering.
GetInstanceLockTimeRemainingEncounter(id) - Returns information about bosses in the instance the player is about to be saved to.

Inventory Functions

These functions manage your "inventory", that is, equipped items. See also Container/Bag Functions and Bank Functions.

AutoEquipCursorItem() - Causes the equipment on the cursor to be equipped.
BankButtonIDToInvSlotID(buttonID, isBag) - Returns the ID number of a bank button or bag in terms of inventory slot ID.
CancelPendingEquip(index) - This function is used to cancel a pending equip.
ConfirmBindOnUse()
ContainerIDToInventoryID(bagID)
CursorCanGoInSlot(invSlot) - Return true if the item currently held by the cursor can go into the given inventory (equipment) slot
EquipCursorItem(invSlot)
EquipPendingItem(invSlot) - Equips the currently pending Bind-on-Equip or Bind-on-Pickup item from the specified inventory slot. (Internal — do not use.)
GetAverageItemLevel() - Return the character's current average iLevel and current average iLevel equipped.
GetInventoryAlertStatus(index) - Returns one of several codes describing the "status" of an equipped item.
GetInventoryItemBroken("unit", invSlot) - Determine if an inventory item is broken (no durability).
GetInventoryItemCooldown("unit", invSlot) - Get cooldown information for an inventory item.
GetInventoryItemCount("unit", invSlot) - Determine the quantity of an item in an inventory slot.
GetInventoryItemDurability(invSlot) - Returns the maximum and remaining durability points for an inventory item.
GetInventoryItemGems(invSlot) - Returns item ids of the gems socketed in the item in the specified inventory slot.
GetInventoryItemID("unit", invSlot) - Returns the item id of the item in the specified inventory slot.
GetInventoryItemLink("unit", invSlot) - Returns an itemLink for an inventory (equipped) item.
GetInventoryItemQuality("unit", invSlot) - Return the quality of an inventory item.
GetInventoryItemTexture("unit", invSlot) - Return the texture for an inventory item.
GetInventorySlotInfo(invSlotName) - Get the info for a named inventory slot (slot ID and texture)
GetWeaponEnchantInfo() - Return information about main and offhand weapon enchantments.
HasWandEquipped() - Returns 1 if a wand is equipped, false otherwise.
IsInventoryItemLocked(id) - Returns whether an inventory item is locked, usually as it awaits pending action.
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.
PickupInventoryItem(invSlot) - "Picks up" an item from the player's worn inventory.
UpdateInventoryAlertStatus()
PROTECTED UseInventoryItem(invSlot) - Use an item in a specific inventory slot.

Item Functions

These functions are those which operate on item links or item information directly. See also Container/Bag Functions and Inventory Functions.

EquipItemByName(itemId or "itemName" or "itemLink"[, invSlot]) - Equips an item, optionally into a specified slot.
GetAuctionItemLink("type", index) - Returns an itemLink for the specified auction item.
GetContainerItemLink(bagID, slot) - Returns the itemLink of the item located in bag#, slot#.
GetItemCooldown(itemId) - Returns startTime, duration, enable.
GetItemCount(itemId or "itemName" or "itemLink"[, includeBank][, includeCharges]) - Returns number of such items in inventory[, or charges instead if it has charges]
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 in Patch 2.4)
GetItemIcon(itemId) - Returns the icon for the item. Works for any valid item even if it's not in the cache. (added in Patch 2.4)
GetItemInfo(itemId or "itemString" or "itemName" or "itemLink") - Returns information about an item.
GetItemQualityColor(quality) - Returns the RGB color codes for a quality.
GetItemSpell(item) - Returns name, rank.
GetItemStats(itemLink, statTable) - Returns a table of stats for an item.
GetMerchantItemLink(index) - Returns an itemLink for the given purchasable item
GetQuestItemLink("type", index) - Returns an itemLink for a quest reward item.
GetQuestLogItemLink("type", index) - Returns an itemLink for a quest reward item.
GetTradePlayerItemLink(id) - Returns an itemLink for the given item in your side of the trade window (if open)
GetTradeSkillItemLink(index) - Returns the itemLink for a trade skill item.
GetTradeSkillReagentItemLink(index, reagentId) - Returns the itemLink for one of the reagents needed to craft the given item
GetTradeTargetItemLink(id) - Returns an itemLink for the given item in the other player's side of the trade window (if open)
IsUsableItem(item) - Returns usable, noMana.
IsConsumableItem(item) -
IsCurrentItem(item) -
IsEquippedItem(item) -
IsEquippableItem(itemId or "itemName" or "itemLink") - Returns whether an item can be equipped.
IsEquippedItemType("type") - Where "type" is any valid inventory type, item class, or item subclass.
IsItemInRange("itemName" or "itemLink", "unit") - Nil for invalid target, 0 for out of range, 1 for in range.
ItemHasRange(item) -
OffhandHasWeapon() - Determine if your offhand carries a weapon.
SplitContainerItem(bagID,slot,amount) - Picks up part of a stack.
UI SetItemRef(link, text, button) - Handles item link tooltips in chat.
PROTECTED UseItemByName("itemName", "unit") - Use an item on the unit specified.

Item Socketing Functions

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.

AcceptSockets() - Sockets tentative gems into the sockets, replacing existing gems if necessary.
ClickSocketButton(id) - If the cursor is currently holding a gem, tentatively insert it into the socket.
CloseSocketInfo() - Stops considering the item for socketing, without applying changes.
GetSocketItemInfo() - Returns information about the item currently being socketed.
GetSocketItemRefundable() - Returns whether the item currently being socketed is refundable.
GetSocketItemBoundTradeable() - Returns whether the item currently being socketed is temporarily tradable (BoP boss loot).
GetNumSockets() - Returns the number of sockets in the item currently being socketed.
GetSocketTypes(id) - Returns the type (color) of a socket in the item.
GetExistingSocketInfo(id) - Returns information about the existing gem in the socket.
GetExistingSocketLink(id) - Returns an item link for the existing gem in the socket.
GetNewSocketInfo(id) - Returns information about the new (tentative) gem in the socket.
GetNewSocketLink(id) - Returns an item link for the new (tentative) gem in the socket.
SocketInventoryItem(slot) - Considers the item in the inventory slot for socketing.
SocketContainerItem(bag, slot) - Consider an item in a container slot for socketing.

Item Text Functions

These functions relate to item text (books, etc)

CloseItemText() - Close an open item text (book, plaque, etc).
ItemTextGetCreator() - Get the creator of the current text (if player-created).
ItemTextGetItem() - Get the name of the text.
ItemTextGetMaterial() - Get the material on which the text is printed.
ItemTextGetPage() - Get the page number of the currently viewed page.
ItemTextGetText() - Get the page contents of the currently viewed page.
ItemTextHasNextPage() - Determine if there is another page after the current one.
ItemTextNextPage() - Request the next page of the text.
ItemTextPrevPage() - Request the previous page of the text.

Knowledge Base Functions

KBArticle_BeginLoading(articleId, searchType) - Starts the article loading process.
KBArticle_GetData() - Returns information about the current article.
KBArticle_IsLoaded() - Returns true if an article is loaded.
KBQuery_BeginLoading(searchText, categoryIndex, subcategoryIndex, articlesPerPage, curPage) - Starts a query for articles.
KBQuery_GetArticleHeaderCount() - Returns the number of article headers in the current query.
KBQuery_GetArticleHeaderData(index) - Returns information about an article header of the current query.
KBQuery_GetTotalArticleCount() - Returns the total number of articles that matches the current query.
KBQuery_IsLoaded() - Returns true if a query loaded successfuly.
KBSetup_BeginLoading(articlesPerPage, curPage) - Starts the loading process for the KB start page.
KBSetup_GetArticleHeaderCount() - Returns the number of articles for the current page.
KBSetup_GetArticleHeaderData(index) - Returns information for an article header.
KBSetup_GetCategoryCount() - Returns the number of categories in the knowledge base.
KBSetup_GetCategoryData(index) - Returns information about a category.
KBSetup_GetLanguageCount() - Returns the number of languages in the knowledge base.
KBSetup_GetLanguageData(index) - Returns information about a language.
KBSetup_GetSubCategoryCount(category) - Returns the number of subcategories for a category.
KBSetup_GetSubCategoryData(category, index) - Returns information about a subcategory.
KBSetup_GetTotalArticleCount() - Returns the total number of articles in the knowlege base.
KBSetup_IsLoaded() - Returns true if the knowledge base is loaded successfuly.
KBSystem_GetMOTD() - Returns the server message of the day.
KBSystem_GetServerNotice() - Returns the server notice.
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.

GetMinimapZoneText() - Returns the zone text, that is displayed over the minimap.
GetRealZoneText() - Returns either instance name or zone name
GetSubZoneText() - Returns the subzone text (e.g. "The Canals").
GetZonePVPInfo() - Returns PVP info for the current zone.
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 and Raid Browser Functions

CompleteLFGRoleCheck(boolean) - boolean = false means declining the roleCheck. The returned boolean seems to indicate that the roleCheck was successful?
GetLFGDeserterExpiration() - Returns the time at which you may once again use the dungeon finder after prematurely leaving a group.
GetLFGRandomCooldownExpiration() - Returns the time at which you may once again queue for a random dungeon.
GetLFGBootProposal() - Returns information about an LFG Kick vote in progress.
UI GetLFGMode() - returns mode, subMode (sometimes empty result)
GetLFGQueueStats() - returns current state and wait times for being in queue
GetLFGRoles() - returns isLeader, isTank, isHealer, isDPS - Returns the roles you signed up as, not the role you were assigned.
GetLFGRoleUpdate() - returns roleCheckInProgress, slots, members
GetLFGRoleUpdateSlot(slot) - returns dungeonType, dungeonID for a particular role slot (integer)
SetLFGBootVote(vote) - responds to a vote-kick.
SetLFGComment("comment")
SetLFGRoles(isLeader, isTank, isHealer, isDPS) - changes the selected roles
UninviteUnit("name" [, "reason"]) - initiate a kick vote in a LFD group.
UnitGroupRolesAssigned("unit") - Return's the targeted unit's assigned role.
UnitHasLFGDeserter("unit") - returns whether the specified unit has recently deserted
UnitHasLFGRandomCooldown("unit") - returns whether the specified unit has recently queued for a random

Loot Functions

Automatic looting behavior is controlled by autoLootDefault CVar.

CloseLoot([uiFailedFlag])
PROTECTED ConfirmBindOnUse()
ConfirmLootRoll(rollId[, roll]) - Confirm a loot roll (added in version 1300)
HW ConfirmLootSlot(slot) - Confirm looting of a BoP item.
GetLootMethod() - Return the currently active lootMethod
GetLootRollItemInfo(rollId)
GetLootRollItemLink(id)
GetLootRollTimeLeft(rollid)
GetLootSlotInfo(slot) - Returns icon path, item name, and item quantity for the item in the given loot window slot
GetLootSlotLink(slot) - Returns an itemLink for the item in the given loot window slot
GetLootSourceInfo(slot) - Returns information about the source of the objects in a loot slot.
GetLootThreshold() - Return the current loot threshold (for group/master loot)
GetMasterLootCandidate(index) - Return the name of a player who is eligible to receive loot in master mode
GetNumLootItems() - Returns amount of objects to loot (number)
GetOptOutOfLoot() - Return whether the character is currently automatically passing on all loot.
GiveMasterLoot(slot,index)
IsFishingLoot()
LootSlot(slot) - Used to loot the specified slot.
RollOnLoot(rollId[, roll]) - Roll or pass on a loot event started by the game engine.
SetLootMethod("lootMethod"[, "masterPlayer" or threshold]) - Set the current loot method.
SetLootPortrait()
SetLootThreshold(itemQuality) - Set the threshold for group/master loot.
SetOptOutOfLoot(optOut) - Enables or disables automatic passing on all loot.

Macro Functions

NOCOMBAT (2.0) CreateMacro("name", icon, "body", perCharacter, isLocal) - Create a new macro.
CursorHasMacro() - Returns 1 if the cursor is currently dragging a macro. (added in 2.0.3)
DeleteMacro(id or "name") - Deletes a macro.
NOCOMBAT (2.0) EditMacro(index, "name", iconIndex, "body", isLocal, perCharacter) - Saves a macro.
GetMacroBody(id or "name") - Returns the body (macro text) of a macro.
GetMacroIndexByName("name") - Returns macro index.
GetMacroInfo(id or "name") - Returns "name", "iconTexture", "body", isLocal.
GetMacroIcons(table) - Returns an array of available macro texture paths (but not icons of items).
GetMacroItemIcons(table) - Returns an array of available macro texture paths (icons of items).
GetNumMacros() - Returns the number of macros the user has.
PickupMacro(id or "name") - Pickup a macro button icon.
PROTECTED RunMacro(id or "name") - Runs a macro.
PROTECTED RunMacroText("macro") - Interpret the given string as a macro and run it.
SecureCmdOptionParse("command") - Used for evaluating conditionals in macros, returning the appropriate choice.
PROTECTED StopMacro() - Stops the currently executing macro.

Mail Functions

Events associated with Mail.

AutoLootMailItem(index) - Loot all items from mail message.
CheckInbox() - Populate client's inbox with mail from server.
ClearSendMail() - This clears the text in the send mail tab and places the COD item in the inventory.
ClickSendMailItemButton([itemIndex, [clearItem]]) - Places or picks up an item from the send mail frame.
CloseMail() - Closes the mail window.
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.
DropCursorMoney - Drops the amount of money held by the cursor.
GetCoinIcon(amount)
GetInboxHeaderInfo(index) - Returns information about a message in the inbox.
GetInboxItem(index, itemIndex) - Returns description of the attachment attached to message at (index).
GetInboxItemLink(index, itemIndex) - Returns link of the attachment attached to message at (index).
GetInboxNumItems() - Returns the number of messages in your inbox.
GetInboxText(index) - Returns the message text of message at (index).
GetInboxInvoiceInfo(index) - Returns informations about an auction house invoice.
GetLatestThreeSenders - Returns the senders of the most recent unread mail.
GetNumPackages() - Not yet fully implemented. Currently it always returns 1.
GetNumStationeries() - Not yet fully implemented. Currently it always returns 1.
GetPackageInfo(index) - Not yet fully implemented. Currently an index of 1 returns "Test Package".
GetSelectedStationeryTexture() - Not yet fully implemented. Currently it returns "STATIONERYTEST" when the mailbox is open.
GetSendMailCOD() - determine amount of gold entered in COD box in mail frame when mail is sent
GetSendMailItem(index) - Get information about an item attached on the send mail frame.
GetSendMailItemLink(index) - Get link for an item attached on the send mail frame.
GetSendMailMoney() - ?.
GetSendMailPrice() - Gets the cost for sending mail.
GetStationeryInfo(index) - Not yet fully implemented. Currently an index of 1 returns "Default Stationery".
HasNewMail() - Returns nil if there is no new mail.
InboxItemCanDelete(index) - Boolean check for whether a message is returnable to the sender.
ReturnInboxItem(index) - Returns to the sender the attached item in the mail message at the specified index.
SelectPackage(index) - Not yet fully implemented. It does nothing visible.
SelectStationery(index) - Not yet fully implemented. It does nothing visible.
SendMail("target", "subject", "body") - If the mailbox is open, this sends mail.
PROTECTED SetSendMailCOD(amount) - Make next mail sent using SendMail() COD target for amount. -- Protected as of 2.0
PROTECTED SetSendMailMoney(amount) - Add money to next mail sent using SendMail(). -- Protected as of 2.0
TakeInboxItem(index, itemIndex) - Take the attached item from the mailbox message at index.
TakeInboxMoney(index) - Take the attached money from the mailbox message at index.
TakeInboxTextItem(index) - Creates a permanent copy of letter (readable "Plain Letter").

Mapping Functions

These functions are related to display of the world map.

ClickLandmark(id) - ?
GetCorpseMapPosition() - Returns the position of the corpse on the current world map.
GetCurrentMapAreaID () - Returns the area id of the current map.
GetCurrentMapContinent() - Returns the number of the continent the world map is currently shown.
GetCurrentMapDungeonLevel() - Returns which level of a multi-level map is currently shown.
GetCurrentMapZone() - Returns the number of the zone the world map is currently showing.
GetMapContinents() - Returns the continent names.
GetMapDebugObjectInfo(id) - ?
GetMapInfo() - Returns the name and size of the current world map.
GetMapLandmarkInfo(landmarkIndex) - Returns information about a landmark on the current world map.
GetMapNameByID(id) - Returns the full localized name of the zone specified by the ID.
GetMapOverlayInfo(overlayIndex) - Returns information about an overlay on the current world map.
GetMapZones(continentIndex) - Returns the zone names of a continent.
GetNumDungeonMapLevels() - Returns the number of levels in the currently shown zone map (0 for none).
GetNumMapDebugObjects() - ?
GetNumMapLandmarks() - Returns the number of landmarks on the current world map.
GetNumMapOverlays() - Returns the number of overlays on the current world map.
GetPlayerMapPosition("unit") - Returns the position of a unit on the current world map.
GetPlayerFacing() - Returns the direction the player is facing.
ProcessMapClick(x,y) - Passes a click to the client, which then calculates if the zone has to be changed.
SetDungeonMapLevel(level) - Sets which level of a multi-level map (Dalaran, dungeons, etc) is currently shown.
SetMapByID(id) - Set map by area id.
SetMapToCurrentZone() - Sets the current world map to the zone the player is presently in.
SetMapZoom(continentIndex[, zoneIndex]) - Sets the current world map to a specific continent and optionally zone.
SetupFullscreenScale() - Configures scale of full-screen views, such as the world map, to best fill screen.
UpdateMapHighlight(x,y) - Provides map rollover information for highlighting.
ZoomOut() - "Zooms out" of the current map: going from zone to continent to world view.

Merchant Functions

BuyMerchantItem(index[, qty]) - Buys an item from a merchant.
BuybackItem(index) - Buys back a sold item.
CanMerchantRepair() - Returns true if the merchant can repair items.
CloseMerchant() - Closes the merchant window.
GetBuybackItemInfo(index) - Returns information about the buyback item.
GetBuybackItemLink(index) - Returns an itemLink for the buyback item.
GetMerchantItemCostInfo (index) - Returns "alternative currency" information about an item.
GetMerchantItemCostItem (index, itemIndex) - Returns information about an "alternative currency" component of the price for a purchasable item.
GetMerchantItemInfo(index) - Returns information about the given purchasable item
GetMerchantItemLink(index) - Returns an itemLink for the given purchasable item
GetMerchantItemMaxStack(index) - Returns the maximum number of items in a stack.
GetMerchantNumItems() - Returns the number of items the merchant sells.
GetRepairAllCost()
HideRepairCursor()
InRepairMode() - Returns true if your cursor is in repair mode
PickupMerchantItem(index) - Places the item on the cursor.
RepairAllItems([guildBankRepair]) - Repairs all equipped and inventory items.
ShowMerchantSellCursor(index) - Changes the cursor to the merchant sell cursor.
ShowRepairCursor()
GetNumBuybackItems() - Returns number of items available for buyback

Movement Functions

Most of these functions may only be called on a hardware event from secure code.

FollowUnit("unit") - Follow an ally with the specified UnitID
PROTECTED CameraOrSelectOrMoveStart() - Begin "Left click" in the 3D world.
PROTECTED CameraOrSelectOrMoveStop([stickyFlag]) - End "Left click" in the 3D world.
PROTECTED JumpOrAscendStart() - Makes the player jump.
PROTECTED AscendStop() - Called when you release the jump key.
PROTECTED MoveBackwardStart - The player begins moving backward at the specified time.
PROTECTED MoveBackwardStop - The player stops moving backward at the specified time.
PROTECTED MoveForwardStart - The player begins moving forward at the specified time.
PROTECTED MoveForwardStop - The player stops moving forward at the specified time.
PROTECTED StrafeLeftStart - The player begins strafing left at the specified time.
PROTECTED StrafeLeftStop - The player stops strafing left at the specified time.
PROTECTED StrafeRightStart - The player begins strafing right at the specified time.
PROTECTED StrafeRightStop - The player stops strafing right at the specified time.
PROTECTED ToggleAutoRun - Turns auto-run on or off
PROTECTED ToggleRun - Toggle between running and walking.
PROTECTED TurnLeftStart - The player starts turning left at the specified time.
PROTECTED TurnLeftStop - The player stops turning left at the specified time.
PROTECTED TurnOrActionStart() - Begin "Right Click" in the 3D world.
PROTECTED TurnOrActionStop() - End "Right Click" in the 3D world.
PROTECTED TurnRightStart - The player starts turning right at the specified time.
PROTECTED TurnRightStop - The player stops turning right at the specified time.

Music Player Functions

These functions were added exclusively to the Mac client in Patch 1.12. The functions are protected and are only called through key bindings; thus they only serve to enable you to bind specific keys to control iTunes while using the WoW client.

PROTECTED MusicPlayer_BackTrack() - Go back a track.
PROTECTED MusicPlayer_NextTrack() - Go forward a track.
PROTECTED MusicPlayer_PlayPause() - Toggle play/pause.
PROTECTED MusicPlayer_VolumeDown() - Reduce music volume.
PROTECTED MusicPlayer_VolumeUp() - Increase music volume.

Pet Functions

PROTECTED CastPetAction(index) - Cast the corresponding pet skill.
ClosePetStables() - Close the pet stables user interface.
DropItemOnUnit("unit") - Drops an item from the cursor onto a unit.
GetPetActionCooldown(index) - Returns cooldown information for the pet action at the specificed pet action bar slot.
GetPetActionInfo(index) - Returns information on the pet action at the specified pet action bar slot.
GetPetActionSlotUsable(slot)
GetPetActionsUsable() - Returns a value indicating if the player's pet's actions can be used at this time.
GetPetExperience() - Returns the pet's current xp, and total xp required for next level.
GetPetFoodTypes() - Returns a list of the food types the player's pet can eat.
GetPetIcon() - Returns the path to the texture to use as the icon for the player's pet.
GetPetTimeRemaining() - Returns in milliseconds about some timeout for the player's pet.
GetStablePetFoodTypes(index) - Returns a list of the food types a specific stabled pet can eat.
GetStablePetInfo(index) - Returns information about a specific stabled pet.
HasPetSpells() - Returns true if the player has pet spells.
HasPetUI() - Returns 1 if the player has a pet User Interface.
PetAbandon() - Permanently abandons your pet.
PROTECTED PetAssistMode() - Set your pet to Assist mode.
PROTECTED PetAttack() - Instruct your pet to attack your target.
IsPetAttackActive() - Returns true if the pet is currently attacking.
PetStopAttack() - Stop the attack of the pet.
PetCanBeAbandoned() - Returns true if the pet is abandonable.
PetCanBeDismissed()
PetCanBeRenamed() - Returns true if the pet can be renamed.
PROTECTED PetDefensiveMode() - Set your pet in defensive mode.
PetDismiss() - Dismiss your pet.
PROTECTED PetFollow() - Instruct your pet to follow you.
PetHasActionBar() - Determine if player has a pet with an action bar.
PROTECTED PetPassiveMode() - Set your pet into passive mode.
PetRename("name") - Renames the pet.
PROTECTED PetWait() - Instruct your pet to remain still.
PickupPetAction(slot) - Drags an action from the specified pet action bar slot into the cursor.
PickupStablePet(index) - ?.
SetPetStablePaperdoll(modelObject) - ?.
PROTECTED TogglePetAutocast(index) - Toggles whether the specified pet ability should autocast or not.
PROTECTED ToggleSpellAutocast("spellName" | spellId, bookType) - Toggles whether the specified spell should autocast or not.
GetSpellAutocast("spellName" | spellId, bookType) - Check whether the specified spell autocasts or not.

Pet Battle Functions

These functions were introduced in Patch 5.0.4.

C_PetBattles.AcceptPVPDuel()
C_PetBattles.AcceptQueuedPVPMatch()
C_PetBattles.CanActivePetSwapOut()
C_PetBattles.CanPetSwapIn(petIndex)
C_PetBattles.CancelPVPDuel()
C_PetBattles.ChangePet(petIndex)
C_PetBattles.DeclineQueuedPVPMatch()
C_PetBattles.ForfeitGame()
C_PetBattles.GetAbilityEffectInfo(abilityID, turnIndex, effectIndex, effectName)
C_PetBattles.GetAbilityInfoByID(abilityID)
C_PetBattles.GetAbilityInfo(petOwner, petIndex, abilityIndex)
C_PetBattles.GetAbilityProcTurnIndex(abilityID, procType)
C_PetBattles.GetAbilityStateModification(abilityID, stateID)
C_PetBattles.GetAbilityState(petOwner, petIndex, actionIndex)
C_PetBattles.GetActivePet(petOwner)
C_PetBattles.GetAllEffectNames()
C_PetBattles.GetAllStates()
C_PetBattles.GetAttackModifier(petType, enemyPetType)
C_PetBattles.GetAuraInfo(petOwner, petIndex, auraIndex)
C_PetBattles.GetBattleState()
C_PetBattles.GetBreedQuality(petOwner, petIndex)
C_PetBattles.GetDisplayID(petOwner, petIndex)
C_PetBattles.GetForfeitPenalty()
C_PetBattles.GetHealth(petOwner, petIndex)
C_PetBattles.GetIcon(petOwner, petIndex)
C_PetBattles.GetLevel(petOwner, petIndex)
C_PetBattles.GetMaxHealth(petOwner, petIndex)
C_PetBattles.GetName(petOwner, petIndex)
C_PetBattles.GetNumAuras(petOwner, petIndex)
C_PetBattles.GetNumPets(petOwner)
C_PetBattles.GetPVPMatchmakingInfo()
C_PetBattles.GetPetSpeciesID(petOwner, petIndex)
C_PetBattles.GetPetType(petOwner, petIndex)
C_PetBattles.GetPlayerTrapAbility()
C_PetBattles.GetPower(petOwner, petIndex)
C_PetBattles.GetSelectedAction()
C_PetBattles.GetSpeed(petOwner, petIndex)
C_PetBattles.GetStateValue(petOwner, petIndex, stateID)
C_PetBattles.GetTurnTimeInfo()
C_PetBattles.GetXP(petOwner, petIndex)
C_PetBattles.IsInBattle()
C_PetBattles.IsPlayerNPC(petOwner)
C_PetBattles.IsSkipAvailable()
C_PetBattles.IsTrapAvailable()
C_PetBattles.IsWaitingOnOpponent()
C_PetBattles.IsWildBattle()
C_PetBattles.SetPendingReportBattlePetTarget(petIndex)
C_PetBattles.SetPendingReportTargetFromUnit(unit)
C_PetBattles.ShouldShowPetSelect()
HW C_PetBattles.SkipTurn()
C_PetBattles.StartPVPDuel()
C_PetBattles.StartPVPMatchmaking()
C_PetBattles.StopPVPMatchmaking()
HW C_PetBattles.UseAbility(actionIndex)
HW C_PetBattles.UseTrap()

Pet Journal Functions

These functions were introduced in Patch 5.0.4.

C_PetJournal.AddAllPetSourcesFilter() - Enables all pet sources in the filter menu.
C_PetJournal.AddAllPetTypesFilter() - Enables all pet types in the filter menu.
C_PetJournal.CagePetByID(petID) - Puts the pet into a cage.
C_PetJournal.ClearAllPetSourcesFilter() - Clears all pet sources in the filter menu.
C_PetJournal.ClearAllPetTypesFilter() - Clears all pet types in the filter menu.
C_PetJournal.ClearSearchFilter() - Clears the search box in the pet journal.
C_PetJournal.GetBattlePetLink(petID) - Returns a battle pet hyperlink for the given petID.
C_PetJournal.GetNumPetSources() - Returns information about the number of pet sources.
C_PetJournal.GetNumPetTypes() - Returns information about the number of pet types.
C_PetJournal.GetNumPets() - Returns information about the number of battle pets.
C_PetJournal.GetOwnedBattlePetString(speciesID) - Returns string about numbers of battle pets in journal.
C_PetJournal.GetPetAbilityInfo(abilityID)
C_PetJournal.GetPetAbilityList(speciesID[, idTable[, levelTable]])
C_PetJournal.GetPetInfoByIndex(index) - Returns information about a battle pet.
C_PetJournal.GetPetInfoByPetID(petID) - Returns information about a battle pet.
C_PetJournal.GetPetInfoBySpeciesID(speciesID) - Returns information about a pet species.
C_PetJournal.GetPetLoadOutInfo(slotIndex)
C_PetJournal.GetPetStats(petID) - Returns a pet's stats from the Pet Journal
C_PetJournal.GetSummonedPetGUID() - Returns information about a battle pet.
C_PetJournal.IsFindBattleEnabled()
C_PetJournal.IsFlagFiltered(flag) - Returns true if the selected flag is unchecked.
C_PetJournal.IsJournalReadOnly()
C_PetJournal.IsJournalUnlocked()
C_PetJournal.IsPetSourceFiltered(index) - Returns true if the pet source is unchecked.
C_PetJournal.IsPetTypeFiltered(index) - Returns true if the pet type is unchecked.
C_PetJournal.PetCanBeReleased(petID) - Returns true if you can release the pet.
C_PetJournal.PetIsCapturable(petID)
C_PetJournal.PetIsFavorite(petID) - Returns true if this pet is marked as a favorite.
C_PetJournal.PetIsHurt(petID)
C_PetJournal.PetIsLockedForConvert(petID)
C_PetJournal.PetIsRevoked(petID)
C_PetJournal.PetIsSlotted(petID)
C_PetJournal.PetIsSummonable(petID) - Returns true if you can summon this pet.
C_PetJournal.PetIsTradable(petID) - Returns whether or not a pet from the Pet Journal is tradable.
C_PetJournal.PickupPet(petID)
C_PetJournal.ReleasePetByID(petID) - Releases the pet.
C_PetJournal.SetAbility(slotIndex, spellIndex, petSpellID)
C_PetJournal.SetCustomName(petID, customName) - Sets a custom name for the pet.
C_PetJournal.SetFavorite(petID, value) - Sets (or clears) the pet as a favorite.
C_PetJournal.SetFlagFilter(flag, value) - Sets the flags in the filter menu.
C_PetJournal.SetPetLoadOutInfo(slotIndex, petID)
C_PetJournal.SetPetSourceFilter(index, value) - Sets the pet source in the filter menu.
C_PetJournal.SetPetTypeFilter(index, value) - Sets the pet type in the filter menu.
C_PetJournal.SetSearchFilter(text) - Sets the search filter in the pet journal.
NOCOMBAT C_PetJournal.SummonPetByGUID(petID) - Summons (or dismisses) a pet.

Petition Functions

Petitions are signup documents for guilds and arena teams. Some functions below only apply to a particular petition type

CanSignPetition() - Returns nil if the player cannot sign the current petition.
ClosePetition() - Closes the current petition.
GetNumPetitionNames() - Gets the number of signatures on the current petition.
GetPetitionInfo() - Retrieves information about the current petition.
GetPetitionNameInfo(index) - Retrieves information about a signature on the petition.
OfferPetition() - Offers a petition to your target, inviting them to join your would-be guild/arena team.
RenamePetition("name") - Renames the current petition.
SignPetition() - Signs the current petition.
TurnInGuildCharter() - Founds a guild.

Profession Functions

AbandonSkill(index) - The player abandons a skill.
GetProfessionInfo(index) - Gets details on a profession from its index including name, icon, and skill level.
GetProfessions() - Gives all of the current character's professions.

PvP Functions

Functions related to PvP and Honor

GetHolidayBGHonorCurrencyBonuses() - Return rewards for participating in a Call to Arms (holiday) battleground. (added in 3.3.3)
GetInspectHonorData() - Return honor info for the inspected unit (if available).
GetPVPLifetimeStats() - Get your PvP/Honor statistics for your lifetime.
GetPVPSessionStats() - Get your PvP/Honor statistics for this session.
GetPVPYesterdayStats() - Get your PvP/Honor statistics for yesterday.
GetRandomBGHonorCurrencyBonuses() - Returns rewards for participating in a random battleground. (added in 3.3.3)
HasInspectHonorData() - Determine if the inspected unit's honor data is available.
RequestInspectHonorData() - Request honor data for inspected unit.
StartWarGame(target,area) - Starts a WarGame.
UnitPVPName("unit") - Returns the unit's combined title and name (e.g., "Playername, the Insane").

Quest Functions

See also Gossip Functions

AbandonQuest - Abandon the specified quest.
AcceptQuest - Accept the specified quest.
AddAutoQuestPopUp(QuestID,Type) - Adds quest to an internal list of quests for offer/completion popup notification. (4.0.1)
AddQuestWatch(questIndex[, watchTime]) - Add a quest to the watch list.
CloseQuest() - Closes the shown quest.
CollapseQuestHeader - Collapses a quest header.
CompleteQuest - Complete the specified quest.
ConfirmAcceptQuest - Accepts an offered quest that has been started by a party member; usually escort quests. (Might only be available after QUEST_ACCEPT_CONFIRM event.)
DeclineQuest - Declines the currently offered quest.
ExpandQuestHeader - Expands a quest header.
GetAbandonQuestName - Gets the name of a quest while it is being abandoned.
GetActiveLevel(index) - Gets the level of an active quest (only available after QUEST_GREETING event).
GetActiveTitle(index) - Gets the title of an active quest (only available after QUEST_GREETING event).
GetAutoQuestPopUp(Index) - Retrieves quest info by index that added using AddAutoQuestPopUp. (4.0.1)
GetAvailableLevel(index) - Gets the level of an available quest (only available after QUEST_GREETING event).
GetAvailableQuestInfo(index) - Returns metadata (quest type) about an available quest. (added in 3.3.3)
GetAvailableTitle(index) - Gets the title of an available quest (only available after QUEST_GREETING event).
GetDailyQuestsCompleted - Return the current number of daily quests completed today.
GetGreetingText()
GetNumActiveQuests - Gets the number of currently active quests from this NPC (only available after QUEST_GREETING event).
GetNumAutoQuestPopUps() - Retrieves number of quests added via AddAutoQuestPopUp. (4.0.1)
GetNumAvailableQuests - Gets the number of currently available quests from this NPC (only available after QUEST_GREETING event).
GetNumQuestChoices - Returns the number of rewards available for choice for quest currently in gossip window.
GetNumQuestItems - Returns the number of items necessary to complete a particular quest.
GetNumQuestLeaderBoards([questIndex]) - Returns the number of available quest objectives.
GetNumQuestLogChoices - Returns the number of options someone has when getting a quest item.
GetNumQuestLogEntries - Returns the number of entries in the quest log.
GetNumQuestLogRewards - Returns the count of the rewards for a particular quest.
GetNumQuestRewards - Returns number of reward items (those that you always get) for quest currently in gossip window.
GetNumQuestWatches() - Returns the number of quest watches active.
GetObjectiveText() - Gets the objective of the current quest.
GetProgressText() - Returns quest progress text, displayed by the NPC before the player pressed "Continue".
GetQuestBackgroundMaterial - Returns the material string associated with the particular quest.
GetQuestGreenRange() - Return for how many levels below you quests and mobs remain "green" (i.e. yield xp)
GetQuestID - Returns the ID of the quest most recently displayed in a gossip frame, even after that frame is closed.
GetQuestIndexForTimer(timerID) - Gets the quest log index of a quest being timed.
GetQuestIndexForWatch(watchIndx) - Return the quest index for the specified watch
GetQuestItemInfo - Returns basic information about the reward/choice/required item for quest currently in gossip window.
GetQuestItemLink - Returns an itemLink for a selected quest reward/choice/required item for quest currently in gossip window.
GetQuestLink(index) - Returns a QuestLink for a quest
GetQuestLogChoiceInfo - Returns a bunch of data about a quest reward choice from the quest log.
GetQuestLogGroupNum() - Returns suggested number of players for quest selected currently in log or 0 if there's no suggestion.
GetQuestLogIndexByID(questIndex) - Returns the index of the specified questID in the quest log.
GetQuestLogItemLink - Returns item link for selected quest reward/choice/required item from quest log.
GetQuestLogLeaderBoard(ldrIndex[, questIndex]) - Gets information about the objectives for a quest.
GetQuestLogPushable - Returns true if the currently loaded quest in the quest window can be shared.
GetQuestLogQuestText - Returns the description and objectives required for the specified quest.
GetQuestLogRequiredMoney - Returns amount of money required for quest completion from quest log.
GetQuestLogRewardInfo - Returns a pile of reward item info from the quest log.
GetQuestLogRewardMoney - Returns a number representing the amount of copper returned by a particular quest.
GetQuestLogRewardSpell - Returns name and texture of spell awarded for quest completion from quest log.
GetQuestLogRewardTalents - Returns number of talents awarded for quest completion from quest log.
GetQuestLogSelection - Returns a number associated with the QuestLogSelection index.
GetQuestLogTimeLeft - Returns the seconds remaining on the current quest timer.
GetQuestLogTitle(index) - Returns verbose data about a particular quest log entry: level requirement, tag, suggested group, completed status, etc.
GetQuestMoneyToGet - Returns amount of money required for quest currently displayed in gossip.
GetQuestResetTime - Returns number of seconds until quest reset.
GetQuestReward(rewardIndex) - Completes the quest with the specified quest reward.
GetQuestsCompleted([table]) - Returns table of completed quests.
GetQuestText - Gets the description of the current quest.
GetQuestTimers - Returns all of the quest timers currently in progress.
GetRewardMoney() - Returns a amount of copper rewarded for completion of quest displayed in gossip.
GetRewardSpell() - Returns name and texture of spell awarded for quest completion for quest currently in gossip window.
GetRewardTalents() - Returns number of talents awarded for quest completion for quest currently in gossip window.
GetRewardText() - Returns quest reward text, displayed by the NPC before the player hits "Complete Quest".
GetRewardTitle() - Returns the title awarded by the currently displayed quest.
GetRewardXP() - Returns the amount of experience awarded by the currently displayed text.
GetTitleText - Retrieves the title of the quest while talking to the NPC about it.
IsCurrentQuestFailed - ?.
IsQuestCompletable - Returns true if a quest is possible to complete.
IsQuestFlaggedCompleted(questID) - Determine if a quest has been completed.
IsQuestWatched(questIndex) - Determine if the specified quest is watched.
IsUnitOnQuest(questIndex, "unit") - Determine if the specified unit is on the given quest.
QuestChooseRewardError - Throws an error when the quest choose reward method doesn't work.
QuestFlagsPVP() - Determine if the quest will flag you you for PvP when accepted.
QuestGetAutoAccept() - Returns whether the last-offered quest was automatically accepted. (3.3.0)
QuestIsDaily() - Returns whether the offered quest is a daily quest. (3.3.3)
QuestIsWeekly() - Returns whether the offered quest is a weekly quest. (3.3.3)
QuestLogPushQuest - Initiates the sharing of the currently viewed quest in the quest log.
RemoveQuestWatch(questIndex) - Removes a quest watch by questIndex.
SelectActiveQuest - Selects an active quest from the NPC (only available after QUEST_GREETING event).
SelectAvailableQuest - Selects an available quest from the NPC (only available after QUEST_GREETING event).
SelectQuestLogEntry - Sets the selected quest, required for most GetQuest functions.
SetAbandonQuest - Called before AbandonQuest.
ShiftQuestWatches(id1, id2) - Exchanges the order of two watched quests. (3.3.3)
SortQuestWatches() - Sorts the watched quests according to proximity and returns whether the order changed since last sorting. (3.3.3)
WatchFrame_Update - Updates the watch frame display.

Raid Functions

See also: #Group Functions
ClearRaidMarker(index) - Removes a raid marker from the world. (4.0.1)
ConvertToParty() - Converts a raid group with 5 or less members to a party. (4.0.1)
ConvertToRaid() - Converts a party to a raid.
DemoteAssistant("unit") - Demotes player from assistant status. Requires raid leadership.
GetAllowLowLevelRaid() - Returns whether joining low-level raids is enabled for the current character.
GetPartyAssignment("assignment") - Returns unitID of unit assigned to given role.
GetPartyAssignment("assignment", "unit") - Returns a value based on whether the unit is assigned to given role.
GetRaidRosterInfo(index) - Returns information about the members of your raid .
GetRaidTargetIndex("unit") - Get the raid target index assigned to a unit.
GetReadyCheckStatus("unit") - Returns a raid member's response to the current ready check.
PROTECTED PlaceRaidMarker(index) - Brings up a targeting circle to place a raid marker in the world.(4.0.1)
PromoteToAssistant("unit") - Promotes player to assistant status. Requires raid leadership.
RequestRaidInfo() - Returns information about which instances you are saved to.
PROTECTED SetPartyAssignment("assignment", player) (2.3.3)
SetAllowLowLevelRaid(allowed) - Controls whether the current character can join low-level raids.
SetRaidSubgroup(index, subgroup) - Move a raid member from his current subgroup into a different (non-full) subgroup.
PROTECTED SwapRaidSubgroup(index1, index2) - Swaps raid members into different groups.
SetRaidTarget("unit", index) - Sets a raid icon on a unit.
SetRaidTargetIcon("unit", index) - Sets or resets a raid icon a unit.
UnitInRaid("unit") - Returns 1 if unit is in your raid, nil if not.

Raid Browser Functions

Functions hidden behind and supporting the Raid Browser UI introduced in 3.3 See also: Dungeon Finder Functions and Looking For Group Functions

This is a very preliminary list of functions by perusing FrameXML\LFRFrame.lua|xml. Please edit and contribute if you know more about these =)

GetInstanceLockTimeRemainingEncounter(index) - returns bossName, texture, isKilled
RefreshLFGList()
SearchLFGGetEncounterResults(index, bossIndex) - returns bossName, texture, isKilled
SearchLFGGetJoinedID() - returns the currently selected raid ID or nil
SearchLFGGetNumResults() - returns numResults, totalResults
SearchLFGGetPartyResults(index, partyMemberIndex) - returns name, level, relationship, className, areaName, comment
SearchLFGGetResults(index) - returns name, level, areaName, className, comment, partyMembers, status, class, encountersTotal, encountersComplete, isLeader, isTank, isHealer, isDamage
HW SearchLFGJoin(typeID, raidID) - enters a search into the Raid Browser
SearchLFGLeave() - removes yourself from looking through the Raid Browser. Equivalent to selecting "none" in the Raid Browser
SearchLFGSort(sortType)
SetLFGComment(comment) - sets the comment in the raid browser


These also appear to be used by the Raid Browser, as well as the Dungeon Finder:

ClearAllLFGDungeons()
JoinLFG()
LeaveLFG()
RequestLFDPartyLockInfo()
RequestLFDPlayerLockInfo()
SetLFGDungeon(id)
SetLFGDungeonEnabled(dungeonID, isEnabled)
SetLFGHeaderCollapsed(headerID, isCollapsed)

RealID (BNet) Functions

These functions were added in Patch 3.3.5.

BNAcceptFriendInvite(ID)
BNConnected() - Returns your battle.net connected state (True|False)
BNCreateConversation(id,id)
BNDeclineFriendInvite(ID)
BNFeaturesEnabled()
BNFeaturesEnabledAndConnected()
BNGetBlockedInfo(index)
BNGetBlockedToonInfo(index)
BNGetConversationInfo(chatTarget) - returns unknown
BNGetConversationMemberInfo(conversationID, memberID) - returns accountID, toonID, name
BNGetCustomMessageTable(table)
BNGetFOFInfo(presenceID, mutual, non-mutual, index) - returns presenceID, givenName, surname, isFriend
BNGetFriendInfo(friendIndex) - returns presenceID, givenName, surname, character name, character ID, game client, connected, status, broadcast and note of the friend
BNGetFriendInfoByID(presenceID) - returns presenceID, givenName, surname, character name, character ID, game client, connected, status, broadcast and note of the friend
BNGetFriendInviteInfo(menuValue) - returns presenceID, givenName, surname
BNGetFriendToonInfo(friendIndex, toonIndex)
BNGetInfo() - returns presenceID, toonID, currentBroadcast, bnetAFK, bnetDND
BNGetMatureLanguageFilter()
BNGetMaxPlayersInConversation()
BNGetNumBlocked()
BNGetNumBlockedToons()
BNGetNumConversationMembers(conversationID)
BNGetNumFOF(ID,mutual,non)
BNGetNumFriendInvites()
BNGetNumFriends() - returns numBNetTotal, numBNetOnline
BNGetNumFriendToons(index)
BNGetSelectedBlock()
BNGetSelectedFriend()
BNGetSelectedToonBlock()
BNGetToonInfo(toonID or presenceID) - returns hasFocus, toonName, client, realmName, realmID, faction, race, class, guild, zoneName, level, gameText
BNInviteToConversation(target, player)
BNIsBlocked(ID)
BNIsFriend(presenceID)
BNIsSelf(presenceID) - Returns true if the specified presenceID is your own, false otherwise.
BNIsToonBlocked(ID)
BNLeaveConversation(channel)
BNListConversation(channel)
BNRemoveFriend(ID)
BNReportFriendInvite(ID)
BNReportPlayer(presenceID, type, comments)
BNSendConversationMessage(channel,text)
BNSendFriendInvite(text, noteText)
BNSendFriendInviteByID(ID, noteText)
BNSendGameData(id, addonPrefix, text) - BNet equivalent of SendAddonMessage -- Added in Patch 5.4.7
BNSendWhisper(id, text)
BNSetAFK()
BNSetBlocked(ID, bool)
BNSetCustomMessage(text)
BNSetDND()
BNSetFocus()
BNSetFriendNote(ID, noteText)
BNSetMatureLanguageFilter(bool)
BNSetSelectedBlock(index)
BNSetSelectedFriend(index)
BNSetSelectedToonBlock(index)
BNSetToonBlocked(ID, bool)
GetAutoCompletePresenceID(name)
IsBNLogin()
UI CanCooperateWithToon(toonID)

Recruit-a-Friend Functions

Note: Only usable by people that have been referred or have referred someone.

AcceptLevelGrant() - Accepts a level grant proposal.
DeclineLevelGrant() - Declines a level grant proposal.
IsReferAFriendLinked("unit") - Returns whether the unit is linked to the player via RaF.
CanGrantLevel("unit") - Returns whether you can grant levels to a particular player.
GrantLevel("unit", level) - Grant a custom amount of levels to a RaF-linked player.
CanSummonFriend("unit") - Returns whether you can RaF summon a particular unit.
SummonFriend("unit") - Summons a player using the RaF system.
GetSummonFriendCooldown() - Returns the cooldown (start, duration) of the RaF Summon Friend ability.

Reforging Functions

Reforging was added in Patch 4.0.1

CloseReforge()
GetDestinationReforgeStats(statId, value) - Returns the reforge item's dest stats
GetReforgeItemInfo() - Returns reforgeID, icon, name, quality, bound, cost
GetReforgeItemStats() - Returns the reforge item's general stats
GetReforgeOptionInfo(currentReforgeId) - Returns information about the change currently active on an item.
GetSourceReforgeStats() - Returns the reforge item's source stats
ReforgeItem(reforgeID) - Reforges the current item
SetReforgeFromCursorItem() - Sets the item currently picked up by the mouse cursor for reforging

Script Profiling Functions

Note: CPU profiling is disabled by default since it has some overhead. CPU profiling is controlled by the scriptProfile cvar, which persists across sessions, and takes effect after a UI reload. Memory profiling is always available. These functions have been added in Patch 2.1.

GetAddOnCPUUsage(index or "name") - Returns the total time used by the specified AddOn. This returns a cached value calculated by UpdateAddOnCPUUsage().
GetAddOnMemoryUsage(index or "name") - query an addon's memory use (in K, precision to 1 byte) - This returns a cached value calculated by UpdateAddOnMemoryUsage().
GetEventCPUUsage(["event"]) - Returns the time used and number of times the specified event has been triggered. If 'event' is omitted, the time and count will be totals across all events.
GetFrameCPUUsage(frame[, includeChildren]) - Returns the time used and number of function calls of any of the frame's script handlers. If 'includeChildren' is true or omitted, the time and call count will include the handlers for all of the frame's children as well.
GetFunctionCPUUsage(function[, includeSubroutines]) - Returns the time used and number of times the specified function was called. If 'includeSubroutines' is true or omitted, the time includes both the time spent in the function and subroutines called by the function. If it is false, then time is only the time actually spent by the code in the function itself.
GetScriptCPUUsage() - Returns the total time used by the scripting system
ResetCPUUsage() - Reset all CPU profiling statistics to zero.
UpdateAddOnCPUUsage() - Scan through the profiling data and update the per-addon statistics
UpdateAddOnMemoryUsage() - Scan through memory profiling data and update the per-addon statistics

Security and Protection Functions

issecure() - Determine if the current environment is secure.
forceinsecure() - Taint the current execution path.
issecurevariable([table,] "name") - Determine if the specified variable is secure.
securecall(function or "functionName", ...) - Call a function from a secure environment without risking secure status.
hooksecurefunc([table,] "functionName", hookfunc) - Creates a secure 'post hook' for the named function. The hookfunc is invoked after the original function, and receives the same parameters. Return values from hookfunc are discarded. This is the only safe way to hook functions that execute protected functionality.
InCombatLockdown() - Returns true if the in-combat AddOn restrictions are active.
scrub(...) - returns the argument list with non-number/boolean/string values changed to nil.

Settings Functions

CombatTextSetActiveUnit(unit) - changes the entity for which COMBAT_TEXT_UPDATE events fire.
DownloadSettings() - Download a backup of your settings from the server.
GetCVar("cVar") - Returns the current value of a console variable.
GetCVarDefault("cVar") - Returns the default value of a console variable.
GetCVarBool("cVar") - Returns the value of the cvar as 1 or nil instead of requiring you to compare the cvar value with "0" or "1"
GetCVarInfo("cVar") - returns name, defaultValue, serverStoredAccountWide, serverStoredPerCharacter
GetCurrentMultisampleFormat() - Get the current in-use multi-sample (antialias) format.
GetCurrentResolution() - Get the index of the current screen resolution.
GetGamma()
GetMultisampleFormats() - Get the available multi-sample (antialias) formats..
GetRefreshRates(x)
GetScreenResolutions()
GetVideoCaps()
IsThreatWarningEnabled() - returns whether threat warnings should currently be displayed.
RegisterCVar("cVar"[, value]) - Registers a variable for use with the GetCVar and SetCVar functions.
ResetPerformanceValues()
ResetTutorials()
SetCVar("cVar", value[, "scriptCVar"]) - Set the value of a variable in config.wtf
SetEuropeanNumbers(flag) - Sets the decimal separator to a comma instead of a dot
SetGamma(value)
SetLayoutMode()
SetMultisampleFormat(index) - Set the multi-sample (antialias) format to use.
SetScreenResolution(x)
ShowCloak(flag) - Set whether player's cloak is displayed.
ShowHelm(flag) - Set whether player's helm is displayed.
ShowNumericThreat() - Returns 1 if detailed threat information should be shown on unit frames.
ShowingCloak() - Return 1 if player's cloak is displayed, nil otherwise.
ShowingHelm() - Return 1 if player's helm is displayed, nil otherwise.
UploadSettings() - Uploads a backup of your settings to the server.

Specialization Functions

GetActiveSpecGroup([isInspect]) - Returns the index of the current active specialization/talent/glyph group.
GetArenaOpponentSpec() -
GetInspectSpecialization("unit") - Returns a number representing the current active specialization of a given unit.
GetNumArenaOpponentSpecs() -
GetNumSpecGroups([isInspect]) - Returns the number of specialization group (dual specs) the player has.
GetNumSpecializations([isInspect[, isPet]]) - Returns the number of available specializations.
GetNumSpecializationsForClassID(classID) - Returns the number of specializations available to a particular class.
GetSpecialization([isInspect[, isPet[, specGroup]]]) - Returns the index of the player's current specialization.
GetSpecializationInfo(specIndex[, isInspect[, isPet]]) - Returns information about the player's specializations.
GetSpecializationInfoByID(specID) - Returns information about the specified specialization.
GetSpecializationInfoForClassID(classID, specIndex) - Returns information about the specified specialization.
GetSpecializationMasterySpells(specIndex[, isInspect[, isPet]]) - Returns the mastery spellID of the current player's specialization.
GetSpecializationRole(specIndex[, isInspect[, isPet]]) - Returns the role a specialization is intended to perform.
GetSpecializationRoleByID(specID) - Returns the role a specialization is intended to perform.
GetSpecializationSpells(specIndex[, isInspect[, isPet]]) - Returns the spellID of key abilities used by the specified specialization.
GetSpecsForSpell("spellName" or spellIndex, "bookType") - Returns the specs for which the specified spell can be used.
IsSpellClassOrSpec("spellName" or spellIndex, "bookType") - Returns whether a given spell is specific to a specialization and/or class.
NOCOMBAT SetActiveSpecGroup(groupIndex) - Changes the active specialization group.
NOCOMBAT SetSpecialization(specIndex [, isPet]) - Selects a specialization.
NOCOMBAT UnlearnSpecialization(specIndex [, isPet]) -

Spell Functions

PROTECTED CastShapeshiftForm(index)
PROTECTED CastSpell(spellIndex, "bookType") - Cast the spell in the specified spell book slot.
PROTECTED CastSpellByName("name"[, "target"]) - Cast the specified spell by display name.
GetMultiCastTotemSpells(totemslot) - Returns a list of spellIDs that are applicable for the specified totem slot (1-4) (added in 3.2)
GetNumShapeshiftForms()
GetNumSpellTabs() - Returns the total number of tabs in the user's spellbook.
GetQuestLogRewardSpell - ?.
GetRewardSpell - ?.
GetShapeshiftForm(unknown) - returns zero-based index of current form/stance
GetShapeshiftFormCooldown(index)
GetShapeshiftFormID() - returns the current shapeshift form as a constant. If the player is not shapeshifted it returns nil.
GetShapeshiftFormInfo(index) - Retrieves information about an available ShapeshiftForm or Stance.
GetSpellAutocast("spellName" | spellId, bookType) - Check whether the specified spell autocasts or not.
GetSpellBookItemInfo(spellID, "bookType") - Returns the spell's type and spellID for a spell in the player's spellbook.
GetSpellBookItemName(spellID, "bookType") - Returns the spell name and spell rank for a spell in the player's spellbook.
GetSpellCharges(spellId | spellName) - Returns information about the charges of a charge-accumulating player ability.
GetSpellCooldown(spellName | spellID, "bookType") - Retrieves data on the cooldown of a specific spell.
GetSpellInfo(spellId | spellName | spellLink) - Returns the spell's info, including name, cost, icon, cast time, and range.
GetSpellLink(spellName, spellRank) - Returns the spell's link. (2.4)
GetSpellTabInfo(spellbookTabNum) - Returns information about the specified spellbook tab.
GetSpellTexture(spellName | spellID, "bookType") - Returns the texture used for the spell's icon.
GetTotemInfo(slot) - Returns information about a totem.
IsAttackSpell(spell) - Returns 1 if the spell is the "Attack" spell.
IsAutoRepeatSpell(spell) -
IsPassiveSpell(spellID, "bookType") - Returns whether the icon in your spellbook is a Passive ability. Formerly IsSpellPassive(spell).
IsSpellInRange("spellName", [unit]) - Is nil for no valid target, 0 for out of range, 1 for in range.
IsSpellKnown(spellID, isPetSpell) - Returns whether the player (or pet) knows the given spell.
IsSpellOverlayed(spellID) - Returns whether the spell is currently affected by a proc (glow highlighting).
IsUsableSpell(spell) -
PickupSpell("spellName" | spellID, "bookType") - Loads an action button onto the cursor to be dropped into a quickbar slot.
UI QueryCastSequence("sequence") - Returns index, item, spell for the spell/item that will be used next if the cast sequence is executed.
PROTECTED SetMultiCastSpell(actionID,spellID) - Assigns a spellID to a multicast (totem bar) actionID. (added in 3.2)
SpellCanTargetUnit("unit") - Returns true if the spell awaiting target selection can be cast on the specified unit.
SpellHasRange(spell) - Returns true if the specified spell has a ranged effect (i.e. requires a target).
SpellIsTargeting() - Returns true if a spell has been cast and is awaiting target selection.
PROTECTED SpellStopCasting() - Stops the current spellcast.
PROTECTED SpellStopTargeting() - Cancels the spell awaiting target selection.
PROTECTED SpellTargetUnit("unit") - Casts the spell awaiting target selection on the specified unit.
PROTECTED ToggleSpellAutocast("spellName" | spellId, bookType) - Toggles whether the specified spell should autocast or not. This is used for some pet abilities.
UnitCastingInfo("unit") - Returns information about the spell currently being cast by the specified unit.
UnitChannelInfo("unit") - Returns information about the spell currently being channeled by the specified unit.

System Functions

ConsoleExec("command") - Execute a console command.
DetectWowMouse() - Attempts to detect the world of warcraft MMO mouse.
GetBuildInfo() - Returns information about current client build.
geterrorhandler() - Returns the currently set error handler.
GetCurrentKeyBoardFocus() - Returns the [editbox] widget currently handling keyboard events.
GetExistingLocales() - Returns a list of installed language packs.
GetFramerate() - Returns the current framerate (full precision)
GetGameTime() - Returns the time in-game.
GetLocale() - Returns client locale, example 'enUS'.
GetCursorPosition() - Returns the cursor's position on the screen.
GetNetStats() - Get bandwidth and latency network information.
GetRealmName() - returns the name of the server a user is logged in to
GetScreenHeight() - Returns the height of the window in pixels.
GetScreenWidth() - Returns the width of the window in pixels.
UI GetText() - Used to localize some client text.
GetTime() - Returns the system uptime in seconds (millisecond precision).
IsAltKeyDown() - Returns true if the alt key is currently depressed.
InCinematic()
IsControlKeyDown() - Returns true if the control key is currently depressed.
IsDebugBuild() - ?
IsDesaturateSupported() - ?
IsLeftAltKeyDown() - Returns true if the left alt key is currently depressed.
IsLeftControlKeyDown() - Returns true if the left control key is currently depressed.
IsLeftShiftKeyDown() - Returns true if the left shift key is currently depressed.
IsLinuxClient() - Boolean - Returns true if WoW is being run on Linux.
IsLoggedIn() - Returns nil before the PLAYER_LOGIN event has fired, 1 afterwards.
IsMacClient() - Returns true if WoW is being run on Mac.
IsOnTournamentRealm() - Returns true if currently on a tournament realm, nil otherwise.
IsRightAltKeyDown() - Returns true if the right alt key is currently depressed.
IsRightControlKeyDown() - Returns true if the right control key is currently depressed.
IsRightShiftKeyDown() - Returns true if the right shift key is currently depressed.
IsShiftKeyDown() - Returns true if the shift key is currently depressed.
IsStereoVideoAvailable() - added in 3.0.8
IsWindowsClient() - Returns true if WoW is being run on Windows.
OpeningCinematic() - Shows the opening movie for a player's race
PlayMusic() - Plays the specified mp3.
PlaySound() - Plays the specified built-in sound effect.
PlaySoundFile() - Plays the specified sound file.
HW ReloadUI() - Reloads the UI from source files
RepopMe() - The "Release Spirit" button. Sends you to the graveyard when dead.
RequestTimePlayed() - Request a summary of time played from the server.
RestartGx() - Restarts the graphical engine. Needed for things such as resolution changes to take effect.
RunScript("script") - Execute "script" as a block of Lua code.
Screenshot() - Takes a screenshot.
UI SecondsToTime - Converts a number of seconds into a readable days / hours / etc. formatted string.
seterrorhandler(function) - Set the error handler to the given parameter.
StopCinematic()
StopMusic() - Stops the currently playing mp3.
UI UIParentLoadAddOn("AddOnName") - Loads or Reloads the specified AddOn, and pops up an error message if it fails to load for any reason.
UI TakeScreenshot() - Takes a screenshot.
UI _ERRORMESSAGE(value) - Displays the script error dialog with optional text
debuginfo() - Output win32 debug text. Freeware debug message viewer: DebugView (Has no effect on live server.)
UI message("text") - Displays a message box with your text message and an "Okay" button.

Talent Functions

CheckTalentMasterDist() - Returns nil if the player is too far away from the talent master to use the talent methods.
ConfirmTalentWipe() - Confirms freeing all talent points.
GetMaxTalentTier() - Returns the number of available talent tiers.
GetNumTalents([inspect]) - Returns the maximum talent slot index.
GetNumUnspentTalents() - Returns the number of unspent talents.
GetTalentClearInfo() - Returns information about the current cost of unlearning a talent
GetTalentInfo(talentID[,isInspect[,specGroup[,inspectID[, classID]]]]) - Returns information about a talent.
GetTalentLink(talentID[,isInspect[,specGroup[,inspectID[, classID]]]]) - Returns the talent link.
GetTalentRowSelectionInfo(tier) - Returns information about the player's talent selection in the specified talent tier.
IsTalentSpell(slot, bookType) - Returns whether or not the specified spell is learned from a talent.
REMOVED LearnTalent(tabIndex,talentIndex) - Learns a talent from the talent tree. Renamed to LearnTalents (5.0.4)
NOCOMBAT LearnTalents(talentID1, talentID2, etc..) - Learns the talents listed.
PickupTalent(talentID) - Grabs the selected talent spell for placement on an action bar.
NOCOMBAT RemoveTalent(talentID) - Removes the specified talent.

Targeting Functions

PROTECTED AssistUnit("unit") - Instructs your character to assist the specified unit.
PROTECTED AttackTarget() - Attacks the targetted unit.
PROTECTED ClearTarget() - Clears the selected target.
ClickTargetTradeButton(index)
PROTECTED TargetLastEnemy() - Selects the last targetted enemy as the current target.
PROTECTED TargetLastTarget() - Selects the last target as the current target.
PROTECTED TargetNearestEnemy([reverseFlag]) - Selects the nearest enemy as the current target.
PROTECTED TargetNearestEnemyPlayer([reverseFlag]) - Selects the nearest enemy player as the current target.
PROTECTED TargetNearestFriend([reverseFlag]) - Selects the nearest friendly unit as the current target.
PROTECTED TargetNearestFriendPlayer([reverseFlag]) - Selects the nearest friendly player as the current target.
PROTECTED TargetNearestPartyMember() - Selects the nearest Party member as the current target.
PROTECTED TargetNearestRaidMember() - Selects the nearest Raid member as the current target.
PROTECTED TargetUnit("unit") - Selects the specified unit as the current target.

Taxi Functions

CloseTaxiMap() - Closes the Flightpath Map.
DrawRouteLine(texture, canvas, startx, starty, endx, endy, width, relPoint) - Draws a line.
GetNumRoutes(slot) - Gets the number of hops between current-slot and slot.
NumTaxiNodes() - Returns the number of nodes (flight paths) on an open taxi map.
SetTaxiMap(frame) - ?.
TakeTaxiNode(slot) - Takes the named taxi node.
TaxiNodeCost(slot) - Returns the cost in copper of a node.
TaxiNodeGetType(slot) - Returns the status of a node.
TaxiGetSrcX(slot, hop) - ?.
TaxiGetSrcY(slot, hop) - ?.
TaxiGetDestX(slot, hop) - ?.
TaxiGetDestY(slot, hop) - ?.
TaxiNodeSetCurrent(slot) - Renumbers slots based on new current slot.
TaxiNodeName(slot) - Returns the name of a node.
TaxiNodePosition(slot) - Returns position (x,y) of node on the map.
UnitOnTaxi("unit") - Returns 1 if unit is on a taxi.

Toggle Functions

UI ToggleBackpack() - Toggles your backpack open/closed.
UI ToggleBag(bagID) - Opens or closes the specified bag.
UI ToggleCharacter(index) - Toggles the character pane to the specified frame.
UI ToggleFramerate - Show/Hide the FPS.
UI ToggleFriendsFrame([tabNumber]) - Opens/closes the friends pane (possibly on a specific tab).
PROTECTED UI ToggleGameMenu - Opens/closes the game menu. Triggers protected functions.
UI ToggleHelpFrame - Opens the Help Request frame.
UI ToggleKeyRing - Opens/closes the key ring.
UI ToggleMinimap - Turns the minimap display on/off.
UI TogglePVPUI - Opens/closes the PvP frame.
UI ToggleSpellBook("bookType") - Shows the spellbook. Can show your spells or your pet's.
UI ToggleTalentFrame - Opens the Talent frame.
UI ToggleAchievementFrame - Shows the achievements frame.

TradeSkill Functions

CloseTradeSkill() - Closes an open trade skill window.
CollapseTradeSkillSubClass(index) - Collapses the specified subclass header row.
DoTradeSkill(index[, repeatTimes]) - Performs the tradeskill a specified # of times.
ExpandTradeSkillSubClass(index) - Expands the specified subclass header row.
GetFirstTradeSkill() - Returns the index of the first non-header trade skill entry.
GetNumTradeSkills() - Get the number of trade skill entries (including headers).
GetTradeSkillCooldown(index) - Returns the number of seconds left for a skill to cooldown.
GetTradeSkillDescription(index) - Returns the description text of the indicated trade skill.
GetTradeSkillIcon(index) - Returns the texture name of a tradeskill's icon.
GetTradeSkillInfo(index) - Retrieves information about a specific trade skill.
GetTradeSkillInvSlotFilter(slotIndex) - Returns 1 if items corresponding to slotIndex are currently visible, otherwise nil.
GetTradeSkillInvSlots() - Returns a list of the available inventory slot types.
GetTradeSkillItemLink(index) - Returns the itemLink for a trade skill item.
GetTradeSkillLine() - Returns information about the selected skill line.
GetTradeSkillListLink() - Returns the TradeSkillLink for a trade skill.
GetTradeSkillNumMade(index) - Gets the number of items made in a single use of a skill.
GetTradeSkillNumReagents(tradeSkillRecipeId) - Returns the number of different reagents required.
GetTradeSkillReagentInfo(tradeSkillRecipeId, reagentId) - Returns data on the reagent, including a count of the player's inventory.
GetTradeSkillReagentItemLink(index, reagentId) - Returns the itemLink for one of the reagents needed to craft the given item
GetTradeSkillRecipeLink(index) - Returns the EnchantLink for a trade skill.
GetTradeSkillSelectionIndex() - Returns the Id of the currently selected trade skill, 0 if none selected.
GetTradeSkillSubClasses() - Returns a list of the valid subclasses.
GetTradeSkillTools(index) - Returns information about the tools needed for a tradeskill.
GetTradeskillRepeatCount() - Returns the number of times the current item is being crafted.
IsTradeskillTrainer() - Returns 1 if trainer is for a tradeskill.
IsTradeSkillLinked() - Returns true if you're inspecting a tradeskill link rather then looking at your own tradeskills
SelectTradeSkill(index) - Select a specific trade skill in the list.
SetTradeSkillInvSlotFilter(slotIndex, onOff[, exclusive] ) - Set the inventory slot type filter.
StopTradeSkillRepeat() - Stops creating additional queued items.
TradeSkillOnlyShowMakeable(onlyMakable) - Controls whether only recipes you have the reagents to craft are shown.

Tracking Functions

GetNumTrackingTypes() - Returns number of available tracking methods.
GetTrackingInfo(id) - Retrieves tracking information from specified id.
SetTracking(id,enabled) - Enables or disables a tracking method.

Trading Functions

HW AcceptTrade() - A pending trade will be accepted.
AddTradeMoney() - Adds the money dropped into the player's trade frame.
CancelTrade() - Declines the offer to trade with the other player.
CancelTradeAccept() - Cancels the trade attempt which required an accept.
ClickTargetTradeButton(index)
ClickTradeButton(index) - Equivalent of a mouseclick on the trade window buttons [1-7]
CloseTrade() - Closes the trade.
GetPlayerTradeMoney - Returns the amount of money the player has in the trade window.
GetTargetTradeMoney - Returns the amount of money in the trade frame of the target player.
GetTradePlayerItemInfo(id) - Returns information about a trade item.
GetTradePlayerItemLink(id) - Returns an itemLink for the given item in your side of the trade window (if open)
GetTradeTargetItemInfo(id) - Returns information about a trade item.
GetTradeTargetItemLink(id) - Returns an itemLink for the given item in the other player's side of the trade window (if open)
InitiateTrade(UnitId) - Asks the specified unit to trade.
PickupPlayerMoney(copper) - Picks up an amount of money from the player.
PickupTradeMoney(copper) - Picks up an amount of money from the player's trade offer.
SetTradeMoney(copper) - Sets the amount of money offered as part of the player's trade offer.
ReplaceTradeEnchant() - Confirm the replacement of an enchantment via trade.

Training Functions

BuyTrainerService(index) - Used for buying new/upgrading professions, profession items and class skills.
CloseTrainer() - Closes the trainer window.
GetNumTrainerServices() - Get the number of the trainer services.
GetTrainerGreetingText() - Get the trainer's greeting text.
GetTrainerSelectionIndex() - Get the index of the selected trainer service.
GetTrainerServiceAbilityReq(trainerIndex,reqIndex) - Used for displaying the requirements to learn a new profession, profession skill or class skill.
GetTrainerServiceCost(index) - Returns the cost of a specific trainer service.
GetTrainerServiceDescription(index) - Returns the description of a specific trainer service.
GetTrainerServiceIcon(index) - Returns icon texture for a trainer service.
GetTrainerServiceInfo(index) - Returns information about a trainer service.
GetTrainerServiceItemLink(index) - Returns an item link for a trainer service.
GetTrainerServiceLevelReq(index) - Get the required level to learn the skill.
GetTrainerServiceNumAbilityReq - Get the maximum number of requirements that GetTrainerServiceAbilityReq() has.
GetTrainerServiceSkillLine(index) - ?.
GetTrainerServiceSkillReq(index) - Returns a String and Variable for the requirements of a specific trainer service.
GetTrainerServiceTypeFilter("filter") - Returns the status of a skill filter in the trainer window.
IsTradeskillTrainer() - Returns 1 if trainer is for a tradeskill.
OpenTrainer() - ?.
SelectTrainerService - ?.
SetTrainerServiceTypeFilter("filter",state) - Sets the status of a skill filter in the trainer window.

Transmogrification Functions

Transmogrification was added in Patch 4.3.0

ApplyTransmogrifications() - Applies all pending transmogrifications, and pays for the cost
ClearTransmogrifySlot([slotId]) - Clears the specified transmogrify slot
ClickTransmogrifySlot(slotId) - Facilitates clicking transmogrify slots depending on transmogrify state
CloseTransmogrifyFrame()
GetTransmogrifyCost() - Returns cost, numChanges
GetTransmogrifySlotInfo(slotId) - Returns isTransmogrified, canTransmogrify, cannotTransmogrifyReason, hasPending, hasUndo, visibleItemID, textureName
UseItemForTransmogrify(bag, slot, id)
ValidateTransmogrifications()

Unit Functions

These are functions which act on one or more units. Units are identified by UnitIds.

PROTECTED AssistUnit("unit") - Instructs your character to assist the specified unit.
CheckInteractDistance("unit",distIndex)
PROTECTED ClearFocus() - Removes any focus you may have set.
DropItemOnUnit("unit") - Drops an item from the cursor onto a unit.
FillLocalizedClassList(classTable[, isFemale]) - Fills table with localized class names.
PROTECTED FocusUnit("unit") - Sets your unit for focus. -- Protected with Patch 2.0!
FollowUnit("unit") - Follow an ally with the specified UnitID
GetPlayerInfoByGUID("guid") - Added in 3.2, returns race, class, sex about the guid (client must have seen the guid)
GetThreatStatusColor(status) - Returns RGB values for a given UnitThreatSituation return value.
UI GetUnitName("unit", showServerName) - Returns a string with the unit's name and realm name if applicable.
GetUnitPitch("unit") - Returns the moving pitch of the unit. (added in 3.0.2)
GetUnitSpeed("unit") - Returns the moving speed of the unit. (added in 3.0.2)
InviteUnit("name" or "unit") - Invites the specified player to the group you are currently in. (added in 2.0)
IsUnitOnQuest(questIndex, "unit") - Determine if the specified unit is on the given quest.
SetPortraitTexture(texture,"unit") - Paint a Texture object with the specified unit's portrait.
SetPortraitToTexture(texture or "texture", "texturePath") - Sets the texture to be displayed from a file applying a circular opacity mask making it look round like portraits.
SpellCanTargetUnit("unit") - Returns true if the spell awaiting target selection can be cast on the specified unit.
PROTECTED SpellTargetUnit("unit") - Casts the spell awaiting target selection on the specified unit.
PROTECTED TargetUnit("unit") - Selects the specified unit as the current target. -- Protected with Patch 2.0!
UnitAffectingCombat("unit") - Determine if the unit is in combat or has aggro. (returns nil if "false" and 1 if "true")
UnitArmor("unit") - Returns the armor statistics relevant to the specified unit.
UnitAttackBothHands("unit") - Returns information about the unit's melee attacks.
UnitAttackPower("unit") - Returns the unit's melee attack power and modifiers.
UnitAttackSpeed("unit") - Returns the unit's melee attack speed for each hand.
UnitAura("unit", index [, filter]) - Returns info about buffs and debuffs of a unit.
UnitBuff("unit", index [,raidFilter]) - Retrieves info about a buff of a certain unit. (Updated in 2.0)
UnitCanAssist("unit", "otherUnit") - Indicates whether the first unit can assist the second unit.
UnitCanAttack("unit", "otherUnit") - Returns true if the first unit can attack the second, false otherwise.
UnitCanCooperate("unit", "otherUnit") - Returns true if the first unit can cooperate with the second, false otherwise.
UnitClass("unit") - Returns the class name of the specified unit (e.g., "Warrior" or "Shaman").
UnitClassification("unit") - Returns the classification of the specified unit (e.g., "elite" or "worldboss").
UnitCreatureFamily("unit") - Returns the type of creature of the specified unit (e.g., "Crab").
UnitCreatureType("unit") - Returns the classification type of creature of the specified unit (e.g., "Beast").
UnitDamage("unit") - Returns the damage statistics relevant to the specified unit.
UnitDebuff("unit", index [,raidFilter]) - Retrieves info about a debuff of a certain unit. (Updated in 2.0)
UnitDefense("unit") - Returns the base defense skill of the specified unit.
UnitDetailedThreatSituation("unit", "unitMob") - Returns detailed information about the specified unit's threat on a mob. (added in Patch 3.0)
UnitExists("unit") - Returns 1 if the specified unit exists, nil otherwise.
UnitFactionGroup("unit") - Returns the faction group id and name of the specified unit. (eg. "Alliance") - string returned is localization-independent (used in filepath)
UnitGetGuildXP("unit") - Returns the Guild XP information for a unit. (added in Patch 4.0.1)
UnitGroupRolesAssigned("unit") - Returns the assigned role in a group formed via the Dungeon Finder Tool. (added in Patch 3.3)
UnitGUID("unit") - Returns the GUID as a string for the specified unit matching the GUIDs used by the new combat logs. (added in Patch 2.4)
UnitHasIncomingResurrection("unit") - Returns whether the unit is currently being resurrected. (Patch 4.2.0)
UnitHasLFGDeserter("unit") - Returns whether the unit is currently unable to use the dungeon finder due to leaving a group prematurely. (3.3.3)
UnitHasLFGRandomCooldown("unit") - Returns whether the unit is currently under the effects of the random dungeon cooldown. (3.3.3)
UnitHasRelicSlot("unit")
UnitHealth("unit") - Returns the current health, in points, of the specified unit.
UnitHealthMax("unit") - Returns the maximum health, in points, of the specified unit.
UnitInParty("unit") - Returns true if the unit is a member of your party.
UnitInRaid("unit") - Returns the unit index if the unit is in your raid/battlegroud, nil otherwise.
UnitInBattleground("unit") - Returns the unit index if the unit is in your battleground, nil otherwise.
UnitIsInMyGuild("unit") - Returns whether the specified unit is in the same guild as the player's character.
UnitInRange("unit") - Returns true if the unit (party or raid only) is in range of a typical spell such as flash heal. (added in Patch 2.4))
UnitIsAFK("unit") - Only works for friendly units.
UnitIsCharmed("unit") - Returns true if the specified unit is charmed, false otherwise.
UnitIsConnected("unit") - Returns 1 if the specified unit is connected or npc, nil if offline or not a valid unit.
UnitIsCorpse("unit") - Returns true if the specified unit is a corpse, false otherwise.
UnitIsDead("unit") - Returns true if the specified unit is dead, nil otherwise.
UnitIsDeadOrGhost("unit") - Returns true if the specified unit is dead or a ghost, nil otherwise.
UnitIsDND("unit") - Only works for friendly units.
UnitIsEnemy("unit", "otherUnit") - Returns true if the specified units are enemies, false otherwise.
UnitIsFeignDeath("unit") - Returns true if the specified unit (must be a member of your group) is feigning death.-- Added in 2.1
UnitIsFriend("unit", "otherUnit") - Returns true if the specified units are friends (PC of same faction or friendly NPC), false otherwise.
UnitIsGhost("unit") - Returns true if the specified unit is a ghost, false otherwise.
UnitIsPVP("unit") - Returns true if the specified unit is flagged for PVP, false otherwise.
UnitIsPVPFreeForAll("unit") - Returns true if the specified unit is flagged for free-for-all PVP, false otherwise.
UnitIsPVPSanctuary("unit") - Returns whether the unit is in a PvP sanctuary, and therefore cannot be attacked by other players.
UnitIsPlayer("unit") - Returns true if the specified unit is a player character, false otherwise.
UnitIsPossessed("unit") - Returns whether the specified unit is currently under control of another (i.e. "pet" when casting Mind Control).
UnitIsQuestBoss("unit") - Returns true if the specified unit is the "boss" (objective) of a kill quest. If true, then the default UI displays a shield with a yellow "!" on it on the unit's unitframe.
UnitIsRaidOfficer("unit") - Returns whether the specified unit is an officer in your raid.
UnitIsSameServer("unit") - Returns whether the specified unit is from the same server as the player's character.
UnitIsTapped("unit") - Returns true if the specified unit is tapped, false otherwise.
UnitIsTappedByPlayer("unit") - Returns true if the specified unit is tapped by the player himself, otherwise false.
UnitIsTappedByAllThreatList("unit") - Returns whether the specified unit is a community monster, i.e. whether all players engaged in combat with it will receive kill (quest) credit.
UnitIsTrivial("unit") - Returns true if the specified unit is trivial (Trivial means the unit is "grey" to the player. false otherwise.
UnitIsUnit("unit", "otherUnit") - Determine if two units are the same unit.
UnitIsVisible("unit") - 1 if visible, nil if not
UnitLevel("unit") - Returns the level of a unit.
UnitName("unit") - Returns the name (and realm name) of a unit.
UnitOnTaxi("unit") - Returns 1 if unit is on a taxi.
UnitPlayerControlled("unit") - Returns true if the specified unit is controlled by a player, false otherwise.
UnitPlayerOrPetInParty("unit") - Returns 1 if the specified unit/pet is a member of the player's party, nil otherwise (returns nil for "player" and "pet") - Added in 1.12
UnitPlayerOrPetInRaid("unit") - Returns 1 if the specified unit/pet is a member of the player's raid, nil otherwise (returns nil for "player" and "pet") - Added in 1.12
UnitPVPName("unit") - Returns unit's name with PvP rank prefix (e.g., "Corporal Allianceguy").
UnitPower("unit"[,type]) - Returns current power of the specified unit (Replaces UnitMana() as of WoW 3.0.2)
UnitPowerMax("unit"[,type]) - Returns max power of the specified unit (Replaces UnitManaMax() as of WoW 3.0.2)
UnitPowerType("unit") - Returns a number corresponding to the power type (e.g., mana, rage or energy) of the specified unit.
UnitRace("unit") - Returns the race name of the specified unit (e.g., "Human" or "Troll").
UnitRangedAttack("unit") - Returns the ranged attack number of the unit.
UnitRangedAttackPower("unit") - Returns the ranged attack power of the unit.
UnitRangedDamage("unit") - Returns the ranged attack speed and damage of the unit.
UnitReaction("unit", "otherUnit") - Returns a number corresponding to the reaction (aggressive, neutral or friendly) of the first unit towards the second unit.
UnitResistance("unit", "resistanceIndex") - Returns the resistance statistics relevant to the specified unit and resistance type.
UnitSelectionColor("unit") - Returns RGBA values for the color of a unit's name.
UnitSex("unit") - Returns a code indicating the gender of the specified unit, if known. (1=unknown, 2=male, 3=female) ← changed in 1.11!
UnitSpellHaste("unit" or "name") - Returns the current spell haste percentage for a unit.
UnitStat("unit", statIndex) - Returns the statistics relevant to the specified unit and basic attribute (e.g., strength or intellect).
UnitThreatSituation("unit", "mobUnit") - Returns the specified unit's threat status on a mob. (added in Patch 3.0)
UnitUsingVehicle("unit") - Returns whether the specified unit is currently using a vehicle (including transitioning between seats).
UnitXP("unit") - Returns the number of experience points the specified unit has in their current level. (only works on your player)
UnitXPMax("unit") - Returns the number of experience points the specified unit needs to reach their next level. (only works on your player)

Vehicle Functions

These functions were introduced in Patch 3.0.2.

CanExitVehicle() - Returns 1 if the player can be exit the Vehicle.
CanSwitchVehicleSeats() - Returns 1 if the player can Switch Seats in the Vehicle
CanEjectPassengerFromSeat(seat) - Returns 1 if the player can eject a passenger from a seat.
GetBattlefieldVehicleInfo(index)
GetNumBattlefieldVehicles(index)
EjectPassengerFromSeat(seat) - Ejects a passenger from a seat.
IsUsingVehicleControls()
IsUsingVehicleControls()
IsVehicleAimAngleAdjustable() - Returns 1 if the player can adjust the Aim Angle of the Vehicle.
IsVehicleAimPowerAdjustable() - Returns 1 if the player can adjust the Aim Power of the Vehicle.
UnitControllingVehicle(unit)
UnitHasVehicleUI(unit)
UnitInVehicle(unit)
UnitInVehicleControlSeat(unit)
UnitSwitchToVehicleSeat(unit, seatId)
UnitTargetsVehicleInRaidUI(unit)
UnitVehicleSeatCount(unit)
UnitVehicleSeatInfo(unit, seatId)
UnitVehicleSkin(unit)
VehicleAimDecrement()
VehicleAimDownStart()
VehicleAimDownStop()
VehicleAimGetAngle()
VehicleAimGetNormAngle()
VehicleAimGetNormPower()
VehicleAimIncrement()
VehicleAimRequestAngle()
VehicleAimRequestNormAngle()
VehicleAimSetNormPower()
VehicleAimUpStart()
VehicleAimUpStop()
VehicleCameraZoomIn(amount)
VehicleCameraZoomOut(amount)
VehicleExit() - Exit the current Vehicle
VehicleNextSeat()
VehiclePrevSeat()

Voice Chat Functions

These functions were introduced in Patch 2.2.

AddMute("name")
AddOrDelMute("unit")
ChannelSilenceAll()
ChannelSilenceVoice()
ChannelUnSilenceAll()
ChannelUnSilenceVoice()
ChannelVoiceOff()
ChannelVoiceOn()
DelMute("name")
DisplayChannelVoiceOff()
DisplayChannelVoiceOn()
GetActiveVoiceChannel()
GetChannelDisplayInfo(id) - Returns the name of the channel according to the given id.
GetNumVoiceSessions() - Returns the number of voice sessions the client is currently in. Ignores those under the 'World' category.
GetSelectedDisplayChannel()
GetSelectedMute()
GetMuteName(id) - Returns the name of a muted player.
GetMuteStatus("unit", "channel") - Returns whether a particular unit is currently muted in a particular channel.
GetNumMutes() - Returns the number of people you currently have muted.
GetVoiceCurrentSessionID()
GetVoiceSessionInfo(id) - Returns the name of the voice session according to the given id. Does not apply for channels under the 'World' category.
GetVoiceStatus("unit")
IsMuted("name")
IsSilenced()
IsVoiceChatAllowed() - Returns 1 if Voice Chat is enabled on the server, nil otherwise
IsVoiceChatEnabled() - Returns 1 if Voice Chat is enabled for your client, nil otherwise
SetActiveVoiceChannelBySessionID(id) - Set the active voice session to the session of the given id.
SetActiveVoiceChannel()
SetSelectedDisplayChannel()
SetSelectedMute()
UnitIsSilenced()
UnitIsTalking() -
VoiceChat_ActivatePrimaryCaptureCallback()
VoiceChat_GetCurrentMicrophoneSignalLevel()
VoiceChat_IsPlayingLoopbackSound()
VoiceChat_IsRecordingLoopbackSound()
VoiceChat_PlayLoopbackSound()
VoiceChat_RecordLoopbackSound()
VoiceChat_StartCapture()
VoiceChat_StopCapture()
VoiceChat_StopPlayingLoopbackSound()
VoiceChat_StopRecordingLoopbackSound()
VoiceEnumerateCaptureDevices()
VoiceEnumerateOutputDevices()
VoiceGetCurrentCaptureDevice()
VoiceGetCurrentOutputDevice()
VoiceIsDisabledByClient()
VoicePushToTalkStart()
VoicePushToTalkStop()
VoiceSelectCaptureDevice()
VoiceSelectOutputDevice()

Void Storage Functions

Void Storage was added in Patch 4.3.0

CanUseVoidStorage() - Returns if the player has access to the Void Storage
ClearVoidTransferDepositSlot(slotIndex) - Clears the specified Void Transfer deposit slot
ClickVoidStorageSlot(slotIndex[, isRightClick]) - Clicks the specified Void Storage slot
ClickVoidTransferDepositSlot(slotIndex[, isRightClick]) - Clicks the specified Void Transfer deposit slot
ClickVoidTransferWithdrawalSlot(slotIndex[, isRightClick]) - Clicks the specified Void Transfer withdrawal slot
CloseVoidStorageFrame()
ExecuteVoidTransfer() - Applies all pending void transfers (and pays for the cost of any deposited items)
GetNumVoidTransferDeposit() - Returns the number of items being deposited into the Void Storage
GetNumVoidTransferWithdrawal() - Returns the number of items being withdrawed from the Void Storage
GetVoidItemHyperlinkString(slotIndex) - Returns the item link of an item in void storage.
GetVoidItemInfo(slotIndex) - Returns itemID, textureName, locked, recentDeposit, isFiltered
GetVoidTransferCost() - Returns the total Void Transfer cost
GetVoidTransferDepositInfo(slotIndex) - Returns itemID, textureName
GetVoidTransferWithdrawalInfo(slotIndex) - Returns itemID, textureName
IsVoidStorageReady()
UnlockVoidStorage() - Pays for and activates the Void Storage

World Battlefield Functions

The following functions are used for population-limited world PvP zones, like Lake Wintergrasp or Tol Barad.

BattlefieldMgrEntryInviteResponse(queueId, accept)
BattlefieldMgrExitRequest(queueId)
BattlefieldMgrQueueInviteResponse(queueId, accept)
BattlefieldMgrQueueRequest - ?
CanHearthAndResurrectFromArea() - Returns whether you can currently be resurrected and teleported out of the world PvP zone.
HearthAndResurrectFromArea() - Resurrects the player, and ports them out of the world PvP zone.
CanQueueForWintergrasp() - Returns whether you can queue for Lake Wintergrasp at the moment.
GetNumWorldPVPAreas() - Returns the number of world PvP zones available.
GetWorldPVPAreaInfo(index) - Returns information about a world PvP zone.
GetOutdoorPVPWaitTime(index) - Returns the number of seconds until the next battle in a given world PvP zone.
GetWorldPVPQueueStatus(queueId)

Who Functions

GetNumWhoResults() - Return the number of entries resulting from your most recent /who query.
GetWhoInfo(index)
SendWho("filter") - Send a who request to the server.
SetWhoToUI(toUIFlag) - Indicate that who request results should be delivered as WHO_LIST_UPDATE instead of to chat.
SortWho(sortType) - Sorts an existing /who list; displays the Who List frame if not visible.

See also

External links