JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 21
  • Score
    100M100P100Q47260F
  • License MIT

Steam Web Api Integration

Package Exports

  • steam-api

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (steam-api) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

wercker status

About

Node Wrapper to communicate with Steam Web API

SteamID64 Finder

Please refer to http://steamid.co/ or http://steamidconverter.com/ to find the user steam id.

Install

npm install steam-api

Usage

Note that the 'steam-api-key' can be defined as an environment variable, with the name of STEAM_API_KEY

var SteamApi = require('steam-api');

var user = new SteamApi.User('steam-api-key', optionalSteamId);
var userStats = new SteamApi.UserStats('steam-api-key', optionalSteamId);
var news = new SteamApi.News('steam-api-key');
var app = new SteamApi.App('steam-api-key');
var player = new SteamApi.Player('steam-api-key', optionalSteamId);
var inventory = new SteamApi.Inventory('steam-api-key', optionalSteamId);
var items = new SteamApi.Items('steam-api-key', optionalSteamId);

// Steam API Backpack
items.GetPlayerItems(appId, optionalSteamId).done(function(result){
  console.log(result);
});

// Inventory
inventory.GetAppItems(appId, optionalSteamId).done(function(result){
  console.log(result);
});

// User methods
user.GetPlayerBans(optionalSteamId).done(function(result){
  console.log(result);
});

user.GetFriendList(optionalRelationship = 'all', optionalSteamId).done(function(result){
  console.log(result);
});

user.GetUserGroupList(optionalSteamId).done(function(result){
  console.log(result);
});

//// e.g. vanityUrl = "pr00fgames";
user.ResolveVanityUrl(vanityUrl).done(function(result){
  console.log(result);
});


// UserStats methods
//// e.g. appId = 17740;
//// e.g. statsName = ['global.map.emp_isle'];
userStats.GetGlobalStatsForGame(appId, statsName).done(function(result){
  console.log(result);
});

//// e.g. appId = 620;
userStats.GetNumberOfCurrentPlayers(appId).done(function(result){
  console.log(result);
});

userStats.GetSchemaForGame(appId).done(function(result){
  console.log(result);
});

userStats.GetPlayerAchievements(appId, optionalSteamId).done(function(result){
  console.log(result);
});

userStats.GetGlobalAchievementPercentagesForApp(appId).done(function(result){
  console.log(result);
});

userStats.GetUserStatsForGame(appId, optionalSteamId).done(function(result){
  console.log(result);
});


// News Methods
news.GetNewsForApp(
                    appId,
                    optionalCount = 5,
                    optionalMaxLength = null
                  )
    .done(function(result){
  console.log(result);
});


// App Methods
app.appDetails(appId).done(function(result){
  console.log(result);
});

app.GetAppList().done(function(result){
  console.log(result);
});

app.GetServersAtAddress(addressOrIp).done(function(result){
  console.log(result);
});

app.UpToDateCheck(appId, version).done(function(result){
  console.log(result);
});


// Player Methods
player.GetSteamLevel(optionalSteamId).done(function(result){
  console.log(result);
});

player.GetPlayerLevelDetails(optionalSteamId).done(function(result){
  console.log(result);
});

player.GetBadges(optionalSteamId).done(function(result){
  console.log(result);
});

player.GetCommunityBadgeProgress(optionalBadgeId, optionalSteamId).done(function(result){
  console.log(result);
});

player.GetOwnedGames(
                      optionalSteamId, 
                      optionalIncludeAppInfo = true, 
                      optionalIncludePlayedFreeGames = false, 
                      optionalAppIdsFilter = []
                    )
      .done(function(result){
  console.log(result);
});

Release Changes

1.1.2

  • Added Steam API IEconItems support (although the Community Inventory seems to be better for games like CS:GO)

1.1.1

  • Lint and BugFixes

1.1.0

  • Added Access to Community URL's
  • Introduced Inventory from community.

More Info

Please Refer to the tests folder to get more information on how to use the library

Objective

The objective of this library is to wrap the steam web API into a php object.

There are some missing methods that I plan to implement.

Feel free to add some missing methods and as for a pull request on this repo.

The missing methods can be found using the swissapiknife.

How can you help

If you have the capacity to fix it yourself by all means do and create a pull request.

If you didn't already please raise an issue on github and I or someone else will try to fix it.