Skip to content
API

Steam account profile data

Steam name history API: previous aliases and current profile

Fetch the public persona names Steam Community still shows, then read the current name, avatar, account creation time, Steam level and visible game hours from separate WOK endpoints.

Updated September 26, 2026

Read public previous namesWOK API
curl --fail-with-body --max-time 35 --get \
  -H "Authorization: Bearer $WOK_API_KEY" \
  --data-urlencode "steam_id=$STEAM_ID" \
  "https://woksteamapi.com/v1/aliases"

A first request that keeps credentials separate

Store WOK_API_KEY and a 17-digit STEAM_ID on your server. Send the WOK key as a Bearer header to woksteamapi.com. Your application does not need a Valve Steam Web API key for this route.

Illustrative aliases responseWOK API
{
  "steam_id": "76561198000000001",
  "aliases": [
    {
      "name": "Previous persona",
      "time_changed": "Steam Community date text"
    }
  ],
  "count": 1
}

aliases[] contains name and time_changed; count is the number of entries WOK returned. The date is the original Steam Community text, not a Unix timestamp or guaranteed timezone. The example name and date text above are placeholders, not a live player's data.

Steam Community can expose up to ten recent persona aliases and the account owner can clear that list. The current name may appear among the aliases. An empty array means no aliases were exposed at request time; it does not prove the account never used another name. Steam may change this public page because it is outside Valve's official Web API contract.

Current name, level and playtime use different endpoints

The official profile and player service methods answer different questions. Call only the fields your product needs.

What you needWOK requestKey response fields
Current persona, avatar and creation dateGET /v1/profile?steam_id=...personaname, avatarfull, profileurl, visibility, timecreated
Current profile and level in one responseGET /v1/profile?steam_id=...&include_level=1level, steam_level, level_status in addition to profile fields
Account level onlyGET /v1/steam-level?steam_id=...steam_level
Visible games and hoursGET /v1/games?steam_id=...games[].playtime_forever, games[].playtime_2weeks in minutes, plus decimal-hour fields
Public friend listGET /v1/friends?steam_id=...&limit=50friends[], has_more, next_cursor
Read current profile and levelWOK API
curl --fail-with-body --max-time 35 --get \
  -H "Authorization: Bearer $WOK_API_KEY" \
  --data-urlencode "steam_id=$STEAM_ID" \
  --data-urlencode "include_level=1" \
  "https://woksteamapi.com/v1/profile"

/v1/profile accepts a SteamID64, Steam profile URL or vanity name. Alias history, level, friends and game-library routes require a 17-digit SteamID64. For a vanity URL, resolve it with the profile endpoint first and pass its returned SteamID64 to the other routes.

Privacy and failure cases

Public Steam data is incomplete by design. Keep an unavailable value distinct from an empty value and from zero.

Steam's GetPlayerSummaries supplies the current persona name, not alias history. WOK reads aliases from Steam Community's publicly visible name history; it does not recover names the owner cleared.

timecreated is a Unix timestamp when Steam supplies it. level_status=unavailable means the level was not visible; upstream_error means the level lookup failed. The profile can still be returned.

A private friends list can return HTTP 403. An empty /v1/games result with visibility=unknown can mean private game details or an empty library. Alias lookup can return HTTP 502 when Steam Community fails; retry later with a bounded delay.

See Steam Support's profile names guidance for alias-list behavior and Valve's player service reference for game visibility, playtime and Steam level.

Profile fields and batch lookupProfile privacy and missing dataRust player statsAll developer guidesOpenAPI schema