When using GroupService:GetRolesInGroupAsync on the client to retrieve a player’s role information, the method does not accept a player’s .User property. Instead, it only accepts the player’s UserId, despite Roblox encouraging developers to transition to using the .User property.
Expected behavior
This is despite the documentation stating that the method accepts the User property as a parameter. The function behaves correctly on the server, where the .User property can be passed as expected, but does not behave consistently on the client.
We are forced to use this method as opposed to the Player:GetRankInGroupAsync/GetRoleInGroupAsync methods because those are now marked as deprecated and are returning inconsistent results when a player holds multiple roles.