I do remember that functions like getgroupsasync and getrankingroup etc would have that behaviour and the only workaround I know of is using the client but I don’t want to, any ideas?
What exactly are you wanting to do…?
Get an accurate rank from all groups of a player using getgroupsasync every minute which I’m unable to do as the system makes the first result permanent (wont update) so it seems
Alright, but I don’t get why you aren’t willing to use the client like so:
player:GetRankInGroup(GroupId)
Because you can’t trust the client, well in my case you can’t so I need an alternative
You don’t need to use the client, you can use this function on the server.
Problem is, it doesn’t update correctly…
Calling those functions on a server will cache the results, and it’ll only refresh when you leave, so you could prompt the player to rejoin.
Alternatively, make a HTTP GET request to Roblox’s Groups API, using the /v2/users/{userId}/groups/roles
endpoint.
You’ll need a proxy for this though. There’s already a lot of resources to get you started, go look them up.
Fair warning for this though:
Public proxies comes with its dangers.
If reliability and security is a concern, or if this is a critical aspect of your work, you should host your own proxy.
There’s some proxies that are open-source, so you can host them yourselves.