Hello! I have made a game that gets a limited item's best price in the past, but that sent a request to a bot which then returns the best price. However the bot goes down here and there, and it is not the best. I have seen that it is possible using https service. I have made a total RAP count and even the player's limited list, but cannot figure out how to get the best price of an item. I have checked out this, but do not know how to request what I am looking for: https://developer.roblox.com/en-us/articles/Catalog-API
At the bottom it mentions "BestPrice" is for limited items and it returns the best price. I am unsure how to get this though, if it helps here are my other scripts. (Total RAP and limited list)
RAP
local httpService = game:GetService("HttpService") local function GetTotalRAP(userId) local success, msg = pcall(function() local total = 0 local function CollectRAP(cursor) local url = "https://inventory.rprxy.xyz/v1/users/" .. userId .. "/assets/collectibles?sortOrder=Asc&limit=100" if cursor then url = url .. "&cursor=" .. cursor end local data = httpService:GetAsync(url) data = httpService:JSONDecode(data) for i = 1, #data["data"] do pcall(function() total = total + data["data"][i]["recentAveragePrice"] end) end if data["nextPageCursor"] then CollectRAP(data["nextPageCursor"]) end end CollectRAP() return total end) if not success then warn(msg) else return msg end end
Limited list (Clones UI and puts in player)
local httpService = game:GetService("HttpService") function GetItems(plr) local success, msg = pcall(function() local userId = plr.UserId local has = false local function CollectRAP(cursor) local url = "https://inventory.rprxy.xyz/v1/users/" .. userId .. "/assets/collectibles?sortOrder=Asc&limit=100" if cursor then url = url .. "&cursor=" .. cursor end local data = httpService:GetAsync(url) data = httpService:JSONDecode(data) for i = 1, #data["data"] do pcall(function() --total = total + data["data"][i]["name"] local clone = plr.PlayerGui.List.ScrollingFrame.TextLabel:Clone() clone.Parent = plr.PlayerGui.List.ScrollingFrame clone.Text = data["data"][i]["name"].." | "..data["data"][i]["recentAveragePrice"] clone.Name = "Limited" has = true end) end plr.PlayerGui.List.ScrollingFrame.User.Text = plr.Name.."'s Limiteds" if has == true then plr.PlayerGui.List.ScrollingFrame.TextLabel:Destroy() end if data["nextPageCursor"] then CollectRAP(data["nextPageCursor"]) end end CollectRAP() end) if not success then warn(msg) else return msg end end
I am stumped with this issue, if anybody can help me get the "BestPrice" value that would be great! Thank you, feel free to ask any questions or suggest anything at all!
Related posts that didn't seem to help me understand: https://devforum.roblox.com/t/how-to-get-price-of-limited/408749
https://devforum.roblox.com/t/best-way-to-get-the-limiteds-price/318018
https://devforum.roblox.com/t/how-to-get-the-best-price-of-a-limited-item/933494
https://scriptinghelpers.org/questions/84226/is-there-an-api-endpoint-for-lowest-price-on-limiteds
https://scriptinghelpers.org/questions/59732/how-could-i-get-data-from-limiteds
Please note that the scripts above is just other catalog API, not anything that is erroring, I just need help getting the API.