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?

2 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)

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.

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

2 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.