Create an API key in the Roblox Creator Dashboard with the Assets resource and Create Asset operation scoped to your experience or user
Send a multipart/form-data POST request to https://apis.roblox.com/assets/v1/assets with the x-api-key header, a JSON request metadata part specifying the asset type and display name, and the binary content part
Capture the returned operation ID from the response; asset creation is asynchronous
Poll GET https://apis.roblox.com/assets/v1/operations/{operation-id} until the done field is true and inspect the response metadata for the created asset ID
Verify upload limits: ID-verified accounts may upload up to 100 assets per month; non-ID-verified accounts (13+) are limited to 20 per day
Known gotchas
Asset creation is asynchronous — the initial POST returns an operation resource, not the final asset; skipping the poll step means you will not know the asset ID
The file size limit per upload call is 20 MB; larger assets must be split or pre-processed before submission
API keys grant access at the account level by default; always scope keys to specific experiences and resources to limit blast radius if a key is compromised
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp