Updating Friends API & Deprecating IsOnline property from GetFriendsAsync

Now that the hasVerifiedBadge property will be removed from the friend and following APIs responses, are there any plans or ways to massively check the verified status of many users? The closest I can think is using a users API that takes 200 user ids at once, but that has very strong rate limits.

It would be nice if a new web API is introduced specifically for things related to the verified/trusted user badge, or at least a new parameter for the already existing APIs that let us fetch more detailed data.

If a fix isn’t added this will cause issues and dramatically slow down one of my tools since it will have to make separate requests to check the verified statuses of friends and followings.

1 Like

Good update I guess, but who has more than 200 friends?

3 Likes

Unfortunately, this alternative only works if the player whose friends you are trying to check is currently connected to the server. GetFriendsAsync can be called on any valid Roblox user, while GetFriendsOnline can only be called on players connected to the current server. GetFriendsOnline also has a 30-second cache while GetFriendsAsync doesn’t document any cache.

While it does seem like a pretty niche case, sometimes rarely do I find myself implementing functionality for IsOnline for players not connected to the current server, particularly for suggesting friends-of-friends to add to a ‘squad’ or similar, as online players are more likely to be regularly active. Perhaps a new engine API could be added to check a user’s public presence status to cover this new gap in the API?

4 Likes

love these new updates keep it up!

2 Likes

Now remove blocked accounts limit and add a feature to block possible alt accounts

6 Likes

Will the default value of 200 for maxFriends for GetFriendsOnline stay the same?

Will we have to manually specify 1000 to get all online friends or will the default value change to 1000?

6 Likes

Interesting.
So we’re gonna be able to friend more people?
How many extra? 300? 400?

edit
Looks like i missed it, its 1000

3 Likes

That would be awesome … a VIP friends feature !!
200 “friends” was already daunting … now it’s going to a 1000… how ever will you see your favourite friends online ?

I think it’s great to up the scale… as my granddaughter continually struggles to add new “friends”… having to delete some to add new ones.
I myself barely add any friends (24 … maybe 8 are fellow Devs).
But once my main game is done… that list will easily fill up from members.

The VIP feature could be VERY handful tbh.
If they can allow us to group our “friends” … that would be even better.
This way we can create a VIP friends list, a fellow DEVs friends list, that would be hidden amongst a mass amount of friends… from who knows where… (like facebook addons… not real friends).

I sure hope @Roblox would give that some attention too.
Even if its just saveable into 3 categories (1, 2 or 3 for EG).

2 Likes

Would be nice if we could have a VIP & Dev friend list… and be able to toggle Online Visibility to any of them at any time… and not be bugged by (tho well intened) massive friends lists.
I could support that too.

1 Like

More privacy controls have been needed for a long time, and with the additional friends limit this is an even bigger nessecity. Hoping Roblox has some plans to deal with this!

2 Likes

Definitly a long awaited update that brings a lot of benefits, 1,000 is a limit that’s ideal for friends.

I would be curious how this would’ve conflicted with the privacy setting that was presented some times ago, but never actually published, where the idea of changing the permission of other people seeing your online status was presented. Altough that seemed useful, good that this wasn’t published so the isOnline property can still be valuable when using the API.

Also great that alternative API methods and preventions so games don’t break are being brought up.

5 Likes

does this mean we will also get a larger blocklist limit if we are getting a raised friend limit? I don’t think I will ever reach max friends but I have reached the limit of users I can block and I would personally find that to be more useful when using the platform.

2 Likes

If you commission people or get commissioned, or just otherwise work with a lot of people, this limit is reached very quickly.

3 Likes

Why is friending necessary for that?

1 Like

I think it’s more common for long-term work but if you need to demo something working in-game, if you need to test something with them, etc, this is easier when you have them as a friend. When you have to do this with several teams, the number of friends on your friends list goes up a lot. Also team create permissions for games under your profile require you to be friends.

Pair that with people you actively play with, it just goes up from there.

It’s also just nice to have them as a friend to say “I worked with this person” or something.

6 Likes

Why removing the name fields from the online friends request, now i have to make a call to retrive them from the userId, oh my god, hope this saves u millions

1 Like

why do we need more friends they hurt us they don’t care how we feel

1 Like

I never thought they would actually go through with this update lol.

2 Likes

We’re happy to share that the number of users you can block has been increased from 100 to 1000! There is no action required on your end to implement this.

30 Likes

A few days ago my game has started having problems identifying who’s your friend in-game. I’m suspecting the Player:IsFriendsWith() call (calling it client-side to avoid the cache) to be faulty on my live game, but the problem is that I’m running the same exact code on my “production” and “testing” experiences and the code works fine on “testing” but not “production”:

UPDATE: After restarting my live servers it seems like friend status checks started working again, but there were still weird problems - I periodically call Player:IsFriendsWith() on all players client-side to check the current friend status, and it seems like Player:IsFriendsWith() somehow returned false for a player who was my friend for the whole period:

This code snippet might roughly show what I’m doing:

local is_friends = nil
local success, result = pcall(function()
	is_friends = LocalPlayer:IsFriendsWith(tonumber(user_id_string))
end)
	
if success ~= true then
	warn("[FriendClient]: :IsFriendsWith() error:", result)
end
	
if success == true and type(is_friends) == "boolean" then
	if is_friends_server ~= is_friends then
		print(`[FriendClient]: Requesting server to switch friend state for {user_id_string} from "{is_friends_server}" to "{is_friends}"`)
		update_list[user_id_string] = is_friends
	end
end

Production:

Testing:

3 Likes