Steam inventory API fundamentals
SteamID64, AppID, context ID and market hash name
These identifiers answer different questions. SteamID64 selects a player, AppID selects a game, context ID selects that game's inventory namespace, and a market hash name identifies a tradable item type for price lookup.
Updated September 23, 2026
WOK APIcurl --fail-with-body -H "Authorization: Bearer $WOK_API_KEY" "https://woksteamapi.com/v1/inventory?steam_id=76561198090744629&game=cs2&top=0"Which value goes where?
Do not substitute one identifier for another in a request.
| Term | Example | Use |
|---|---|---|
| SteamID64 | 76561198090744629 | 17-digit player account ID. Pass it as steam_id to WOK inventory or profile reads. |
| Vanity URL | steamcommunity.com/id/example | A changeable profile name, not the numeric ID expected in a production inventory request. Resolve it first. |
| AppID | 730 for CS2 | Steam application ID. WOK accepts the named game key cs2 or numeric 730 as game. |
| Context ID | 2 for CS2; 6 for Steam Community | Inventory namespace within an AppID. WOK selects the context for supported keys; you do not send a separate context parameter. |
| Market hash name | Exact item name returned in an inventory | Join an item type to catalog or quote data. Use the exact name, not a display label or asset ID. |
| Asset ID | Inventory instance identifier | Distinguishes an owned instance; it is not a price lookup key. Grouped inventory rows can represent more than one asset. |
From Steam profile to priced inventory
A safe request flow keeps player identity, game selection and price coverage separate.
Copy the 17-digit ID from a /profiles/ URL. If you only have an /id/ vanity URL, resolve it to SteamID64 first. Valve documents ResolveVanityURL for this step.
Choose a WOK game key: cs2 (730), rust (252490), tf2 (440) or dota2 (570). Numeric AppIDs are accepted for generic public inventories, but an arbitrary game is not a promise of price coverage. AppID 753 uses Community context 6 for cards and other community items.
Read status before treating items or total as meaningful. A private or unavailable inventory is not an empty one. Keep unpriced visible; a missing quote is not a missing item.
For a price lookup, pass the exact market_hash_name to the price API. Market-name prices are estimates of a type, not a guarantee for a particular asset's float, pattern, sticker, fees or sale proceeds.
Valve's Steamworks Inventory Service is publisher-key access for a publisher's app; it is not the same thing as a public Community inventory lookup. Read the key comparison before mixing these APIs.
Continue with a working endpoint
Choose the guide that matches the next piece of your integration.