WAX ExpressTrade API for Node.js
Powerful async/await based Node.js implementation of OPSkins WAX ExpressTrade.
Stop wasting time on coding endpoint communication, event polling and bothering with two factor authentication - just pass your api key with secret and use methods out-of-the-box.
INFO FOR v.1.1: API has changed a lot from now - please update your code before updating wax-expresstrade library to the newest version.
Installation
npm i wax-expresstrade --save
Powerful!
🔄 We base on official implementation - it means, that interfaces, methods and responses are identically named as in documentation. E.g. IUser/GetInventory refers to API.IUser.GetInventory()
method.
🚀 The entire module is async/await friendly - so you do not need to worry about promisifying or callback hell.
✨ All trade-offers updates are emitted as event, which makes catching changes unbelievably easy! E.g. API.on('OfferChanged', offer => console.log(offer))
🔥 Two-Factor authentication? Naah! wax-expresstrade handles all this stuff with no additional configuration, just pass twoFactorSecret and... that's all!
Usage
const ExpressTrade = // First, initialize our moduleconst API = apiKey: 'OPSkins API Key goes here' twoFactorSecret: 'Secret from opskins mobile auth goes here' pollInterval: 5000 // Optional, but just set this one value and module will handle all offers updates automatically! // It's ready to use, wasn't it simple?const appId = 1 // VGO const mySkins = await APIIUserconst anotherOneSkins = await APIITrade console
Methods
Basically, there is no need to re-define available methods. Take a look into documentation, look for module (e.g. IItem
) and method (e.g. GetItems
)
Execute node code with const items = await API.IItem.GetItems({ skuFilter: [10, 20, 25, 40] })
Events
IMPORTANT: You need to set pollInterval value in milliseconds (min. 1000) to make module emit events!
Intercepting events is really easy, take a look:
const API = ... // ExpressTrade initialization is described above in "Usage" section API
OfferChanged
offer
- Trade Offer Object
Emitted alongside with state-changed events of offers, which have been already created (e.g. OfferAccepted
, OfferDeclined
, but not OfferSent
/OfferReceived
).
OfferSent
offer
- Trade Offer Object
Emitted when we successfully send an offer.
OfferReceived
offer
- Trade Offer Object
Emitted when we receive new offer.
OfferAccepted
offer
- Trade Offer Object
Emitted when we successfully accept an offer.
OfferExpired
offer
- Trade Offer Object
Emitted when an offer expires.
OfferCancelled
offer
- Trade Offer Object
Emitted when an offer gets cancelled.
OfferDeclined
offer
- Trade Offer Object
Emitted when an offer gets declined.
OfferNoLongerValid
offer
- Trade Offer Object
Emitted when an offer expires.
OfferCasePending
offer
- Trade Offer Object
Emitted when the case offer gets pending state.
OfferCaseExpired
offer
- Trade Offer Object
Emitted when the case offer expires.
OfferCaseFailed
offer
- Trade Offer Object
Emitted when the case offer fails.