OpenCloud Asset API doesn't retrieve the asset content

Hello I’m trying to use the https://apis.roblox.com/assets/v1/{assetId} endpoint to fetch content of public assets to analyze them for backdoors, currently OpenCloud doesn’t seem to have any option to fetch raw content for analysis and using cookie-based APIs suck because cookies expire needing to be replaced frequently.

Specifically this endpoint Assets | Documentation - Roblox Creator Hub, has description “Retrieve specific asset content and metadata.” however the asset content is not sent and the header arguments also aren’t explained making it harder to use than the legacy cookie based API.

And yes I have checked https://apis.roblox.com/asset-delivery-api but that has again unexplained arguments and when I tried requesting anything with just AssetId I have received 404 status code, plus there is no batch API as for the legacy cookie-based API.

Expected behavior

The API endpoint to allow us to get the raw content with the specified format (like RBXM)

2 Likes

If you’re looking for raw file content of assets, you’d wanna use the Asset Delivery API. I can confirm that API is functional. You don’t need to worry about all the headers that seem to be required - the only required data is the assetId as part of the url path.

Keep in mind that this requires the legacy-asset:manage scope to be permitted on the API key, which is part of the legacy assets system when managing access permissions for your API key. This is currently unavailable for groups and only works for API keys created for individual accounts as explained here

If you’re getting a 404 error (Not Found), it most likely means you are providing an invalid asset id; but if not, confirm you have the correct scope

Unfortunately there is no batch API to the open cloud version, meaning rate limits would become a problem really soon

Hi @TheRealPixeluted, Assets API does not support retrieving content, so you’ll have to use Asset Delivery API. Can you provide an example request where you are receiving unexpected 404s?

We have rate limits to protect our backend and to prevent scrapping. We don’t have plans to add a batch endpoint to get around this.