API C AuctionHouse.ReplicateItems

Queries all auctions listed on the Auction House.
 C_AuctionHouse.ReplicateItems()
==Details==
* There's a 15 min account-wide throttle between each successful () call, which triggers .
* Afterwards item information can be queried with () which accepts an index from 0 up to ()-1
* REPLICATE_ITEM_LIST_UPDATE will also fire for each auction item that was cached from the server after calling C_AuctionHouse.GetReplicateItemInfo()
* This disconnected clients on busy servers with more than 80k auctions, even with throttling. But was hotfixed during patch 9.0.2 to not include player names anymore.
*As of 2022-12-10, there seems to be a limit on how many REPLICATE_ITEM_LIST_UPDATE fire per frame, about 2000. Hence, if more () calls are made recently, they'll be ignored or cause unnecessary slowdowns.
==Example==
Attempts to query the auction house when opened and loads any uncached items from the server.
local initialQuery
local auctions = {}
 
local function ScanAuctions()
	local beginTime = debugprofilestop()
	local continuables = {}
	wipe(auctions)
	for i = 0, C_AuctionHouse.GetNumReplicateItems()-1 do
		auctions[i] = {C_AuctionHouse.GetReplicateItemInfo(i)}
		if not auctions[i][18] then -- hasAllInfo
			local item = Item:CreateFromItemID(auctions[i][17]) -- itemID
			continuables[item] = true
			item:ContinueOnItemLoad(function()
				auctions[i] = {C_AuctionHouse.GetReplicateItemInfo(i)}
				continuables[item] = nil
				if not next(continuables) then
					print(format("Scanned %d auctions in %d milliseconds", #auctions+1, debugprofilestop()-beginTime))
					-- do something with `auctions` or fire some callback
				end
			end)
		end
	end
end
local function OnEvent(self, event)
	if event == "AUCTION_HOUSE_SHOW" then
		C_AuctionHouse.ReplicateItems()
		initialQuery = true
	elseif event == "REPLICATE_ITEM_LIST_UPDATE" then
		if initialQuery then
			ScanAuctions()
			initialQuery = false
		end
	end
end
local f = CreateFrame("Frame")
f:RegisterEvent("AUCTION_HOUSE_SHOW")
f:RegisterEvent("REPLICATE_ITEM_LIST_UPDATE")
f:SetScript("OnEvent", OnEvent)
 > Scanned 81338 auctions in 2644 milliseconds
==Patch changes==
==See also==
* ()
==References==