How to get MeshId from Model upload? (Cloud Assets API)

Hello!

I’m working with the Cloud API and have a question in regards to Model uploads (from fbx files).

When I upload the model with the Cloud API, it returns an ID. However, this ID is not a MeshId or a TextureId. It is a “Model”. It contains both the mesh and texture information.

How do I retrieve the MeshId from this Model upload (by its ID)?

For example, this model:

has this MeshId:

Is there an API to get this? I cannot find any.

Thanks!

1 Like

https://assetdelivery.roblox.com/v1/asset?id=ID

Downloads the underlying asset for the given ID, you’ll get a RBXMX document, which is just XML, or RBXM, which will require a library in your given language to parse. From there, you can derive the mesh ID and download that, which will give you the mesh in Roblox’s internal format. (its converted before it hits the content server, so you cant retrieve the FBX)

1 Like

Perfect, thank you. Hopefully they add a newer endpoint for this soon :’)

1 Like

Hey! I’m trying now. I get the binary file downloaded, but cannot seem to parse it as XML or RBXM.

The binary file doesn’t have the version information in the header. Instead, it begins with <roblox! as the header.

I read that it is supposed to contain version information:

I’m able to open the file on Roblox Studio as RBXMX and RBXM. It is a Model that contains a MeshPart inside it.

How do I parse this binary file? Thanks

1 Like

If it starts with <roblox! it most likely is XML for the texture, but I don’t understand what is required here. There is an easier way of importing a model into studio if you need this:

game:GetObjects("rbxassetid://MODELID")[1].Parent = workspace

Run this through the command bar and it puts a meshpart inside wherever you parented it to. Hope this helps…

Cheers,
Edit