GithubHelp home page GithubHelp logo

lornzoe / node-steamapi Goto Github PK

View Code? Open in Web Editor NEW

This project forked from xdimgg/node-steamapi

0.0 0.0 0.0 96 KB

A nice Steam API wrapper for nodejs

Home Page: https://www.npmjs.com/package/steamapi

JavaScript 100.00%

node-steamapi's Introduction

SteamAPI

NPM Discord

Setup

Installation

npm i steamapi

Getting an API Key

Once signed into Steam, head over to http://steamcommunity.com/dev/apikey to generate an API key.

Usage

First, we start by making a SteamAPI "user".

const SteamAPI = require('steamapi');
const steam = new SteamAPI('steam token');

Now, we can call methods on the steam object.

For example, let's retrieve the SteamID64 of a user. SteamAPI provides a resolve method, which accepts URLs and IDs.

steam.resolve('https://steamcommunity.com/id/DimGG').then(id => {
	console.log(id); // 76561198146931523
});

Now let's take that ID, and fetch the user's profile.

steam.getUserSummary('76561198146931523').then(summary => {
	console.log(summary);
	/**
	PlayerSummary {
		avatar: {
			small: 'https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/7f/7fdf55394eb5765ef6f7be3b1d9f834fa9c824e8.jpg',
			medium: 'https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/7f/7fdf55394eb5765ef6f7be3b1d9f834fa9c824e8_medium.jpg',
			large: 'https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/7f/7fdf55394eb5765ef6f7be3b1d9f834fa9c824e8_full.jpg'
		},
		steamID: '76561198146931523',
		url: 'http://steamcommunity.com/id/DimGG/',
		created: 1406393110,
		lastLogOff: 1517725233,
		nickname: 'Dim',
		primaryGroupID: '103582791457347196',
		personaState: 1,
		personaStateFlags: 0,
		commentPermission: 1,
		visibilityState: 3
	}
	*/
});

Documentation

SteamAPI

Kind: global class

new SteamAPI(key, [options])

Sets Steam key for future use.

Param Type Default Description
key string Steam key
[options] Object {} Optional options for caching and warnings getGameDetails()
[options.enabled] boolean true Whether caching is enabled
[options.expires] number 86400000 How long cache should last for in ms (1 day by default)
[options.disableWarnings] boolean false Whether to suppress warnings

steamAPI.get(path, [base], [key]) ⇒ Promise.<Object>

Get custom path that isn't in SteamAPI.

Kind: instance method of SteamAPI
Returns: Promise.<Object> - JSON Response

Param Type Default Description
path string Path to request e.g '/IPlayerService/GetOwnedGames/v1?steamid=76561198378422474'
[base] string "this.baseAPI" Base URL
[key] string "this.key" The key to use

steamAPI.resolve(info) ⇒ Promise.<string>

Resolve info based on id, profile, or url. Rejects promise if a profile couldn't be resolved.

Kind: instance method of SteamAPI
Returns: Promise.<string> - Profile ID

Param Type Description
info string Something to resolve e.g 'https://steamcommunity.com/id/xDim'

steamAPI.getAppList() ⇒ Promise.<Array.<App>>

Get every single app on steam.

Kind: instance method of SteamAPI
Returns: Promise.<Array.<App>> - Array of apps

steamAPI.getFeaturedCategories() ⇒ Promise.<Array.<Object>>

Get featured categories on the steam store.

Kind: instance method of SteamAPI
Returns: Promise.<Array.<Object>> - Featured categories

steamAPI.getFeaturedGames() ⇒ Promise.<Object>

Get featured games on the steam store

Kind: instance method of SteamAPI
Returns: Promise.<Object> - Featured games

steamAPI.getGameAchievements(app) ⇒ Promise.<Object>

Get achievements for app id.

Kind: instance method of SteamAPI
Returns: Promise.<Object> - App achievements for ID

Param Type Description
app string App ID

steamAPI.getGameDetails(app, [force]) ⇒ Promise.<Object>

Get details for app id. Requests for this endpoint are limited to 200 every 5 minutes

Kind: instance method of SteamAPI
Returns: Promise.<Object> - App details for ID

Param Type Default Description
app string App ID
[force] boolean false Overwrite cache

steamAPI.getGameNews(app) ⇒ Promise.<Array.<Object>>

Get news for app id.

Kind: instance method of SteamAPI
Returns: Promise.<Array.<Object>> - App news for ID

Param Type Description
app string App ID

steamAPI.getGamePlayers(app) ⇒ Promise.<number>

Get number of current players for app id.

Kind: instance method of SteamAPI
Returns: Promise.<number> - Number of players

Param Type Description
app string App ID

steamAPI.getGameSchema(app) ⇒ Promise.<Object>

Get schema for app id.

Kind: instance method of SteamAPI
Returns: Promise.<Object> - Schema

Param Type Description
app string App ID

steamAPI.getServers(host) ⇒ Promise.<Array.<Server>>

Get every server associated with host.

Kind: instance method of SteamAPI
Returns: Promise.<Array.<Server>> - Server info

Param Type Description
host string Host to request

steamAPI.getUserAchievements(id, app) ⇒ Promise.<PlayerAchievements>

Get users achievements for app id.

Kind: instance method of SteamAPI
Returns: Promise.<PlayerAchievements> - Achievements

Param Type Description
id string User ID
app string App ID

steamAPI.getUserBadges(id) ⇒ Promise.<PlayerBadges>

Get users badges.

Kind: instance method of SteamAPI
Returns: Promise.<PlayerBadges> - Badges

Param Type Description
id string User ID

steamAPI.getUserBans(id) ⇒ Promise.<(PlayerBans|Array.<PlayerBans>)>

Get users bans.

Kind: instance method of SteamAPI
Returns: Promise.<(PlayerBans|Array.<PlayerBans>)> - Ban info

Param Type Description
id string | Array.<string> User ID(s)

steamAPI.getUserFriends(id) ⇒ Promise.<Array.<Friend>>

Get users friends.

Kind: instance method of SteamAPI
Returns: Promise.<Array.<Friend>> - Friends

Param Type Description
id string User ID

steamAPI.getUserGroups(id) ⇒ Promise.<Array.<string>>

Get users groups.

Kind: instance method of SteamAPI
Returns: Promise.<Array.<string>> - Groups

Param Type Description
id string User ID

steamAPI.getUserLevel(id) ⇒ Promise.<number>

Get users level.

Kind: instance method of SteamAPI
Returns: Promise.<number> - Level

Param Type Description
id string User ID

steamAPI.getUserOwnedGames(id, [includeAppInfo], [includePlayedFreeGames]) ⇒ Promise.<Array.<Game>>

Get users owned games.

Kind: instance method of SteamAPI
Returns: Promise.<Array.<Game>> - Owned games

Param Type Description
id string User ID
[includeAppInfo] boolean true
[includePlayedFreeGames] boolean true

steamAPI.getUserRecentGames(id) ⇒ Promise.<Array.<RecentGame>>

Get users recent games.

Kind: instance method of SteamAPI
Returns: Promise.<Array.<RecentGame>> - Recent games

Param Type Description
id string User ID

steamAPI.getUserServers([hide], [key]) ⇒ Promise.<PlayerServers>

Gets servers on steamcommunity.com/dev/managegameservers using your key or provided key.

Kind: instance method of SteamAPI
Returns: Promise.<PlayerServers> - Servers

Param Type Default Description
[hide] boolean false Hide deleted/expired servers
[key] string "this.key" Key

steamAPI.getUserStats(id, app) ⇒ Promise.<PlayerStats>

Get users stats for app id.

Kind: instance method of SteamAPI
Returns: Promise.<PlayerStats> - Stats for app id

Param Type Description
id string User ID
app string App ID

steamAPI.getUserSummary(id) ⇒ Promise.<PlayerSummary>

Get users summary.

Kind: instance method of SteamAPI
Returns: Promise.<PlayerSummary> - Summary

Param Type Description
id string User ID

node-steamapi's People

Contributors

xdimgg avatar lornzoe avatar falsejoey avatar lloti avatar jankcat avatar bwbellairs avatar aquilasagitta avatar hollarves avatar patkub avatar scui1 avatar chescos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.