Skip to content

Profile Privacy

TeemoCell edited this page Jul 20, 2026 · 2 revisions

Profile Privacy

Steam profile visibility controls whether user-related endpoints return data. A valid API key does not override a user's privacy settings.

Commonly affected data

  • owned games;
  • recently played games;
  • friend lists;
  • playtime;
  • achievements and game statistics;
  • Community XML data.

Empty does not always mean none

An empty game or friend list can mean:

  • the user has no matching data;
  • the profile or relevant section is private;
  • Steam omitted the field;
  • the key lacks app or publisher access;
  • a legacy Community endpoint is unavailable.

Avoid displaying definitive statements such as “This user owns no games” unless the response provides enough information to distinguish that state.

Application behavior

try {
    $games = $steam->player($steamId)->GetOwnedGames();

    if ($games->isEmpty()) {
        // Display an unavailable-or-private state rather than assuming none.
    }
} catch (\TeemoCell\SteamWebApi\Exceptions\ApiCallFailedException $exception) {
    // Handle the remote error separately from privacy-related empty data.
}

Recommended UI wording

Prefer:

Game information is unavailable or private.

Avoid:

This user owns zero games.

Cache privacy-sensitive results for a shorter period if users can change visibility and expect the application to update promptly.

Clone this wiki locally