/ByteDev.Steam

SDK for communicating with Steam Web APIs.

Primary LanguageC#MIT LicenseMIT

Build status NuGet Package License: MIT

ByteDev.Steam

SDK for communicating with the Steam APIs.

Installation

ByteDev.Steam is hosted as a package on nuget.org. To install from the Package Manager Console in Visual Studio run:

Install-Package ByteDev.Steam

Further details can be found on the nuget page.

Release Notes

Releases follow semantic versioning.

Full details of the release notes can be viewed on GitHub.

Usage

API Key

A number of the API endpoints require that you have an API key.

To get a key goto: https://steamcommunity.com/dev/apikey.

You will require an existing account with Steam first to be able to then get a API key.

SteamApiClient

SteamApiClient provides client functionality to communicate with the Steam APIs.

Create a SteamApiClient and call the required method:

// Create an instance of HttpClient however you see fit
private static readonly HttpClient _httpClient = new ();

// ...

var config = new SteamApiClientConfig
{
	ApiKey = "YourApiKey",
	CacheAllAppsResponse = true
};

ISteamApiClient client = new SteamApiClient(_httpClient, config);

var response = await client.GetAllAppsAsync();

SteamApiClient - Methods

Steam Web API (api.steampowered.com):

  • GetUserAsync - Get user details for a specific user by their Steam ID.
  • GetUsersAsync - Get user details for a number of users.
  • GetUserFriendsAsync - Get friend details for a particular user.
  • GetPlayerBansAsync - Get ban info for a particular user.
  • GetAllAppsAsync - Get details (AppId and Name) of all apps (games) in the Steam library.
  • GetAppNewsAsync - Get news for a particular app.
  • GetRecentlyPlayedGamesAsync - Get recently played games for a particular user.
  • GetOwnedGamesAsync - Get games owned by a particular user.

Steam Store API (store.steampowered.com):

  • GetAppDetailsAsync - Get details for a particular app (game), including price overview.
  • GetAppReviewsAsync - Get reviews for a particular app (game).
  • GetFeaturedAppsAsync - Get featured apps (games) on the Steam Store.
  • SearchStoreAsync - Search the Steam Store for items (apps etc.) matching a search term.
  • GetPackageDetailsAsync - Get details for a particular package (collection of apps, DLC, etc.).

Terms

  • Steam ID (string) = unique ID to a Steam account or user.
  • App ID (int) = unique ID for an application/game on Steam. For example 10 for Counter Strike.
  • Package ID = collection of one or more games, DLC, or other content that can be purchased together as a single unit

Further Info

ISteamStoreService is now depreciated by Steam.