Home

Awesome

steamstore

A module for interacting with the Steam store site from Node.js. Currently not a lot of functionality is supported.

Logging In

This module cannot facilitate logins to the store site directly. You'll need to use something like steam-user or steamcommunity to login, and then use setCookies to set your login cookies in this module.

The cookies are the same for the store site and for the community site.

Patterns

Please read this section in its entirety before starting work with SteamStore.

Callbacks and Promises

All methods listed in this document that accept a callback also return a Promise. You may use either callbacks or promises.

Legacy callbacks return their data spanning across multiple arguments. All promises (which return any data at all) return a single object containing one or more properties. The names of these properties for legacy callbacks are the names of the callback arguments listed in this readme. Newer callbacks return a single object response argument, which is identical to the promise output for that method.

Some methods indicate that their callback is required or optional. You are never required to use callbacks over promises, but if a callback is listed as optional then an unhandled promise rejection will not raise a warning/error. If a callback is listed as required and you neither supply a callback nor handle the promise rejection, then a promise rejection will raise a warning, and eventually a crash in a future Node.js release.

Properties

steamID

v1.1.0 or later is required to use this property

A SteamID object for the currently logged-in user.

Methods

Constructor([options])

Constructs a new instance of steamstore. Example:

const SteamStore = require('steamstore');
let store = new SteamStore();

or

const SteamStore = require('steamstore');
let store = new SteamStore({"timeout": 30000});

setCookie(cookie)

Sets a single cookie to steamstore's internal cookie jar.

setCookies(cookies)

Simply calls setCookie for each cookie in the array.

getSessionID()

Returns the value of the sessionid cookie, or creates a new random one and adds it to the cookie jar if not present.

addPhoneNumber(number[, bypassConfirmation], callback)

Adds a new phone number to your account. This triggers a verification Email to be sent. You can continue the process by calling sendPhoneNumberVerificationMessage

sendPhoneNumberVerificationMessage(callback)

v2.3.0 or later is required to use this method

Call this method after you've clicked on the link in the email you received after you called addPhoneNumber(). This triggers a verification SMS to be sent. You can provide the verification code to verifyPhoneNumber to finalize the process.

resendVerificationSMS(callback)

Asks the Steam servers to resend the verification SMS to your pending-confirmation phone number. This will fail if you request it too soon after the last SMS was sent.

verifyPhoneNumber(code, callback)

Verify your pending-verification phone number using the SMS code.

removePhoneNumber(callback)

Starts the process to remove your phone number from your account. This will send an SMS verification code to your phone. Call confirmRemovePhoneNumber with the code to finalize the process.

confirmRemovePhoneNumber(code, callback)

Finalizes the process of removing your phone number from your account.

hasPhone(callback)

v1.3.0 or later is required to use this method

Checks whether your account has a phone number linked or not.

getAccountData(callback)

v1.1.0 or later is required to use this method

Gets information about products that your account owns, ignores, wants, or is recommended.

sendGift(giftID, recipient, recipientName, message, closing, signature[, callback])

v1.4.0 or later is required to use this method

Sends a Steam gift in your inventory to another user. The gift will remain in your inventory until the recipient accepts it. You can re-send a gift which you've already sent. Gifts don't have to be tradable in order to be sent.

createWallet(walletCode, billingAddress, callback)

v1.7.0 or later is required to use this method

Before you can redeem a Steam Wallet code, your account needs to have a wallet. If you don't yet have a wallet you can use this method to create one. Creating a wallet requires you to provide a wallet code, but the code won't be redeemed until you actually call redeemWalletCode.

checkWalletCode()

THIS METHOD IS NO LONGER FUNCTIONAL. IT WILL BE REMOVED IN A FUTURE RELEASE.

redeemWalletCode(walletCode[, callback])

v1.5.0 or later is required to use this method

Attempts to redeem a Steam Wallet code on your account. This will call checkWalletCode first, and if the code is not redeemable, the callback will be invoked with an Error passed as the first parameter. That Error will have message Wallet code is not valid, with eresult and purchaseresultdetail properties defined on that Error object.

getWalletBalance([callback])

v2.1.0 or later is required to use this method

Gets your current Steam wallet balance.

setDisplayLanguages(primary[, secondary][, callback])

v1.5.0 or later is required to use this method

Updates your account's display languages for the Steam store.

addFreeLicense(subID[, callback])

v2.0.0 or later is required to use this method

Request to add an eligible free-on-demand package to your Steam account.

removeLicense(subID[, callback])

v2.2.0 or later is required to use this method

Removes an eligible complimentary license from your Steam account.