-
What do you want to achieve?
Get a list of badges from a specific experience. I am making a sort of turn-based fan game of another currently existing ROBLOX game that keeps track of which badges you have from the original game and the percentage of badges you have. Owned badges can be used as characters in the fan game. The main issue here is that the original game is still being updated and it would be tedious to add a new badge to the character list every time. -
What is the issue?
There doesn’t seem to be a studio-allowed method I could find. -
What solutions have you tried so far?
I looked through the API reference trying to find a function that does what I need. I got no results. The only already existing topic doesn’t answer anything.
There is a badges api that we can use which is
"https://badges.roblox.com/v1/universes/"..universeid.."/badges?limit=10&sortOrder=Asc"
But as you can see to use it we’ll first need to get the universe id which is another API. And returns the universeid as shown below.
"https://api.roblox.com/universes/get-universe-containing-place?placeid="..placeid
After getting the universe id from the api below it’ll return all the badges that are available in the universe. I tested this on Flood Escape 2
You can use JSONEncode to get the data from here. And you’d need to use a proxy to connect to these APIs as Roblox doesn’t allow sending requests to these.
Doing this in-studio returns the error [link] Trust check failed
As I stated at the bottom you need to use a proxy to send requests.
Yo, is it possible to either increase the limit over 100 or go to next page of that search? If so, how would I do that. I can get the NextPageCursor, but idk how to use it.
Probably you can’t increase the limit so it’s probably more worth to wait.
Actually I figured it out, I just need to add “cursor=[nextPageCursor]” as parameter to the request of getting badges.
Looking like this:
"https://badges.roblox.com/v1/universes/"..universeid.."/badges?cursor="..NextCursor.."&limit=10&sortOrder=Asc"
To get the next cursor I just did this:
NextCursor = string.sub(BadgesList,string.find(BadgesList, "nextPageCursor")+17, string.find(BadgesList, "data")-4)