Provide a stable Open Cloud API to get an image ID from a decal ID

As a Roblox developer, it is currently too hard to upload images using the Open Cloud Assets API and get any use out of them. It returns a Decal ID which is effectively useless.

The asset delivery API used to accomplish this goal, but this API is failing for a number of users and/or returning data we can’t use.

There are other legacy APIs that do exist, but they require cookies. Not fun!

Please provide an API that lets us accomplish this goal. Or, alternatively, modify the Open Cloud Create Asset API to include an image ID that we can actually use!

If Roblox is able to address this issue, it would improve mine and many others’ development experiences who use Asphalt, an assets-as-files tool for Roblox (a modern version of Tarmac). This tool has become broken due to Roblox’s recent changes, and is impacting our daily workflow.

12 Likes

Some time back InsertService was opened up for Decals. This allows to get the image id from the decal id. More Information: Non-sequential Asset ID Generation Coming Soon. Does this address your need ?

This does not. OP is referring to external tooling, separate from Roblox engine scripts.

Here’s the issue as it stands right now:

We need a way to simply request the image id without any workarounds.

1 Like

Nope! This is a CLI tool, similar to Tarmac.

Decals are an RBXM file pointing to the texture ID through a single Decal instance, is this approach feasible:

  • Download the asset id (which itself is USUALLY an XML RBXM (but might be binary))
  • Parse the XML stream
  • Fetch the created Decal’s texture ID

I get the point of this feature request is so you dont have to do that, and I definitely think this should be the case, but I’m just giving a workaround until then.

not possible with the new authenticated api, it just gives you a link to the actual image binary

It is, sort of, and it’s what we’ve done for a while. But Roblox has guarded that API (assetdelivery) behind either cookie authentication (which we don’t want) or the legacy-api:manage permission scope, which is unavailable to groups.

I do not see any privacy concerns with providing all Creators with the ability to get an image ID from a decal ID. We don’t need to download the image, we just want the ID. It’s up to the Creator to make sure they have the correct permissions. The decal ID does not serve us any purpose. The Asset Create API, in my opinion, should be extended or adjusted to reflect that goal.