Sooo... exactly HOW are we supposed to be using the thumbnail API in our scripts? (2023 new image endpoints)

If you’re like me, you probably just discovered all your image endpoints are broken!
Yup, looks like today our beloved 2016 endpoints are now deprecated.
We’re being directed to use the thumbnail API instead, but do I look like I know how to use this?

@TheTrollock in this bug report put my question best:

Using any of the sections in the API returns a JSON output with the actual URL you need in it. We can’t simply use a place ID or user ID to get our icons anymore.

Anyone familiar with the API know how to get the image URL from one of these things in a script? It’s incredibly annoying for those of us who use the URL + ID method to bother with the API.

TL;DR
We can’t do this:

local avatar_url = "https://www.roblox.com/headshot-thumbnail/image?userId="..player.UserId.."&width=420&height=420&format=png"

anymore… so what are we supposed to do instead?

3 Likes

For a headshot, it would now look like

local avatar_url = "https://thumbnails.roblox.com/v1/users/avatar-headshot?userIds="..player.UserId.."&size=420x420&format=Png&isCircular=false"

Edit: actually, that wouldn’t work, I assume you need to use httpservice and get the data from that link to do it, but you could alternatively use this:

local avatar_url= game.Players:GetUserThumbnailAsync(player.UserId, Enum.ThumbnailType.HeadShot, Enum.ThumbnailSize.Size420x420)
1 Like

I don’t think that roblox had deprecated those 2016 endpoints, as they still work in my ui? I would have to play around to see this failing or something…

Ingame

image|400x0

Part of code

Considering they’re broken in ours out of nowhere and its among the list of endpoints that have been getting deprecated recently, I think they’ve gotten deprecated.

Pretty sure a few older images are still saved though. Probably a cache thing.

Should’ve mentioned that the script I’m using requires use of a link, as its for sending data via webhook to another server. I’ve tried something similar to this before, but it simply won’t accept the request.

So I need to fetch the link from the API. I don’t know how to do that though, I’m not well versed in the API let alone HttpsService.

Thats odd… It should be able to get the thumbnail using GetUserThumbnailAsync. If that method uses the deprecated link, then that would be really horrible for tons of games on roblox

It’s not explicitly a link that it returns, to my knowledge, not that it’s connected to the deprecated links. If it was connected to the deprecated endpoint, the request would send. However, it doesn’t.

Sucks for us webhook users. Then again, not many call for an image.

1 Like

true, but doesn’t the roblox leaderboard uses that?

Not a clue. I’m pretty sure it just sends something similar to a decal ID- shorthanded, for lack of a better term.
Could be wrong. Someone who knows more than me can correct me here.

roblox be doing some weird stuff, deprecating links and everything

3 Likes

Yup. Can confirm the simple old URL no longer works anymore.

Such a huge regression since it’s now required to use more complex ways such as proxies and headers just to get a working thumbnail URL.

iirc it may still work, it just no longer display any data on browsers as it only displays images from that urn in image labels/image buttons

EDIT: Apologies for the necrobump, I did not notice this was an old post.

For thumbnails INSIDE a Roblox engine it’s pretty straightforward way to use rbxthumb since there’s a thumbnail API that’s easy to work on. Getting thumbnails OUTSIDE of Roblox is a totally different story after the URL deprecation, since a direct call to thumbnails.roblox.com API is now required to get the actual image link, thus requiring a use of proxies since you can’t call roblox.com APIs from Roblox HttpService. It’s a huge regression since before the deprecation, proxies aren’t required at all, while nowadays it’s explicitly required for it to work.

A better way Roblox could solve this issue is when you can get the direct URL link of a thumbnail image through the mentioned thumbnail API from Roblox engine itself.

1 Like

I am just now running into this issue as well since I am wanting to post to a Discord webhook whenever someone leaves feedback on my friend’s game, and I want to include their user thumbnail on the author icon… If I am not able to find a URL for this, I guess I’ll just have to use a proxy :sick: