I have a plugin. To cut it short it has a feature that would allow users to set an image of an ImageLabel.
Roblox already provides a nice way of accessing your latest images uploaded; when you try to change the Image property of said label it’ll show a window with the ones you’ve uploaded through that same window or Asset Manager.
This is not possible within a plugin currently. Plugins do have the PromptForExistingAssetId method which funnily only works with the Animation asset type. This method was added 6 YEARS ago and it still only supports Animations for whatever reason.
Manual ID Entry: Provide an input field in the plugin where users can paste image IDs they get from Asset Manager.
Image Library: Create a library of pre-uploaded images that users can pick from.
Wait on Roblox: Unfortunately, without an update from Roblox, PromptForExistingAssetId is limited to animations, so using it for images isn’t possible at the moment.
Fetching Recent Images via an External Web API (Manual Integration):
If the user has uploaded images to the Roblox website, you can manually scrape or use a web API (such as Roblox’s endpoints) to get a user’s recent assets. This would require interacting with the Roblox website externally, not directly through Studio.
You could theoretically create a web-based tool that fetches the user’s images using Roblox APIs and then generates asset IDs, which the user could paste back into the plugin. However, this cannot be done natively in the plugin itself, and you’d need to handle the Roblox login/authentication separately.
GET https://inventory.roblox.com/v1/users/{userId}/assets?assetTypeId=1&limit=10
This would require interacting with the Roblox website externally
I gave you every option I can think of to handle your problem. If you want an argument take that up with Roblox because they don’t have a solution to your problem.
I honestly don’t have a direct answer to your question. I’m pretty sure there is a workaround to this. You could try making something externally that fetches the uploads of a user and then communicate this via HTTP requests, but:
you would need to power this external tool, could get pricey
this might be inconvenient, because it might take time to process those requests, and you could also just look it up yourself if you need to wait a minute to get results
it might be unreliable overall, chance of it breaking or sending back faulty information not following the patter your program expects
Roblox ToS? I got no clue in that direction…
Roblox Rate limiting requests might cause problems too…
I don’t know if there is, but I would be surprised if there would be a perfect workaround that has no flaws and as Roblox has no official implementation I wouldn’t expect there to be one. Hope this helped maybe a little.