Publish a Workshop item for a Steam game using the ISteamUGC API

domain: partner.steamgames.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Ensure the app has Workshop enabled in the Steamworks dashboard under the Community > Workshop section, with file size limits and accepted content types configured.
  2. In game code, call ISteamUGC::CreateItem with the app ID and the EWorkshopFileType (typically k_EWorkshopFileTypeCommunity) to get an UGC update handle.
  3. Use the update handle to set item metadata: call SetItemTitle, SetItemDescription, SetItemContent (path to content folder), SetItemPreview (path to preview image), and SetItemVisibility.
  4. Submit the item by calling SubmitItemUpdate with the handle and an optional change note string; this initiates an async upload and returns a SteamAPICall_t handle.
  5. Register a call result for SubmitItemUpdate_t to receive completion status and the published file ID; handle the result to confirm success or surface errors.
  6. Direct the player to the item's Workshop page using the published file ID so they can manage visibility, add tags, or update the item in future sessions.

Known gotchas

Related routes

Publish a Steam Workshop item using ISteamUGC CreateItem and SubmitItemUpdate
steamworks · 5 steps · unrated
Query a user's Steam Workshop submissions with ISteamUGC
partner.steamgames.com · 5 steps · unrated
Upload and publish a Workshop UGC item for a Steam game using the Steamworks SDK
partner.steamgames.com · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans