Skip to main content
Steam endpoints accept a vanity name, SteamID2, Steam AccountID/SteamID32, SteamID64, Steam Community profile URL, or a supported player URL containing a numeric AccountID. POST /search is validation-only: it normalizes the identifier and does not call Steam or consume credits.

Search types

Canonical types:
  • vanity
  • steam_id
Aliases:
  • steam, username, and profile -> vanity
  • id, steamid, and steamid64 -> steam_id
Steam Community URLs are normalized automatically:
  • https://steamcommunity.com/id/gaben -> vanity
  • https://steamcommunity.com/profiles/76561197960287930 -> steam_id
Numeric identifiers are converted to a canonical SteamID64 before provider calls:
  • STEAM_0:1:55975235
  • 111950471 (AccountID/SteamID32)
  • https://dotabuff.com/players/111950471
  • https://dotamax.com/player/detail/111950471/
  • any path ending in a valid numeric AccountID, such as anything/111950471

Endpoint groups


Fast path

Validate an identifier before launching enrichment.
Use /all for a complete synchronous Steam result.
Save the result for later retrieval:

Detail routes

Load the details for a game returned by /games or /all:
The response combines Steam Store metadata, screenshots and movies, the player’s public playtime, achievements, global completion percentages, and per-game statistics when the game exposes them. Private player data is listed in partialErrors while public game metadata remains available. Load one page of members for a group returned by /groups or /all:
The response includes group identity, avatar, description, online/in-game/chat counts, enriched Steam member profiles, and pagination with previous and next page numbers. Paginate a public inventory:
Use the returned item’s assetId and pass its pageCursor value as the request’s cursor field for the free detail route:
Inventory items include class/instance IDs, quantities, descriptions, tags, actions, market names, colors, warnings, and images. Marketable item details also expose the cached lowest price, median price, and market volume.

Response data

The /all response contains:
  • resolve: SteamID64, persona name, avatar, profile URL, vanity, and source type.
  • profile: aliases, all Steam ID formats, profile metadata, level, visibility, location, status, and current game.
  • bans: VAC, community, game, and economy ban signals.
  • games: complete public owned-game list, recent games, and total playtime.
  • friends: complete public friend list with profile summaries.
  • badges: badges, XP, level, and XP required for the next level.
  • groups: group names, avatars, member counts, descriptions, and URLs.
  • content: public profile counts, badge showcase images, background, social links, and wishlist.
  • stats: normalized public statistics for CS2, TF2, Dota 2, and Rust.
  • inventory: public item metadata, capped to 100 displayed items while preserving the provider total.
  • partialErrors: secondary collectors that could not return data.
If the account resolver fails, /all returns a non-2xx error. Private profile sections do not fail the complete request: the affected field is null and its collector is listed in partialErrors.

Availability

Provider-backed routes require a Steam Web API key configured server-side. Missing credentials return 503 PROVIDER_UNAVAILABLE without consuming usage. Public-profile visibility controls whether games, friends, badges, wishlist, statistics, and inventory are exposed.

Caching

Provider responses are cached by collector and SteamID64:
  • resolve, profile, bans, and friends: 30 minutes
  • games, badges, and public content: 1 hour
  • groups: 6 hours
  • game statistics and inventory: 30 minutes
  • inventory market prices: 15 minutes
  • game Store/schema metadata: 12 hours
  • player game achievements and statistics: 30 minutes
  • global achievement percentages: 6 hours
  • group detail pages: 30 minutes
Cache hits reduce repeated Steam provider calls and do not change route pricing.